![]() |
PIP 5.5.3
Platform-Independent Primitives
|
Разделяемая память. Подробнее...
#include <pisharedmemory.h>
Открытые члены | |
| PISharedMemory () | |
| Создает пустой PISharedMemory. | |
| PISharedMemory (const PIString &shm_name, int size, DeviceMode mode=ReadWrite) | |
| Создает объект разделяемой памяти с именем "shm_name", размером "size" и режимом открытия "mode". | |
| PIByteArray | readAll () |
| Читает всю разделяемую память и возвращает её как байтовый массив | |
| llong | size () const |
| Возвращает размер разделяемой памяти | |
| void | setSize (llong s) |
| Устанавливает размер разделяемой памяти | |
| bool | isEmpty () const |
| Возвращает пустой ли объект разделяемой памяти (по размеру) | |
| int | read (void *read_to, int max_size) |
| Читает из разделяемой памяти в "read_to" не более "max_size" и возвращает количество прочитанных байт | |
| int | read (void *read_to, int max_size, int offset) |
| Читает из разделяемой памяти с начала "offset" в "read_to" не более "max_size" и возвращает количество прочитанных байт | |
| int | write (const void *data, int max_size) |
| Пишет в разделяемую память "data" размером "max_size" и возвращает количество записанных байт | |
| int | write (const void *data, int max_size, int offset) |
| Пишет в разделяемую память с начала "offset" "data" размером "max_size" и возвращает количество записанных | |
| int | write (const PIByteArray &data) |
| Пишет в разделяемую память "data". | |
| int | write (const PIByteArray &data, int offset) |
| Пишет в разделяемую память "data". | |
Открытые члены унаследованные от PIIODevice | |
| PIIODevice () | |
| Создает пустой PIIODevice. | |
| PIIODevice (const PIString &path, DeviceMode mode=ReadWrite) | |
| Создает PIIODevice с путём "path" и режимом открытия "mode". | |
| DeviceMode | mode () const |
| Возвращает текущий режим открытия устройства | |
| void | setMode (DeviceMode m) |
| Устанавливает режим открытия устройства. Не переоткрывает устройство | |
| DeviceOptions | options () const |
| Возвращает текущие опции устройства | |
| bool | isOptionSet (DeviceOption o) const |
| Возвращает текущее состояние опции "o". | |
| void | setOptions (DeviceOptions o) |
| Устанавливает опции устройства | |
| bool | setOption (DeviceOption o, bool yes=true) |
| Устанавливает опцию "o" устройства в "yes" и возвращает предыдущее состояние опции | |
| DeviceInfoFlags | infoFlags () const |
| Возвращает характеристики канала | |
| PIString | path () const |
| Возвращает текущий путь устройства | |
| void | setPath (const PIString &path) |
| Устанавливает путь устройства. Не переоткрывает устройство | |
| bool | isReadable () const |
| Возвращает равен ли режим открытия ReadOnly или ReadWrite. | |
| bool | isWriteable () const |
| Возвращает равен ли режим открытия WriteOnly или ReadWrite. | |
| bool | isOpened () const |
| Возвращает успешно ли открыто устройство | |
| bool | isClosed () const |
| Возвращает закрыто ли устройство | |
| virtual bool | canRead () const |
| Возвращает может ли устройство читать сейчас | |
| virtual bool | canWrite () const |
| Возвращает может ли устройство писать сейчас | |
| void | setReopenEnabled (bool yes=true) |
| Устанавливает возможность вызова open() при потоковом чтении на закрытом устройстве | |
| void | setReopenTimeout (PISystemTime timeout) |
| Устанавливает задержку между вызовами open() если переоткрытие активно | |
| bool | isReopenEnabled () const |
| Возвращает активно ли переоткрытие | |
| PISystemTime | reopenTimeout () |
| Возвращает задержку переоткрытия | |
| void | setThreadedReadSlot (ReadRetFunc func) |
| Устанавливает callback потокового чтения Подробнее... | |
| void | setThreadedReadData (void *d) |
| Устанавливает произвольный указатель, который будет передан в callback потокового чтения | |
| void | setThreadedReadBufferSize (int new_size) |
| Устанавливает размер буфера потокового чтения Подробнее... | |
| int | threadedReadBufferSize () const |
| Возвращает размер буфера потокового чтения | |
| const uchar * | threadedReadBuffer () const |
| Возвращает содержимое буфера потокового чтения | |
| void * | threadedReadData () const |
| Возвращает произвольный указатель, который будет передан в callback потокового чтения | |
| bool | isThreadedRead () const |
| Возвращает запущен ли поток чтения | |
| bool | isThreadedReadStopping () const |
| Возвращает останавливается ли поток чтения | |
| void | startThreadedRead () |
| Запускает потоковое чтение | |
| void | startThreadedRead (ReadRetFunc func) |
| Запускает потоковое чтение и устанавливает callback потокового чтения в "func". | |
| void | stopThreadedRead () |
| Останавливает потоковое чтение. | |
| void | terminateThreadedRead () |
| Прерывает потоковое чтение. Подробнее... | |
| bool | waitThreadedReadFinished (PISystemTime timeout={}) |
| Ожидает завершения потокового чтения в течении не более "timeout". | |
| bool | isThreadedWrite () const |
| Возвращает запущен ли поток записи | |
| void | startThreadedWrite () |
| Запускает потоковую запись | |
| void | stopThreadedWrite () |
| Останавливает потоковую запись. | |
| void | terminateThreadedWrite () |
| Прерывает потоковую запись. Подробнее... | |
| bool | waitThreadedWriteFinished (PISystemTime timeout={}) |
| Ожидает завершения потоковой записи в течении не более "timeout". | |
| void | clearThreadedWriteQueue () |
| Очищает очередь потоковой записи | |
| void | start () |
| Запускает потоковое чтение и запись | |
| void | stop () |
| Останавливает потоковое чтение и запись. | |
| void | stopAndWait (PISystemTime timeout={}) |
| Останавливает потоковое чтение и запись и ожидает завершения. | |
| virtual void | interrupt () |
| Прерывает блокирующую операцию. | |
| ssize_t | read (void *read_to, ssize_t max_size) |
| Читает из устройства не более "max_size" байт в "read_to". | |
| ssize_t | read (PIMemoryBlock mb) |
| Читает из устройства в блок памяти "mb". | |
| PIByteArray | read (ssize_t max_size) |
| Читает из устройства не более "max_size" байт и возвращает данные как PIByteArray. | |
| virtual ssize_t | bytesAvailable () const |
| Возвращает количество байт доступных для чтения Подробнее... | |
| ssize_t | write (const void *data, ssize_t max_size) |
| Пишет в устройство не более "max_size" байт из "data". | |
| PIByteArray | readForTime (PISystemTime timeout) |
| Читает из устройства в течении "timeout" и возвращает данные как PIByteArray. | |
| ullong | writeThreaded (const void *data, ssize_t max_size) |
| Добавляет данные в очередь на потоковую запись и возвращает ID задания | |
| ullong | writeThreaded (const PIByteArray &data) |
| Добавляет данные в очередь на потоковую запись и возвращает ID задания | |
| virtual PIConstChars | fullPathPrefix () const |
| Возвращает префикс устройства. Creating devices by unambiguous string. | |
| PIString | constructFullPath () const |
| Возвращает строку полного описания для этого устройства, fullPathPrefix() + "://" + ... | |
| void | configureFromFullPath (const PIString &full_path) |
| Настраивает устройство из параметров строки полного описания | |
| PIVariantTypes::IODevice | constructVariant () const |
| Возвращает PIVariantTypes::IODevice, описывающий это устройство | |
| void | configureFromVariant (const PIVariantTypes::IODevice &d) |
| Настраивает устройство из PIVariantTypes::IODevice. | |
| ssize_t | write (const PIMemoryBlock &mb) |
| Пишет в устройство блок памяти "mb". | |
| bool | open () |
| Открывает устройство | |
| bool | open (const PIString &_path) |
| Открывает устройство с путём "path". | |
| bool | close () |
| Закрывает устройство | |
| ssize_t | write (PIByteArray data) |
| Пишет "data" в устройство | |
| virtual void | flush () |
| Немедленно записать все буферизированные данные | |
| void | opened () |
| Вызывается при успешном открытии | |
| void | closed () |
| Вызывается при успешном закрытии | |
| void | threadedReadEvent (const uchar *readed, ssize_t size) |
| Вызывается при успешном потоковом чтении данных | |
| void | threadedWriteEvent (ullong id, ssize_t written_size) |
| Вызывается при успешной потоковой записи данных с ID задания "id". | |
Открытые члены унаследованные от PIObject | |
| PIObject (const PIString &name=PIString()) | |
| Создает PIObject с именем "name". | |
| PIString | name () const |
| Возвращает имя объекта | |
| virtual const char * | className () const |
| Возвращает имя класса объекта | |
| virtual const char * | parentClassName () const |
| Возвращает имя родительского класса | |
| bool | debug () const |
| Возвращает включен ли вывод piCoutObj для этого объекта | |
| void | setName (const PIString &name) |
| Устанавливает имя объекта | |
| void | setDebug (bool debug) |
| Включает или отключает вывод piCoutObj для этого объекта | |
| PIVariant | property (const char *name) const |
| Возвращает свойство объекта по имени "name". | |
| void | setProperty (const char *name, const PIVariant &value) |
| Устанавливает у объекта свойство по имени "name" в "value". Если такого свойства нет, оно добавляется | |
| bool | isPropertyExists (const char *name) const |
| Возвращает присутствует ли свойство по имени "name". | |
| PIStringList | scopeList () const |
| Возвращает цепочку наследования объекта (вместе с классом самого объекта) | |
| void | piDisconnect (const PIString &sig, PIObject *dest, void *ev_h) |
| Разрывает все соединения от события "sig" к объекту "dest" и обработчику "ev_h". | |
| void | piDisconnect (const PIString &sig, PIObject *dest) |
| Разрывает все соединения от события "sig" к объекту "dest". | |
| void | piDisconnect (const PIString &sig) |
| Разрывает все соединения от события "sig". | |
| bool | isPIObject () const |
| Возвращает действительный ли это PIObject (проверяет подпись) | |
| template<typename T > | |
| bool | isTypeOf () const |
| Возвращает действительный ли это наследник PIObject типа "T" (проверяет подпись и имя класса) | |
| template<typename T > | |
| T * | cast () const |
| Возвращает преобразование к типу T если это действительный наследник типа "T" (проверяет через isTypeOf()), или "nullptr". | |
| void | callQueuedEvents () |
| Выполнить все отложенные события от CONNECTU_QUEUED соединений | |
| bool | maybeCallQueuedEvents () |
| Если было хотя бы одно CONNECTU_QUEUED соединение с исполнителем this, то выполнить события Подробнее... | |
| void | deleteLater () |
| Пометить объект на удаление Подробнее... | |
| void | deleted (PIObject *o) |
| Вызывается перед удалением объекта Подробнее... | |
Защищенные члены | |
| bool | openDevice () override |
| Переопределите для открытия устройства, возвращаемое значение будет установлено в переменную "opened_". Не используйте напрямую, только через open()! | |
| bool | closeDevice () override |
| Переопределите для закрытия устройства, обратное возвращаемое значение будет установлено в переменную "opened_". | |
| PIString | constructFullPathDevice () const override |
| Переопределите для создания строки полного описания устройства. По умолчанию возвращает path() | |
| void | configureFromFullPathDevice (const PIString &full_path) override |
| Переопределите для настройки устройства из строки полного описания. По умолчанию вызывает setPath() | |
| PIPropertyStorage | constructVariantDevice () const override |
| Переопределите для создания свойств устройства. По умолчанию возвращает PIPropertyStorage со свойством "path". | |
| void | configureFromVariantDevice (const PIPropertyStorage &d) override |
| Переопределите для настройки устройства из PIPropertyStorage. Опции и режим уже применены. По умолчанию устанавливает свойство "path". | |
| ssize_t | readDevice (void *read_to, ssize_t max_size) override |
| Переопределите для чтения данных из устройства | |
| ssize_t | writeDevice (const void *data, ssize_t max_size) override |
| Переопределите для записи данных в устройство | |
| DeviceInfoFlags | deviceInfoFlags () const override |
| Переопределите для возврата правильных DeviceInfoFlags. По умолчанию возвращает 0. | |
Защищенные члены унаследованные от PIIODevice | |
| virtual bool | openDevice ()=0 |
| Переопределите для открытия устройства, возвращаемое значение будет установлено в переменную "opened_". Не используйте напрямую, только через open()! | |
| virtual bool | closeDevice () |
| Переопределите для закрытия устройства, обратное возвращаемое значение будет установлено в переменную "opened_". | |
| virtual ssize_t | readDevice (void *read_to, ssize_t max_size) |
| Переопределите для чтения данных из устройства | |
| virtual ssize_t | writeDevice (const void *data, ssize_t max_size) |
| Переопределите для записи данных в устройство | |
| virtual bool | threadedRead (const uchar *readed, ssize_t size) |
| Метод вызывается после каждого успешного потокового чтения, по умолчанию вызывает callback "ret_func_". | |
| virtual PIString | constructFullPathDevice () const |
| Переопределите для создания строки полного описания устройства. По умолчанию возвращает path() | |
| virtual void | configureFromFullPathDevice (const PIString &full_path) |
| Переопределите для настройки устройства из строки полного описания. По умолчанию вызывает setPath() | |
| virtual PIPropertyStorage | constructVariantDevice () const |
| Переопределите для создания свойств устройства. По умолчанию возвращает PIPropertyStorage со свойством "path". | |
| virtual void | configureFromVariantDevice (const PIPropertyStorage &d) |
| Переопределите для настройки устройства из PIPropertyStorage. Опции и режим уже применены. По умолчанию устанавливает свойство "path". | |
| virtual void | optionsChanged () |
| Переопределите для применения новых опций устройства | |
| virtual DeviceInfoFlags | deviceInfoFlags () const |
| Переопределите для возврата правильных DeviceInfoFlags. По умолчанию возвращает 0. | |
| virtual void | threadedReadBufferSizeChanged () |
| Переопределите для применения нового threadedReadBufferSize() | |
Защищенные члены унаследованные от PIObject | |
| PIObject * | emitter () const |
| Возвращает PIObject* который вызвал это событие. Значение допустимо только из методов обработчиков событий | |
| virtual void | propertyChanged (const char *name) |
| Виртуальная функция, вызывается после изменения любого свойства. | |
Дополнительные унаследованные члены | |
Открытые типы унаследованные от PIIODevice | |
| enum | DeviceMode { ReadOnly = 0x01 , WriteOnly = 0x02 , ReadWrite = 0x03 } |
| Режимы открытия для PIIODevice. Подробнее... | |
| enum | DeviceOption { BlockingRead = 0x01 , BlockingWrite = 0x02 } |
| Опции для PIIODevice, работает для некоторых устройств Подробнее... | |
| enum | DeviceInfoFlag { Sequential = 0x01 , Reliable = 0x02 } |
| Характеристики канала PIIODevice. Подробнее... | |
Открытые статические члены унаследованные от PIIODevice | |
| static PIIODevice * | createFromFullPath (const PIString &full_path) |
| Пытается создать новое устройство по префиксу, настраивает с помощью configureFromFullPath() и возвращает его Подробнее... | |
| static PIIODevice * | createFromVariant (const PIVariantTypes::IODevice &d) |
| Пытается создать новое устройство по префиксу, настраивает с помощью configureFromVariant() и возвращает его | |
| static PIStringList | availablePrefixes () |
| Возвращает префиксы всех зарегистрированных устройств | |
| static PIStringList | availableClasses () |
| Возвращает имена классов всех зарегистрированных устройств | |
Открытые статические члены унаследованные от PIObject | |
| static void | piDisconnect (PIObject *src, const PIString &sig, PIObject *dest, void *ev_h) |
| Разрывает все соединения от события "sig" объекта "src" к объекту "dest" и обработчику "ev_h". | |
| static void | piDisconnect (PIObject *src, const PIString &sig, PIObject *dest) |
| Разрывает все соединения от события "sig" объекта "src" к объекту "dest". | |
| static void | piDisconnect (PIObject *src, const PIString &sig) |
| Разрывает все соединения от события "sig" объекта "src". | |
| static PIObject * | findByName (const PIString &name) |
| Returns PIObject* with name "name" or 0, if there is no object found. | |
| static bool | isPIObject (const PIObject *o) |
| Возвращает действительный ли "o" PIObject (проверяет подпись) | |
| template<typename T > | |
| static bool | isTypeOf (const PIObject *o) |
| Возвращает действительный ли "o" наследник PIObject типа "T" (проверяет подпись и имя класса) | |
Открытые атрибуты унаследованные от PIIODevice | |
| bool | reopenEnabled |
| setReopenEnabled, по умолчанию "true" | |
| int | reopenTimeout |
| setReopenTimeout, по умолчанию 1_s | |
| int | threadedReadBufferSize |
| setThreadedReadBufferSize в байтах, по умолчанию 4096 | |
Относящиеся к классу функции унаследованные от PIIODevice | |
| template<typename T > | |
| T | readDeviceSetting (const PIString &name, const T &def, const PIConfig::Entry *em, const PIConfig::Entry *ep) |
| Service function. useful for configuring devices. Подробнее... | |
| #define | REGISTER_DEVICE(class) |
| Включить создание экземпляров устройства с помощью метода PIIODevice::createFromFullPath(). Подробнее... | |
| #define | PIIODEVICE(class, prefix) |
| Используйте этот макрос вместо PIOBJECT при объявлении своего PIIODevice. Подробнее... | |
Относящиеся к классу функции унаследованные от PIObject | |
| #define | piCoutObj |
| Макрос для условного (piDebug && PIObject::debug()) вывода в PICout(StdOut) для наследников PIObject. | |
| #define | piCerrObj |
| Макрос для условного (piDebug && PIObject::debug()) вывода в PICout(StdErr) для наследников PIObject. | |
| #define | PIOBJECT(name) |
| Необходимо использовать этот макрос после объявления класса для использования событийной системы и корректного вывода piCoutObj. | |
| #define | EVENT_HANDLER0(ret, name) ret name() |
| Объявляет обработчик событий с именем "name" и возвращаемым типом "ret", ret name() | |
| #define | EVENT_HANDLER1(ret, name, type0, var0) ret name(type0 var0) |
| Объявляет обработчик событий с именем "name" и возвращаемым типом "ret", ret name(type0 var0) | |
| #define | EVENT_HANDLER2(ret, name, type0, var0, type1, var1) ret name(type0 var0, type1 var1) |
| Объявляет обработчик событий с именем "name" и возвращаемым типом "ret", ret name(type0 var0, type1 var1) | |
| #define | EVENT_HANDLER3(ret, name, type0, var0, type1, var1, type2, var2) ret name(type0 var0, type1 var1, type2 var2) |
| Объявляет обработчик событий с именем "name" и возвращаемым типом "ret", ret name(type0 var0, type1 var1, type2 var2) | |
| #define | EVENT_HANDLER4(ret, name, type0, var0, type1, var1, type2, var2, type3, var3) ret name(type0 var0, type1 var1, type2 var2, type3 var3) |
| Объявляет обработчик событий с именем "name" и возвращаемым типом "ret", ret name(type0 var0, type1 var1, type2 var2,
type3 var3) | |
| #define | EVENT_HANDLER EVENT_HANDLER0 |
| Аналог EVENT_HANDLER0. | |
| #define | EVENT_VHANDLER0(ret, name) virtual ret name() |
| Объявляет виртуальный обработчик событий с именем "name" и возвращаемым типом "ret", virtual ret name() | |
| #define | EVENT_VHANDLER1(ret, name, type0, var0) virtual ret name(type0 var0) |
| Объявляет виртуальный обработчик событий с именем "name" и возвращаемым типом "ret", virtual ret name(type0 var0) | |
| #define | EVENT_VHANDLER2(ret, name, type0, var0, type1, var1) virtual ret name(type0 var0, type1 var1) |
| Объявляет виртуальный обработчик событий с именем "name" и возвращаемым типом "ret", virtual ret name(type0 var0, type1
var1) | |
| #define | EVENT_VHANDLER3(ret, name, type0, var0, type1, var1, type2, var2) virtual ret name(type0 var0, type1 var1, type2 var2) |
| Объявляет виртуальный обработчик событий с именем "name" и возвращаемым типом "ret", virtual ret name(type0 var0, type1
var1, type2 var2) | |
| #define | EVENT_VHANDLER4(ret, name, type0, var0, type1, var1, type2, var2, type3, var3) virtual ret name(type0 var0, type1 var1, type2 var2, type3 var3) |
| Объявляет виртуальный обработчик событий с именем "name" и возвращаемым типом "ret", virtual ret name(type0 var0, type1
var1, type2 var2, type3 var3) | |
| #define | EVENT_VHANDLER EVENT_VHANDLER0 |
| Аналог EVENT_VHANDLER0. | |
| #define | EVENT0(name) void name(); |
| Объявляет событие с именем "name", void name();. | |
| #define | EVENT1(name, type0, var0) void name(type0 var0); |
| Объявляет событие с именем "name", void name(type0 var0);. | |
| #define | EVENT2(name, type0, var0, type1, var1) void name(type0 var0, type1 var1); |
| Объявляет событие с именем "name", void name(type0 var0, type1 var1);. | |
| #define | EVENT3(name, type0, var0, type1, var1, type2, var2) void name(type0 var0, type1 var1, type2 var2); |
| Объявляет событие с именем "name", void name(type0 var0, type1 var1, type2 var2);. | |
| #define | EVENT4(name, type0, var0, type1, var1, type2, var2, type3, var3) void name(type0 var0, type1 var1, type2 var2, type3 var3); |
| Объявляет событие с именем "name", void name(type0 var0, type1 var1, type2 var2, type3 var3);. | |
| #define | EVENT EVENT0 |
| Аналог EVENT0. | |
| #define | CONNECTU(src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" объекта "dest". Подробнее... | |
| #define | CONNECTU_QUEUED(src, event, dest, handler, performer) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" объекта "dest". Подробнее... | |
| #define | CONNECTL(src, event, functor) |
| Соединяет событие "event" объекта "src" к лямбда-функции "functor". Подробнее... | |
| #define | CONNECT0(ret, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" с проверкой наличия события и обработчика. Подробнее... | |
| #define | CONNECT1(ret, type0, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" с проверкой наличия события и обработчика. Подробнее... | |
| #define | CONNECT2(ret, type0, type1, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" с проверкой наличия события и обработчика. Подробнее... | |
| #define | CONNECT3(ret, type0, type1, type2, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" с проверкой наличия события и обработчика. Подробнее... | |
| #define | CONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" с проверкой наличия события и обработчика. Подробнее... | |
| #define | CONNECT CONNECT0 |
| Аналог CONNECT0. Подробнее... | |
| #define | WEAK_CONNECT0(ret, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" без проверки наличия события и обработчика. Подробнее... | |
| #define | WEAK_CONNECT1(ret, type0, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" без проверки наличия события и обработчика. Подробнее... | |
| #define | WEAK_CONNECT2(ret, type0, type1, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" без проверки наличия события и обработчика. Подробнее... | |
| #define | WEAK_CONNECT3(ret, type0, type1, type2, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" без проверки наличия события и обработчика. Подробнее... | |
| #define | WEAK_CONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler) |
| Соединяет событие "event" объекта "src" к обработчику или событию "handler" с возвращаемым типом "ret" объекта "dest" без проверки наличия события и обработчика. Подробнее... | |
| #define | WEAK_CONNECT WEAK_CONNECT0 |
| Аналог WEAK_CONNECT0. Подробнее... | |
| #define | DISCONNECT0(ret, src, event, dest, handler) |
| piDisconnect событие "event" объекта "src" от обработчика или события "handler" с возвращаемым типом "ret" объекта "dest" | |
| #define | DISCONNECT1(ret, type0, src, event, dest, handler) |
| piDisconnect событие "event" объекта "src" от обработчика или события "handler" с возвращаемым типом "ret" объекта "dest" | |
| #define | DISCONNECT2(ret, type0, type1, src, event, dest, handler) |
| piDisconnect событие "event" объекта "src" от обработчика или события "handler" с возвращаемым типом "ret" объекта "dest" | |
| #define | DISCONNECT3(ret, type0, type1, type2, src, event, dest, handler) |
| piDisconnect событие "event" объекта "src" от обработчика или события "handler" с возвращаемым типом "ret" объекта "dest" | |
| #define | DISCONNECT4(ret, type0, type1, type2, type3, src, event, dest, handler) |
| piDisconnect событие "event" объекта "src" от обработчика или события "handler" с возвращаемым типом "ret" объекта "dest" | |
| #define | DISCONNECT DISCONNECT0 |
| Аналог DISCONNECT0. | |
| #define | HANDLER(handler) |
| Возвращает указатель на обработчик события "handler". | |
Разделяемая память.
Разделяемая память используется как единое хранилище данных, доступное различным процессам по имени. При первом открытии объекта разделяемой памяти выделяется size() байт, по умолчанию 65 Кб. Все процессы должны использовать один и тот же size() во избежании ошибок.
У объекта разделяемой памяти нету позиции чтения/записи, каждый вызов read() или write() обращается к началу памяти. Для работы с конкретным участком памяти используются перегруженные методы с указанием "offset".