BeOS API

редактировать
Архитектура BeOS

BeOS API, часто называемый Be API после Be Inc., - это интерфейс прикладного программирования, необходимый для написания собственных графических приложений на BeOS и, следовательно, его производных, таких как Haiku и ZETA.

. API разделен на ряд «комплекты», которые собирают связанные классы вместе и имеют некоторое отношение к библиотеке, которая содержит вспомогательный код.

Это почти полностью C ++ со сторонним привязки для большинства классов в Python и небольшого подмножества классов, в основном связанных с комплектом хранения, в Perl.

Содержание
  • 1 Комплекты
  • 2 Реализации не-BeOS
  • 3 Документация
  • 4 ссылки
Комплекты
Комплект приложений

Комплект приложений с Содержит базовые классы, необходимые для запуска приложения BeOS, а также поддержку глобального буфера обмена, обмена сообщениями между приложениями и внутреннего обмена сообщениями, таймеров, списков и других функций, необходимых для поддержки любого графического приложения. Классы комплекта приложений поддерживаются libbe.so

Storage Kit

Комплект Storage предоставляет методы для управления файлами, от создания символических ссылок и управления ими до панелей открытия / сохранения файлов для графических приложений, а также работу с атрибутами Be File System. Классы комплектов хранения в основном находятся в libtracker.so, Tracker - это собственный файловый менеджер в ОС.

Интерфейсный комплект

Интерфейсный комплект предоставляет большую коллекцию виджетов для создания графических приложений от класса главного окна до диалоговых окон, включая обработку шрифтов и управление рендерингом. Большая часть libbe.so входит в этот комплект.

Комплект ядра

Комплект ядра обеспечивает многопоточность, семафоры и возможность доступа к системной информации, а также находится в libbe.so

Support Kit

Комплект поддержки предоставляет более продвинутые функции, которые не сразу попадают в другой комплект, такие как вспомогательное выделение памяти и поддержка списков.

Сетевой комплект

Сетевой комплект обеспечивает либо элементарную (BeOS R5 и ниже), либо почти полную (BeOS Dano и выше) реализацию сокетов Беркли и BIND, а также «родные» функции на основе сетевой библиотеки Nettle C ++. libnet.so предоставляет сокеты Беркли на R5, позже замененные более распространенной номенклатурой libsocket / libbind.so; а libnetapi в R5, позже замененный libbnetapi, предоставляет модифицированную версию Nettle.

Почтовый комплект

Почтовый комплект предоставляет собственный формат электронной почты, а также способ использования системы для получения и получения электронной почты с использованием стандартных протоколов (POP3 и SMTP ). Пакет Mail поддерживается в libmail.so

Пакет перевода

Пакет перевода предоставляет метод, с помощью которого как изображения, так и форматы обычного текста обрабатываются надстройками, позволяющими приложениям поддерживать только один формат, собственный промежуточный, и сохранять / загрузить в любой формат, поддерживаемый аддоном. API также позволяет переводить видео и аудио через библиотеку, хотя это было заменено BeOS R4 и немедленно отключено. Набор для перевода поддерживается в libtranslation.so

Media Kit

Media kit предоставляет уровень абстракции ввода / вывода аудио и видео на основе подключаемых надстроек, а также обеспечивает микширование звука, перевод аудио и видео форматов и другие средства массовой информации. связанные функции. Функции медиа-набора поддерживаются libmedia.so

MIDI Kit

Комплект MIDI обеспечивает аппаратную абстракцию ввода и вывода MIDI, а также программный синтезатор (предоставляемый Headspace в BeOS R5). libmidi.so предоставляет старый MIDI API эпохи BeOS R3, libmidi2.so предоставляет API R4 +.

Игровой комплект

Игровой комплект предоставляет ряд звуковых форматов, подходящих для вывода звука компьютерных игр, а также возможность запускать полноэкранные приложения и использовать наложения видео.

Комплект OpenGL

Комплект OpenGL обеспечивает реализацию OpenGL, а также вспомогательные классы, позволяющие использовать его в собственных приложениях. В BeOS R5 поддерживаемая версия OpenGL была 1.1 и имела программное ускорение, хотя комплект был аппаратно-нейтральным и фактически превосходил многие аппаратные реализации, которые работали на конкурирующих платформах, которые не могли обеспечить аналогичную производительность задержки / пропускной способности из-за неэффективности. в их конструкции или реализации.

Device Kit

Комплект Device обеспечивает абстрагированный от платформы прямой аппаратный доступ к последовательным и параллельным портам, а также к BeBoxs печально известному GeekPort.

Locale Kit

Locale Kit предоставляет классы для локализации приложений на разные языки, часовые пояса, соглашения о форматировании чисел и т. Д. Набор присутствует только в Haiku реализации BeOS API.

Сервисный комплект

Сервисный комплект обеспечивает легкое прямое подключение к веб-сервисам. Этот комплект можно найти только в Haiku реализации BeOS API.

Web Kit

Web Kit обеспечивает средства визуализации веб-страниц и является ответвлением от Apple Webkit. Этот комплект можно найти только в Haiku реализации BeOS API.

Package Kit

Пакет Package Kit предоставляет средства управления пакетами. Этот комплект можно найти только в Haiku реализации BeOS API.

Реализации, отличные от BeOS

Большая часть Be API была переработана в Haiku для замены BeOS с открытым исходным кодом, хотя и в попытке догнать За прошедшие годы, прошедшие с момента появления BeOS R5, были добавлены некоторые дополнительные функции, начиная от значительных изменений в почтовом комплекте для поддержки IMAP, зашифрованных соединений и нескольких учетных записей, а также перехода на поддержку OpenGL 1.5 через Mesa 3D.

Альтернативные системы пытались черпать вдохновение (Syllable ) в API BeOS, но не предпринимают попыток предоставить основу для переноса приложений.

Частный порт большей части 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.

Ссылки
Последняя правка сделана 2021-05-12 08:16:27
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте