Класс поиска считывателей. Подробнее...
#include <ilr_cpp_helpers.h>
Открытые члены | |
| CReaderSearch () | |
| Конструктор по умолчанию. | |
| CReaderSearch (ilr_handle h) | |
| Конструктор класса из дескриптора поиска считывателей. Подробнее... | |
| CReaderSearch (CReaderSearch &&other) | |
| Конструктор перемещения. Подробнее... | |
| virtual | ~CReaderSearch () |
| Деструктор | |
| CReaderSearch & | operator= (CReaderSearch &&other) |
| Оператор перемещения | |
| void | SetMessageCallback (ilr_search_message_callback pCallback, void *pUserData=nullptr) |
| Устанавливает функцию обратного вызова для уведомлений поиска считывателей. Подробнее... | |
| void | EnableMessageQueue (bool fEnable=true) |
| Включает/выключает очередь сообщений. Подробнее... | |
| bool | GetMessage (ilr_search_msg &nMsg, const void *&pMsgData) const |
| Извлекает следующее сообщение из очереди. Подробнее... | |
| void | SetOptions (const ilr_search_options &rOptions) |
| Устанавливает параметры поиска считывателей. Подробнее... | |
| void | GetOptions (ilr_search_options &rOptions) const |
| Возвращает параметры поиска считывателей. Подробнее... | |
| void | SetListenPorts (const uint16_t *pPorts, size_t nCount) |
| Устанавливает список портов для прослушки конвертеров к режиме "Клиент". Подробнее... | |
| void | GetListenPorts (std::vector< uint16_t > &oPorts) const |
| Возвращает список портов для прослушки конвертеров к режиме "Клиент". Подробнее... | |
| ilr_status | GetListenStatus (uint16_t nTcpPort) const |
| Возвращает состояние Tcp-порта, открытого для прослушки конвертеров в режиме "Клиент". Подробнее... | |
| void | Scan (bool fReset=false) |
| Ищет считыватели. Подробнее... | |
| CAsyncCommand | Begin_Scan (bool fReset=false) |
| Запускает асинхронную команду поиска считывателей. Подробнее... | |
| size_t | GetReaderCount () const |
| Возвращает количество найденных считывателей. Подробнее... | |
| void | GetReaderInfo (size_t nIdx, ilr_reader_info &rInfo) const |
| Возвращает информацию о найденном считывателе. Подробнее... | |
| void | SetAutoScan (bool fEnable=true, bool fWait=true) |
| Включает/выключает авто поиск считывателей. Подробнее... | |
| CAsyncCommand | Begin_SetAutoScan (bool fEnable) |
| Запускает асинхронную команду вкл/выкл режим авто поиска считывателей. Подробнее... | |
| bool | GetAutoScan () const |
| Возвращает флаг авто поиска считывателей. Подробнее... | |
| int | OpenPort (ilr_port_type nPortType, const char *pszPortName, ilr_reader_info *pInfo=nullptr) |
| Открывает порт и возвращает его дескриптор. Подробнее... | |
| CAsyncCommand | Begin_OpenPort (ilr_port_type nPortType, const char *pszPortName) |
| Запускает асинхронную команду открытия порта. Подробнее... | |
| void | ClosePort (ilr_port_type nPortType, const char *pszPortName, int hPort) |
| Закрывает порт Подробнее... | |
| CAsyncCommand | Begin_ClosePort (ilr_port_type nPortType, const char *pszPortName, int hPortFD) |
| Запускает асинхронную команду закрытия порта. Подробнее... | |
| CReaderSearch | Clone () const |
| Клонирует дескриптор поиска считывателей. Подробнее... | |
Открытые члены унаследованные от ilr::CILRHandle | |
| CILRHandle () | |
| Конструктор по умолчанию. | |
| CILRHandle (ilr_handle h) | |
| Конструктор из дескриптора SDK. Подробнее... | |
| CILRHandle (const CILRHandle &)=delete | |
| Запрещаем копирование этого класса (т.к. он содержит указатель = дескриптор). | |
| CILRHandle (CILRHandle &&other) | |
| Конструктор перемещения. Подробнее... | |
| virtual | ~CILRHandle () |
| Деструктор | |
| CILRHandle & | operator= (const CILRHandle &)=delete |
| Запрещаем копирование этого класса (т.к. он содержит указатель = дескриптор). | |
| CILRHandle & | operator= (CILRHandle &&other) |
| Оператор перемещения. Подробнее... | |
| operator ilr_handle () const | |
| Оператор приведения типа к ilr_handle. | |
| operator bool () const | |
| Проверяет дескриптор на валидность. | |
| void | Swap (CILRHandle &other) noexcept |
| Обменивается значением с другим дескриптором. Подробнее... | |
| ilr_handle | Get () const |
| Возвращает дескриптор SDK. | |
| void | Close () |
| Закрывает дескриптор SDK. Подробнее... | |
| void | Attach (ilr_handle h) |
| Присоединяет дескриптор к этому объекту. Подробнее... | |
| ilr_handle | Detach () |
| Отсоединяет дескриптор от этого объекту. Подробнее... | |
Открытые статические члены | |
| static void | End_OpenPort (ilr_handle hCommand, int &PortFD, ilr_reader_info &rInfo) |
| Возвращает результат открытия порта. Подробнее... | |
Дополнительные унаследованные члены | |
Защищенные данные унаследованные от ilr::CILRHandle | |
| ilr_handle | m_h |
| Дескриптор SDK. | |
Класс поиска считывателей.
Класс-обёртка для дескриптора поиска считывателей.
| ilr::CReaderSearch::CReaderSearch | ( | ilr_handle | h | ) |
Конструктор класса из дескриптора поиска считывателей.
| [in] | h | Значение дескриптора SDK. |
| ilr::CReaderSearch::CReaderSearch | ( | CReaderSearch && | other | ) |
Конструктор перемещения.
| [in,out] | other | Другой поиск считывателей. |
|
inline |
Запускает асинхронную команду закрытия порта.
| [in] | nPortType | Тип порта |
| [in] | pszPortName | Имя порта |
| [in] | hPortFD | Системный дескриптор порта. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, `ILR_E_OUTOFMEMORY`, ILR_E_OUT_OF_RESOURCES. |
|
inline |
Запускает асинхронную команду открытия порта.
| [in] | nPortType | Тип порта. |
| [in] | pszPortName | Имя порта. |
| CILRException | если произошла ошибка `ILR_E_INVALIDARG`, `ILR_E_HANDLE`, ILR_E_OUTOFMEMORY, ILR_E_OUT_OF_RESOURCES. |
|
inline |
Запускает асинхронную команду поиска считывателей.
| [in] | fReset | =true очистить список найденных перед поиском. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, ILR_E_OUT_OF_RESOURCES, ILR_E_OUTOFMEMORY. |
|
inline |
Запускает асинхронную команду вкл/выкл режим авто поиска считывателей.
| [in] | fEnable | =true включает поиск в реальном времени, иначе - выключает. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, `ILR_E_OUTOFMEMORY`, ILR_E_OUT_OF_RESOURCES. |
|
inline |
Клонирует дескриптор поиска считывателей.
|
inline |
Закрывает порт
| [in] | nPortType | Тип порта. |
| [in] | pszPortName | Имя порта. |
| [in] | hPort | Системный дескриптор порта. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, ILR_E_BLOCKING_CALL_NOT_ALLOWED, ILR_E_OUTOFMEMORY, ILR_E_OUT_OF_RESOURCES. |
|
inline |
Включает/выключает очередь сообщений.
Эта функция устанавливает/снимает флаг в дескрипторе поиска. Очередь сообщений предназначена для синхронизации обработки сообщений.
| [in] | fEnable | =true, включает очередь, иначе - выключает. |
| CILRException(ILR_E_HANDLE) | если дескриптор неправильный. |
|
inlinestatic |
Возвращает результат открытия порта.
| [in] | hCommand | Дескриптор команды. |
| [out] | PortFD | Системный дескриптор порта. |
| [out] | rInfo | Информация о конвертере (если известно). |
| CILRException(ILR_E_HANDLE) | если дескриптор неправильный. |
|
inline |
Возвращает флаг авто поиска считывателей.
| CILRException(ILR_E_HANDLE) | если дескриптор неправильный. |
| void ilr::CReaderSearch::GetListenPorts | ( | std::vector< uint16_t > & | oPorts | ) | const |
Возвращает список портов для прослушки конвертеров к режиме "Клиент".
Возвращает список TCP-портов, который был установлен функцией SetListenPorts.
| [in,out] | oPorts | Список портов. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, `ILR_E_OUTOFMEMORY`. |
|
inline |
Возвращает состояние Tcp-порта, открытого для прослушки конвертеров в режиме "Клиент".
| [in] | nTcpPort | Номер TCP порта. |
ILR_OK порт открыт успешно, ILR_E_PENDING порт в процессе открытия или его нет в списке портов для прослушки, иначе не удалось открыть.
|
inline |
Извлекает следующее сообщение из очереди.
| [out] | nMsg | Тип сообщения. |
| [out] | pMsgData | Указатель на данные пользователя, которые были установлены функцией SetMessageCallback. |
| CILRException(ILR_E_HANDLE) | если дескриптор неправильный. |
|
inline |
Возвращает параметры поиска считывателей.
| [out] | rOptions | Опции поиска считывателей. |
| CILRException(ILR_E_HANDLE) | если дескриптор неправильный. |
|
inline |
Возвращает количество найденных считывателей.
| CILRException | если произошла ошибка `ILR_E_HANDLE`, `ILR_E_OUTOFMEMORY`. |
|
inline |
Возвращает информацию о найденном считывателе.
| [in] | nIdx | Позиция в списке найденных считывателей. |
| [out] | rInfo | Информация о считывателе. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, `ILR_E_BOUNDS`. |
|
inline |
Открывает порт и возвращает его дескриптор.
| [in] | nPortType | Тип порта. |
| [in] | pszPortName | Имя порта. |
| [out] | pInfo | Информация о считывателе. Может быть равно nullptr. |
| CILRException | если произошла ошибка `ILR_E_INVALIDARG`, `ILR_E_HANDLE`, ILR_E_BLOCKING_CALL_NOT_ALLOWED, ILR_E_OUTOFMEMORY, ILR_E_OUT_OF_RESOURCES, ILR_E_PORT_ACCESS_DENIED, ILR_E_PORT_NOT_EXIST, ILR_E_PORT_OPEN_FAILED, ILR_E_CONNECTION_ERROR, ILR_E_NOTIMPL. |
|
inline |
Ищет считыватели.
| [in] | fReset | =true очищает список найденных считывателей перед началом поиска. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, ILR_E_BLOCKING_CALL_NOT_ALLOWED, ILR_E_OUT_OF_RESOURCES, ILR_E_OUTOFMEMORY. |
|
inline |
Включает/выключает авто поиск считывателей.
| [in] | fEnable | =true, включает авто поиск, иначе - выключает. |
| [in] | fWait | =true, ждёт полного завершения команды, иначе только устанавливает флаг. |
fWait =true, то функция не возвращает управление пока ждёт выполнение команды в потоке поиска считывателей.| CILRException | если произошла ошибка `ILR_E_HANDLE`, ILR_E_BLOCKING_CALL_NOT_ALLOWED, ILR_E_OUTOFMEMORY, ILR_E_OUT_OF_RESOURCES. |
|
inline |
Устанавливает список портов для прослушки конвертеров к режиме "Клиент".
Устанавливает список TCP-портов, к которым будут подключаться IP-конвертеры в режиме "Клиент".
| [in] | pPorts | Массив портов. Если =nullptr, то очищает список. |
| [in] | nCount | Количество элементов массива портов. |
| CILRException | если произошла ошибка `ILR_E_HANDLE`, `ILR_E_INVALIDARG`, ILR_E_OUTOFMEMORY. |
|
inline |
Устанавливает функцию обратного вызова для уведомлений поиска считывателей.
Устанавливает функцию для получения сообщений от дескриптора поиска считывателей.
| [in] | pCallback | Указатель на функцию, которую библиотека будет вызывать при возникновении события поиска считывателей. |
| [in] | pUserData | Указатель на данные пользователя, который будет передаваться в функцию. |
try catch. Нельзя из callback-функции вызывать функции, которые ждут выполнение команды в потоке, из которого вызвана эта callback-функция, иначе будет ошибка ILR_E_BLOCKING_CALL_NOT_ALLOWED.| CILRException(ILR_E_HANDLE) | если дескриптор неправильный. |
|
inline |
Устанавливает параметры поиска считывателей.
| [in] | rOptions | Опции поиска считывателей. |
| CILRException(ILR_E_HANDLE) | если дескриптор неправильный. |