Функции и типы, связанные с поиском считывателей. Подробнее...
Классы | |
struct | ilr_search_options |
Настройки поиска считывателей. Подробнее... | |
Определения типов | |
typedef ilr_bool(ILR_CALL * | ilr_filter_port_callback) (ilr_port_type nPortType, const char *pszPortName, void *pUserData) |
Тип функции обратного вызова для фильтрации портов при поиске считывателей. Подробнее... | |
typedef void(ILR_CALL * | ilr_search_message_callback) (ilr_search_msg nMsg, const void *pMsgData, void *pUserData) |
Тип функции обратного вызова для получения уведомлений от дескриптора поиска. Подробнее... | |
Перечисления | |
enum | ilr_search_msg { ILR_SEARCH_MSG_COMMAND_FINISH , ILR_SEARCH_MSG_READER_FOUND , ILR_SEARCH_MSG_READER_LOST , ILR_SEARCH_MSG_LIST_CHANGED } |
Сообщение поиска считывателей. Подробнее... | |
enum | ilr_reader_types : uint32_t { ILR_READER_ILUSB = (1 << 0) , ILR_READER_TPUSB = (1 << 1) , ILR_READER_SERVER = (1 << 2) , ILR_READER_CLIENT = (1 << 3) , ILR_READER_CCID = (1 << 4) } |
Флаги типов считывателей. Подробнее... | |
Функции | |
ILR_API ilr_status ILR_CALL | ilr_set_filter_port_callback (ilr_filter_port_callback pCallback, void *pUserData=nullptr) |
Устанавливает функцию обратного вызова для фильтрации портов при поиске считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_get_search (ilr_handle *pSearch) |
Создаёт дескриптор поиска считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_set_message_callback (ilr_handle hSearch, ilr_search_message_callback pCallback, void *pUserData=nullptr) |
Устанавливает функцию обратного вызова для уведомлений поиска считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_enable_message_queue (ilr_handle hSearch, ilr_bool fEnable=ILR_TRUE) |
Включает/выключает очередь сообщений. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_get_message (ilr_handle hSearch, ilr_search_msg *pMsg, const void **pMsgData, ilr_bool *pFound) |
Извлекает следующее сообщение из очереди. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_set_options (ilr_handle hSearch, const ilr_search_options *pOptions) |
Устанавливает параметры поиска считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_get_options (ilr_handle hSearch, ilr_search_options *pOptions) |
Возвращает параметры поиска считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_set_listen_ports (ilr_handle hSearch, const uint16_t *pPorts, size_t nCount) |
Устанавливает список портов для прослушки конвертеров к режиме "Клиент". Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_get_listen_ports (ilr_handle hSearch, uint16_t *pBuf, size_t *pSize) |
Возвращает список портов для прослушки конвертеров к режиме "Клиент". Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_scan (ilr_handle hSearch, ilr_bool fReset=ILR_FALSE) |
Ищет считыватели. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_begin_scan (ilr_handle hSearch, ilr_bool fReset, ilr_handle *pCommand) |
Запускает асинхронную команду поиска считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_get_reader_count (ilr_handle hSearch, size_t *pCount) |
Возвращает количество найденных считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_get_reader_info (ilr_handle hSearch, size_t nIdx, ilr_reader_info *pInfo) |
Возвращает информацию о найденном считывателе. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_set_auto_scan (ilr_handle hSearch, ilr_bool fEnable=ILR_TRUE, ilr_bool fWait=ILR_TRUE) |
Включает/выключает авто поиск считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_begin_set_auto_scan (ilr_handle hSearch, ilr_bool fEnable, ilr_handle *pCommand) |
Запускает асинхронную команду вкл/выкл режим авто поиска считывателей. Подробнее... | |
ILR_API ilr_status ILR_CALL | ilr_search_get_auto_scan (ilr_handle hSearch, ilr_bool *pEnabled) |
Возвращает флаг авто поиска считывателей. Подробнее... | |
Функции и типы, связанные с поиском считывателей.
Ссылки на инфо о создании дескриптора поиска, поиске считывателей, настройке поиска.
typedef ilr_bool(ILR_CALL * ilr_filter_port_callback) (ilr_port_type nPortType, const char *pszPortName, void *pUserData) |
Тип функции обратного вызова для фильтрации портов при поиске считывателей.
[in] | nPortType | Тип порта. |
[in] | pszPortName | Имя порта. |
[in] | pUserData | Указатель на данные пользователя. |
typedef void(ILR_CALL * ilr_search_message_callback) (ilr_search_msg nMsg, const void *pMsgData, void *pUserData) |
Тип функции обратного вызова для получения уведомлений от дескриптора поиска.
[in] | nMsg | Тип сообщения. |
[in] | pMsgData | Указатель на данные сообщения. Тип данных зависит от типа сообщения. |
[in] | pUserData | Указатель на данные пользователя. |
pMsgData
действителен до выхода из этой функции. enum ilr_reader_types : uint32_t |
Флаги типов считывателей.
enum ilr_search_msg |
Сообщение поиска считывателей.
Элементы перечислений | |
---|---|
ILR_SEARCH_MSG_COMMAND_FINISH | Завершилась асинхронная команда, созданная функцией с префиксом "ilr_search_begin_". Параметр - дескриптор команды (дескриптор действителен до следующего сообщения этого типа или до следующего вызова GetMessage), его не нужно закрывать функцией ilr_close_handle. |
ILR_SEARCH_MSG_READER_FOUND | Считыватель найден, параметр ilr_reader_info*. |
ILR_SEARCH_MSG_READER_LOST | Считыватель потерян, параметр ilr_reader_info*. |
ILR_SEARCH_MSG_LIST_CHANGED | Список считывателей изменён.
|
ILR_API ilr_status ILR_CALL ilr_get_search | ( | ilr_handle * | pSearch | ) |
Создаёт дескриптор поиска считывателей.
[out] | pSearch | Дескриптор поиска считывателей. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_begin_scan | ( | ilr_handle | hSearch, |
ilr_bool | fReset, | ||
ilr_handle * | pCommand | ||
) |
Запускает асинхронную команду поиска считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | fReset | ILR_TRUE , очистить список найденных перед поиском. |
[out] | pCommand | Дескриптор команды. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_begin_set_auto_scan | ( | ilr_handle | hSearch, |
ilr_bool | fEnable, | ||
ilr_handle * | pCommand | ||
) |
Запускает асинхронную команду вкл/выкл режим авто поиска считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | fEnable | ILR_TRUE , включает поиск в реальном времени, иначе - выключает. |
[out] | pCommand | Дескриптор команды. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_enable_message_queue | ( | ilr_handle | hSearch, |
ilr_bool | fEnable = ILR_TRUE |
||
) |
Включает/выключает очередь сообщений.
Эта функция устанавливает/снимает флаг "очередь включена" в дескрипторе поиска. Очередь сообщений предназначена для синхронизации обработки сообщений поиска.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | fEnable | ILR_TRUE , включает очередь, иначе - выключает. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_get_auto_scan | ( | ilr_handle | hSearch, |
ilr_bool * | pEnabled | ||
) |
Возвращает флаг авто поиска считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[out] | pEnabled | ILR_TRUE , авто поиск включен, иначе - выключен. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_get_listen_ports | ( | ilr_handle | hSearch, |
uint16_t * | pBuf, | ||
size_t * | pSize | ||
) |
Возвращает список портов для прослушки конвертеров к режиме "Клиент".
Возвращает список TCP-портов, который был установлен функцией ilr_search_set_listen_ports.
[in] | hSearch | Дескриптор поиска считывателей. |
[in,out] | pBuf | Указатель на буфер для списка портов. Может быть =nullptr. |
[in,out] | pSize | Размер буфера в словах uint16_t или ILR_AUTOALLOCATE. Если =ILR_AUTOALLOCATE , то pBuf должен ссылаться на указатель, т.е. должен иметь тип uint16_t **, функция сама выделит память под список портов, которую после использования нужно освободить функцией ilr_free_memory. В конце функция устанавливает в pSize требуемый размер для буфера. |
ILR_OK | Функция выполнена успешно. |
ILR_E_BUFFER_TOO_SMALL | Размер буфера не достаточный (когда не используется ILR_AUTOALLOCATE ). |
ILR_E_OUTOFMEMORY | Не удалось выделить память (когда используется ILR_AUTOALLOCATE ). |
ILR_E_POINTER | Необходимый выходной параметр = nullptr. |
ILR_API ilr_status ILR_CALL ilr_search_get_message | ( | ilr_handle | hSearch, |
ilr_search_msg * | pMsg, | ||
const void ** | pMsgData, | ||
ilr_bool * | pFound | ||
) |
Извлекает следующее сообщение из очереди.
[in] | hSearch | Дескриптор поиска считывателей. |
[out] | pMsg | Тип сообщения. |
[out] | pMsgData | Указатель на данные пользователя, которые были установлены функцией ilr_search_set_message_callback. |
[out] | pFound | ILR_TRUE если сообщение успешно извлечено, иначе - очередь пуста. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_get_options | ( | ilr_handle | hSearch, |
ilr_search_options * | pOptions | ||
) |
Возвращает параметры поиска считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[out] | pOptions | Опции поиска считывателей. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_get_reader_count | ( | ilr_handle | hSearch, |
size_t * | pCount | ||
) |
Возвращает количество найденных считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[out] | pCount | Количество найденных считывателей. |
*pCount
в переменной, и уже её использовать в цикле.ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_get_reader_info | ( | ilr_handle | hSearch, |
size_t | nIdx, | ||
ilr_reader_info * | pInfo | ||
) |
Возвращает информацию о найденном считывателе.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | nIdx | Позиция в списке найденных считывателей. |
[out] | pInfo | Информация о считывателе. |
pInfo
ссылки pszPortName
и pszConnect
действительны до следующего вызова ilr_search_get_reader_count и пока жив дескриптор hSearch
.ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_scan | ( | ilr_handle | hSearch, |
ilr_bool | fReset = ILR_FALSE |
||
) |
Ищет считыватели.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | fReset | ILR_TRUE , очищает список найденных считывателей перед началом поиска. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_set_auto_scan | ( | ilr_handle | hSearch, |
ilr_bool | fEnable = ILR_TRUE , |
||
ilr_bool | fWait = ILR_TRUE |
||
) |
Включает/выключает авто поиск считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | fEnable | ILR_TRUE , включает авто поиск, иначе - выключает. |
[in] | fWait | ILR_TRUE , ждёт полного завершения команды, иначе только устанавливает флаг. |
fWait
равен ILR_TRUE
, то функция не возвращает управление пока ждёт выполнение команды в потоке поиска считывателей.ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_set_listen_ports | ( | ilr_handle | hSearch, |
const uint16_t * | pPorts, | ||
size_t | nCount | ||
) |
Устанавливает список портов для прослушки конвертеров к режиме "Клиент".
Устанавливает список TCP-портов, к которым будут подключаться IP-конвертеры в режиме "Клиент".
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | pPorts | Массив портов. Если =nullptr, то очищает список. |
[in] | nCount | Количество элементов массива портов. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_set_message_callback | ( | ilr_handle | hSearch, |
ilr_search_message_callback | pCallback, | ||
void * | pUserData = nullptr |
||
) |
Устанавливает функцию обратного вызова для уведомлений поиска считывателей.
Устанавливает функцию для получения сообщений от дескриптора поиска считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | pCallback | Указатель на функцию, которую библиотека будет вызывать при возникновении события поиска считывателей. |
[in] | pUserData | Указатель на данные пользователя, который будет передаваться в функцию. |
ILR_E_BLOCKING_CALL_NOT_ALLOWED
.ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_search_set_options | ( | ilr_handle | hSearch, |
const ilr_search_options * | pOptions | ||
) |
Устанавливает параметры поиска считывателей.
[in] | hSearch | Дескриптор поиска считывателей. |
[in] | pOptions | Опции поиска считывателей. |
ILR_OK
в случае успеха или код ошибки в случае неудачи. ILR_API ilr_status ILR_CALL ilr_set_filter_port_callback | ( | ilr_filter_port_callback | pCallback, |
void * | pUserData = nullptr |
||
) |
Устанавливает функцию обратного вызова для фильтрации портов при поиске считывателей.
[in] | pCallback | Указатель на функцию, которую поток поиска будет вызывать при нахождении порта. |
[in] | pUserData | Указатель на данные пользователя, который будет передаваться в функцию. |
ILR_E_BLOCKING_CALL_NOT_ALLOWED
.ILR_OK
в случае успеха или код ошибки в случае неудачи.