BeOS API
请对照以下删除理由判断本页是否具备执行快速删除的理据:
本页可能符合快速删除的標準而需删除,理由: 請勿移除本模板。如有異議,請在本模板下方加入 其他編者若認為本頁明顯不符合快速删除的标准,或者您已修正存在的問題,可去除此模板。 |
BeOS API亦被Be公司称作Be API after Be Inc.,是在BeOS上编写图形应用程序所需要的应用程序接口,并由此延伸出了Magnussoft ZETA。
该API被分为数个“包”,“包”中包含类似的类,并容忍一些与包含支持代码的库的联系。
该API与C++基本相同,但包含一些第三方绑定的包含大部分Python的类,以及主要在存储包中使用到的一个小的Perl库的子集。
包
程序包
程序包包含用于运行BeOS程序的基本类,以及对全局剪切板的支持,程序内部及系统内部通信和,计时器,名册和其他支持图形应用程序的功能。程序包所包含的类亦被libbe.so支持。
存储包
存储包提供各种操控文件的方法,从创建、管理可以打开或保存应用程序面板的符号链接到修改Be文件系统的属性。存储包的类基本上包含在libtracker.so中,所以Tracker即为BeOS原生的文件管理器。
界面包
界面包提供数量可观的控件可供用于构建应用程序,从主窗口类到对话框,以及控制字体的处理和渲染。libbe.so包括了界面包的大部分内容。
内核包
内核包提供线程,信号标以及访问系统信息的通力,亦包含于libbe.so中。
支持包
支持包提供不易被分配在其他包中的先进功能,例如辅助内存分配以及对列表的支持。
网络包
网络包提供基本的(在BeOS R5及更低版本中)或基本完整的(在BeOS Dano及更高版本中)对伯克利套接字及BIND的支持,基于Nettle C++网络库的“原生”功能。libnet.so为R5提供伯克利套接字的支持,后来基于系统命名法被更换为更为普遍的libsocket.so及libbind.so;R5上的libnetapi.so在后来被libbnetapi替换以提供修改版的Nettle C++网络库。
邮件包
邮件包提供原生的电子邮件格式和用来收取、发送邮件的标准协议(POP3和SMTP)。邮件包包含在libmail.so中。
翻译包
翻译包提供一种将图片和纯文本通过以插件来处理,因而使应用程序支持一种即时的原生方式来保存、读取插件所支持的格式。该API同样支持通过库进行的视频、音频翻译,尽管这种方式在BeOS R4中被废弃并随后被停用。翻译包通过libtranslation.so提供支持。
媒体库
媒体库基于可选的插件来提供音频及视频输入输出的抽象层,以及处理混音,食品和音频的格式转换和其他相关功能。媒体包通过libmedia.so提供支持。
MIDI包
MIDI包提供MIDI硬件的输入输出的抽取。在BeOS R5中包含一个由Headspace提供的软件合成器。libmidi.so提供了BeOS R3时代的旧的MIDI API,libmidi2.so为BeOS R4及更高版本提供API。
游戏包
游戏包提供适合计算机游戏输出的音频格式,以及通过视频叠加来运行全屏应用程序。
OpenGL包提供完整的OpenGL执行能力,以及使其在原生程序中生效的支持类。在BeOS R5中支持OpenGL 1.1,尽管该包是硬件中立的,该版本可以使用软件加速。事实上,这个方式甚至胜过在竞争平台上使用硬件加速方式的效果。基于效率底下的设计,那些竞争平台无法传递类似的潜在的、抑或是带宽上的表现。[1].
设备包
设备包提供从平台分离的通过直接访问串口、并口,以及BeBox中并不知名的GeekPort。
Non-BeOS implementations
The majority of the Be API has been reimplemented by Haiku for their opensource BeOS replacement, although in an effort to catch up with the intervening years since BeOS R5 some additional functionality has been added, ranging from large changes to the Mail kit to support IMAP, encrypted connections and multiple accounts, and a move to OpenGL 1.5 support via Mesa 3D.
Alternative systems have attempted to draw some inspiration (Syllable) from the BeOS API, but are not making attempts to provide a base to port applications.
A private port of much of the API to Microsoft Windows and later Linux (using GTK+) was done by Gobe Software to enable them to port their Gobe Productive office suite to these platforms from BeOS, where it had originally been developed.
Documentation
The entire API, as it was at the stage of BeOS Revision 3, was documented in two paper books - the Be Developer Guide and Be Advanced Topics, released by O'Reilly Media under a Be, Inc imprint in 1997/8. In addition, a digital representation of this was provided and updated, albeit slightly shoddily towards the end, with BeOS itself. In 2007, ACCESS Co Ltd, the owners of Be, Inc's intellectual property, released the text of this under a Creative Commons licence. [2].