BeOS API - Википедия - BeOS API
В BeOS API, часто называемый Be API после Be Inc., это интерфейс прикладного программирования требуется для написания графических нативных приложений на BeOS, и, следовательно, его производные, такие как Хайку и ZETA.
API разделен на несколько «наборов», которые собирают вместе связанные классы и имеют некоторое отношение к библиотека который содержит вспомогательный код.
Это почти полностью C ++, со сторонними привязками для большинства классов в Python и небольшое подмножество классов, в основном связанных с Storage Kit, в Perl.
Наборы
- Комплект приложений
Комплект приложения содержит базовые классы, необходимые для запуска приложения BeOS, а также поддержку глобального буфер обмена, обмен сообщениями между приложениями и внутренними сообщениями, таймеры, списки и другие функции, необходимые для поддержки любого графического приложения. Классы комплектов приложений поддерживаются libbe.so
- Комплект для хранения
Комплект для хранения предоставляет методы для управления файлами от создания и управления символические ссылки вплоть до панелей открытия / сохранения файлов для графических приложений, а также работы с Быть файловой системой атрибуты. Классы комплектов хранения в основном находятся в libtracker.so, Трекер являясь собственным файловым менеджером в ОС.
- Комплект интерфейса
В комплект интерфейса входит большая коллекция виджеты для создания графических приложений от класса главного окна до диалоговых окон, включая обработку шрифтов и рендеринг контроль. Большая часть libbe.so входит в этот комплект.
- Комплект ядра
Комплект ядра предоставляет заправка, семафоры и возможность доступа к системной информации, а также находится в libbe.so
- Комплект поддержки
Комплект поддержки предоставляет более продвинутые функции, которые не сразу попадают в другой комплект, такие как вспомогательное выделение памяти и поддержка списков.
- Сетевой комплект
Сетевой комплект предоставляет либо элементарную (BeOS R5 и ниже) или почти полный (BeOS Dano и выше) реализация Розетки Berkeley и СВЯЗЫВАТЬ а также «родные» функции на основе сетевой библиотеки Nettle C ++. libnet.so предоставляет сокеты Беркли на R5, позже замененные более распространенной номенклатурой libsocket / libbind.so; и libnetapi в R5, позже замененный libbnetapi, предоставляет модифицированную версию Nettle.
- Почтовый комплект
Пакет Mail предоставляет собственный формат электронной почты, а также способ использовать систему для получения и получения электронной почты с использованием стандартных протоколов (POP3 и SMTP ). Почтовый комплект поддерживается в libmail.so
- Комплект для перевода
Комплект для перевода предоставляет метод, с помощью которого как изображения, так и форматы обычного текста обрабатываются надстройками, позволяя приложениям поддерживать только один формат, собственный промежуточный, и сохранять / загружать в любой поддерживаемый надстройкой формат. API также позволяет переводить видео и аудио через библиотеку, хотя это было заменено BeOS R4 и немедленно отключено. Набор переводов поддерживается в libtranslation.so
- Медиа-кит
Медиа-кит обеспечивает уровень абстракции аудио и видео ввода / вывода на основе подключаемых надстроек, а также обработку микширования звука, трансляцию аудио и видео форматов и другие функции, связанные с мультимедиа. Функции медиа-кита поддерживаются libmedia.so
- MIDI комплект
В MIDI kit обеспечивает абстракцию MIDI-ввода и вывода, а также программный синтезатор (предоставляется Headspace в BeOS R5). libmidi.so предоставляет старый MIDI API эпохи BeOS R3, libmidi2.so предоставляет API R4 +.
- Игровой комплект
Набор Game предоставляет несколько звуковых форматов, подходящих для вывода звука компьютерных игр, а также возможность запускать полноэкранные приложения и использовать наложения видео.
- Комплект OpenGL
Комплект OpenGL обеспечивает реализацию OpenGL а также вспомогательные классы, позволяющие использовать его в собственных приложениях. В BeOS R5 поддерживаемая версия OpenGL была 1.1 и имела программное ускорение, хотя комплект не зависел от оборудования и фактически превосходил многие аппаратные реализации, которые работали на конкурирующих платформах, которые не могли обеспечить аналогичную производительность задержки / пропускной способности из-за неэффективности. в их дизайне или реализации.[1]
- Комплект устройства
Комплект устройства обеспечивает абстрагированный от платформы прямой аппаратный доступ к последовательным и параллельным портам, а также к BeBoxs печально известный GeekPort.
- Локальный комплект
Locale Kit предоставляет классы для локализации приложений на разные языки, часовые пояса, соглашения о форматировании чисел и т. Д. Этот набор можно найти только в Haiku реализации BeOS API.
- Комплект услуг
Набор служб обеспечивает легкое прямое подключение к веб-службам. Этот комплект можно найти только в Haiku реализации BeOS API.
- Веб-комплект
Web Kit предоставляет средства для рендеринга веб-страниц и является ответвлением Apple Webkit. Этот комплект можно найти только в реализации Haiku API BeOS.
- Комплект поставки
Пакет Package Kit предоставляет средства управления пакетами. Этот комплект можно найти только в реализации Haiku API BeOS.
Реализации, отличные от BeOS
Большая часть Be API была переработана Хайку для замены BeOS с открытым исходным кодом, хотя и в попытке наверстать упущенное с тех пор, как BeOS R5 была добавлена некоторая дополнительная функциональность, начиная от крупных изменений в комплекте почты до поддержки IMAP, зашифрованные соединения и несколько учетных записей, а также переход на поддержку OpenGL 1.5 через Меса 3D.
Альтернативные системы пытались вдохновить (Слог ) из BeOS API, но не предпринимает попыток предоставить базу для переноса приложений.
Частный порт большей части API для Microsoft Windows и более поздних версий. Linux (с помощью GTK + ) было сделано Gobe Software, чтобы позволить им портировать свои Gobe Productive офисный пакет для этих платформ от BeOS, где он был первоначально разработан.
Документация
Весь API, каким он был на стадии BeOS Revision 3, был задокументирован в двух бумажных книгах - Be Developer Guide и Be Advanced Topics, выпущенных O'Reilly Media под отпечатком Be, Inc в 1997/8. Кроме того, это цифровое представление было предоставлено и обновлено самой BeOS. В 2007 году компания ACCESS Co Ltd, владельцы интеллектуальной собственности Be, Inc., опубликовала текст этого документа под Creative Commons лицензия.[2]
Рекомендации
- ^ Тесты ATI Radeon / Voodoo2 OpenGL, BeOS против Windows98 снова! Кто быстрее?, Евгения Лоли, 2001 16 октября, BeNews
- ^ ACCESS Co. выпускает информационные бюллетени BeBook и Be, автор: Коки, 2007-04-03, Haiku Project