LINUX.ORG.RU

Platform-Independent Primitives (PIP)

 , , , ,


3

6

PIP — кроссплатформенная легковесная библиотека под C++ (99), упрощающая написание консольных программ. Представляет собой связный набор классов, макросов и функций, которые значительно упрощают написание кода во многих прикладных областях. Основной упор в библиотеке сделан на функциональность, конфигурируемость и минимизацию конечного кода.

Основной класс PIObject предоставляет механизм «событие — обработчик», реализованный на макросах.

Предоставляет классы:

  • контейнеров;
  • строк;
  • потока;
  • таймера;
  • устройств ввода-вывода (файлы, UDP, TCP, COM-порт, разделяемая память, конфигурационные файлы и пр.);
  • консоли или терминала (отрисовка интерфейсов и обработка пользовательского ввода);
  • шифрования;
  • сжатия;
  • математики;
  • и другое.

Также даёт возможность сгенерировать файлы с метаинформацией С++ сущностей при помощи утилиты, входящей в состав библиотеки.

Интеграция с системой сборки CMake (поиск, инклюды, макрос для генерации метафайлов).

Опциональная зависимость от внешних библиотек:

  • libicu — поддержка кодировок (для Windows очень желательна);
  • libusb — поддержка работы с USB-устройствами;
  • libsodium — поддержка шифрования;
  • libfftw3 - поддержка БПФ;
  • libz — поддержка сжатия.

При сборке проверяется наличие сторонних зависимостей и выполняется сборка соответствующих модулей.

Документация находится в папке doc/html, на данный момент ещё в разработке.

Проверялась на ОС:

  • Windows XP, 7, 8, 10;
  • Linux (Ubuntu, Debian, Gentoo, Raspbian)l
  • Android;
  • Mac OS X;
  • проверялось давно:
    • FreeBSD;
    • Blackberry OS;
    • QNX.

>>> Скачать



Проверено: Shaman007 ()
Последнее исправление: cetjs2 (всего исправлений: 2)
Ответ на: комментарий от blizer

оно просто есть. и его вряд ли нужно улучшать. к тому же, у них там был проект (я не следила за ними в последние годы) вроде TAO или как-то так назывался. думаю, что они что-то там развивают. и если даже, например, форкнуть ACE, то это всё же не писание с нуля своей библиотеки с тем же функционалом. ACE как раз изначально был очень хорошо заточен под скорость.

Iron_Bug ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.