PIP 6.1.0
Platform-Independent Primitives
Загрузка...
Поиск...
Не найдено
Файл pibase_macros.h

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

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

Макросы

#define PIMETA(...)
 Секция метаинформации для любой сущности. Парсится pip_cmg и доступна с помощью PICodeInfo. Содержит набор пар ключ=значение, напримерPIMETA(id=12345,tag="my string").
#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 PIP_EMBEDDED
 Макрос объявлен когда 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 PIP_REGISTER_TYPENAME(T)
 Макрос для регистрации имени типа для использования с PIP_TYPENAME при отключённом RTTI. Используется на уровне пространства имён, вне определений классов.
#define PIP_DECLARE_TYPENAME(name)
 Макрос для объявления имени типа для использования с PIP_TYPENAME при отключённом RTTI. Используется внутри определения класса.
#define NO_COPY_CLASS(name)
 Макрос для запрета копирования класса
#define _PIP_ADD_COUNTER_WS(a, cnt, line)
 Макрос счетчика для генерации уникальных идентификаторов
#define STATIC_INITIALIZER_BEGIN
 Макрос для начала статической инициализации
#define STATIC_INITIALIZER_END
 Макрос для окончания статической инициализации
#define FOREVER   for (;;)
 Макрос для бесконечного цикла
#define FOREVER_WAIT   FOREVER piMinSleep();
 Макрос для бесконечного ожидания
#define WAIT_FOREVER   FOREVER piMinSleep();
 Макрос для бесконечного ожидания
#define PIP_MIN_MSLEEP   10.
 Минимальное значание задержки в милисекундах для внутреннего использования в библиотеке PIP.

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

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

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

Макросы

◆ 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

◆ PIP_MIN_MSLEEP

#define PIP_MIN_MSLEEP   10.

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

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

См. также
PIP_MIN_MSLEEP