PIP 5.6.1
Platform-Independent Primitives
Макросы
Файл pibase_macros.h

Базовые макросы Подробнее...

#include "pip_defs.h"
#include "pip_version.h"
#include "piplatform.h"

Макросы

#define PIMETA(...)
 
#define PIP_VERSION_MAJOR
 Мажорная версия PIP.
 
#define PIP_VERSION_MINOR
 Минорная версия PIP.
 
#define PIP_VERSION_REVISION
 Ревизия версии PIP.
 
#define PIP_VERSION_SUFFIX
 Суффикс версии PIP.
 
#define PIP_VERSION
 Версия PIP в hex - 0x##(Major)##(Minor)##(Revision)
 
#define PIP_DEBUG
 Макрос объявлен когда включена compile-time отладка
 
#define WINDOWS
 Макрос объявлен когда операционная система Windows.
 
#define QNX
 Макрос объявлен когда операционная система QNX или Blackberry.
 
#define BLACKBERRY
 Макрос объявлен когда операционная система Blackberry.
 
#define FREE_BSD
 Макрос объявлен когда операционная система FreeBSD.
 
#define MAC_OS
 Макрос объявлен когда операционная система Mac OS.
 
#define ANDROID
 Макрос объявлен когда операционная система Android.
 
#define LINUX
 Макрос объявлен когда операционная система Linux.
 
#define FREERTOS
 Макрос объявлен когда операционная система FreeRTOS.
 
#define CC_GCC
 Макрос объявлен когда компилятор GCC или MinGW.
 
#define HAS_LOCALE
 Макрос объявлен когда PIP решил что система поддерживает локализацию
 
#define MICRO_PIP
 Макрос объявлен когда PIP собирается для встраиваемых систем
 
#define CC_VC
 Макрос объявлен когда компилятор Visual Studio.
 
#define CC_AVR_GCC
 Макрос объявлен когда компилятор AVR GCC.
 
#define CC_OTHER
 Макрос объявлен когда компилятор неизвестен
 
#define PRIVATE_DECLARATION(export)
 Макрос для объявления частной секции, "export" необязателен
 
#define PRIVATE_DEFINITION_START(Class)
 Макрос для начала реализации частной секции
 
#define PRIVATE_DEFINITION_END(Class)
 Макрос для окончания реализации частной секции
 
#define PRIVATE
 Макрос для доступа к частной секции
 
#define PRIVATEWB
 Макрос для доступа к частной секции без обрамляющих скобок ()
 
#define STATIC_INITIALIZER_BEGIN
 Макрос для начала статической инициализации
 
#define STATIC_INITIALIZER_END
 Макрос для окончания статической инициализации
 
#define NO_COPY_CLASS(Class)
 Макрос для запрета копирования класса
 
#define NO_UNUSED(x)
 Макрос для подавления предупреждения компилятора о неиспользуемой переменной
 
#define NO_COPY_CLASS(name)
 Макрос для запрета копирования класса
 
#define _PIP_ADD_COUNTER_WS(a, cnt, line)   a##cnt##_##line
 Макрос счетчика для генерации уникальных идентификаторов
 
#define STATIC_INITIALIZER_BEGIN
 Макрос для начала статической инициализации
 
#define STATIC_INITIALIZER_END
 Макрос для окончания статической инициализации
 
#define PIP_MIN_MSLEEP   1.
 Минимальное значание задержки в милисекундах для внутреннего использования в библиотеке PIP. Подробнее...
 
#define FOREVER   for (;;)
 Макрос для бесконечного цикла Подробнее...
 
#define FOREVER_WAIT   FOREVER piMinSleep();
 Макрос для бесконечного ожидания Подробнее...
 
#define WAIT_FOREVER   FOREVER piMinSleep();
 Макрос для бесконечного ожидания Подробнее...
 

Подробное описание

Базовые макросы

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

Макросы

◆ PIMETA

#define PIMETA (   ...)

Секция метаинформации для любой сущности. Парсится pip_cmg и доступна с помощью PICodeInfo. Содержит набор пар ключ=значение, например

PIMETA(id=12345,tag="my string")

◆ PIP_MIN_MSLEEP

#define PIP_MIN_MSLEEP   1.

Минимальное значание задержки в милисекундах для внутреннего использования в библиотеке PIP.

Используется в piMinSleep(), PIThread, PITimer::Pool. По умолчанию равна 1мс.

См. также
PIP_MIN_MSLEEP

◆ FOREVER

#define FOREVER   for (;;)

Макрос для бесконечного цикла

Раскрывается в конструкцию бесконечного цикла for(;;)

◆ FOREVER_WAIT

#define FOREVER_WAIT   FOREVER piMinSleep();

Макрос для бесконечного ожидания

Раскрывается в бесконечный цикл с периодическими вызовами sleep для экономии ресурсов CPU

◆ WAIT_FOREVER

#define WAIT_FOREVER   FOREVER piMinSleep();

Макрос для бесконечного ожидания

Раскрывается в бесконечный цикл с периодическими вызовами sleep для экономии ресурсов CPU

См. также
FOREVER_WAIT