Функции и типы, связанные с поиском конвертеров. Подробнее...
Классы | |
| struct | ilg_search_options |
| Настройки поиска конвертеров. Подробнее... | |
Определения типов | |
| typedef ilg_bool(ILG_CALL * | ilg_filter_port_callback) (ilg_port_type nPortType, const char *pszPortName, void *pUserData) |
| Тип функции обратного вызова для фильтрации портов при поиске конвертеров. Подробнее... | |
| typedef void(ILG_CALL * | ilg_search_message_callback) (ilg_search_msg nMsg, const void *pMsgData, void *pUserData) |
| Тип функции обратного вызова для получения уведомлений от дескриптора поиска. Подробнее... | |
Перечисления | |
| enum | ilg_search_msg { ILG_SEARCH_MSG_COMMAND_FINISH , ILG_SEARCH_MSG_CONVERTER_FOUND , ILG_SEARCH_MSG_CONVERTER_LOST , ILG_SEARCH_MSG_LIST_CHANGED , ILG_SEARCH_MSG_LISTEN_PORT_OPEN , ILG_SEARCH_MSG_LISTEN_PORT_CLOSED , ILG_SEARCH_MSG_LISTEN_ERROR } |
| Сообщение поиска конвертеров. Подробнее... | |
| enum | ilg_converter_types : uint32_t { ILG_CONVERTER_ILUSB = (1 << 0) , ILG_CONVERTER_TPUSB = (1 << 1) , ILG_CONVERTER_SERVER = (1 << 2) , ILG_CONVERTER_CLIENT = (1 << 3) } |
| Флаги типов конвертеров. Подробнее... | |
Функции | |
| ILG_API ilg_status ILG_CALL | ilg_set_filter_port_callback (ilg_filter_port_callback pCallback, void *pUserData=nullptr) |
| Устанавливает функцию обратного вызова для фильтрации портов при поиске конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_get_search (ilg_handle *pSearch) |
| Создаёт дескриптор поиска конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_set_message_callback (ilg_handle hSearch, ilg_search_message_callback pCallback, void *pUserData=nullptr) |
| Устанавливает функцию обратного вызова для уведомлений поиска конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_enable_message_queue (ilg_handle hSearch, ilg_bool fEnable=ILG_TRUE) |
| Включает/выключает очередь сообщений. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_get_message (ilg_handle hSearch, ilg_search_msg *pMsg, const void **pMsgData, ilg_bool *pFound) |
| Извлекает следующее сообщение из очереди. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_set_options (ilg_handle hSearch, const ilg_search_options *pOptions) |
| Устанавливает параметры поиска конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_get_options (ilg_handle hSearch, ilg_search_options *pOptions) |
| Возвращает параметры поиска конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_set_listen_ports (ilg_handle hSearch, const uint16_t *pPorts, size_t nCount) |
| Устанавливает список портов для прослушки конвертеров к режиме "Клиент". Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_get_listen_ports (ilg_handle hSearch, uint16_t *pBuf, size_t *pSize) |
| Возвращает список портов для прослушки конвертеров к режиме "Клиент". Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_scan (ilg_handle hSearch, ilg_bool fReset=ILG_FALSE) |
| Ищет конвертеры. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_begin_scan (ilg_handle hSearch, ilg_bool fReset, ilg_handle *pCommand) |
| Запускает асинхронную команду поиска конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_get_converter_count (ilg_handle hSearch, size_t *pCount) |
| Возвращает количество найденных конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_get_converter_info (ilg_handle hSearch, size_t nIdx, ilg_converter_info *pInfo) |
| Возвращает информацию о найденном конвертере. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_set_auto_scan (ilg_handle hSearch, ilg_bool fEnable=ILG_TRUE, ilg_bool fWait=ILG_TRUE) |
| Включает/выключает авто поиск конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_begin_set_auto_scan (ilg_handle hSearch, ilg_bool fEnable, ilg_handle *pCommand) |
| Запускает асинхронную команду вкл/выкл режим авто поиска конвертеров. Подробнее... | |
| ILG_API ilg_status ILG_CALL | ilg_search_get_auto_scan (ilg_handle hSearch, ilg_bool *pEnabled) |
| Возвращает флаг авто поиска конвертеров. Подробнее... | |
Функции и типы, связанные с поиском конвертеров.
Ссылки на инфо о создании дескриптора поиска, поиске конвертеров, настройке поиска.
| typedef ilg_bool(ILG_CALL * ilg_filter_port_callback) (ilg_port_type nPortType, const char *pszPortName, void *pUserData) |
Тип функции обратного вызова для фильтрации портов при поиске конвертеров.
| [in] | nPortType | Тип порта. |
| [in] | pszPortName | Имя порта. |
| [in] | pUserData | Указатель на данные пользователя. |
| typedef void(ILG_CALL * ilg_search_message_callback) (ilg_search_msg nMsg, const void *pMsgData, void *pUserData) |
Тип функции обратного вызова для получения уведомлений от дескриптора поиска.
| [in] | nMsg | Тип сообщения. |
| [in] | pMsgData | Указатель на данные сообщения. Тип данных зависит от типа сообщения. |
| [in] | pUserData | Указатель на данные пользователя. |
pMsgData действителен до выхода из этой функции. | enum ilg_converter_types : uint32_t |
Флаги типов конвертеров.
| enum ilg_search_msg |
Сообщение поиска конвертеров.
| Элементы перечислений | |
|---|---|
| ILG_SEARCH_MSG_COMMAND_FINISH | Завершилась асинхронная команда, созданная функцией с префиксом "ilg_search_begin_". Параметр - дескриптор команды (дескриптор действителен до следующего сообщения этого типа или до следующего вызова GetMessage), его не нужно закрывать функцией ilg_close_handle. |
| ILG_SEARCH_MSG_CONVERTER_FOUND | Конвертер найден, параметр ilg_converter_info*. |
| ILG_SEARCH_MSG_CONVERTER_LOST | Конвертер потерян, параметр ilg_converter_info*. |
| ILG_SEARCH_MSG_LIST_CHANGED | Список конвертеров изменён.
|
| ILG_SEARCH_MSG_LISTEN_PORT_OPEN | TCP порт для прослушки открыт, параметр uint16_t номер TCP порта. |
| ILG_SEARCH_MSG_LISTEN_PORT_CLOSED | TCP порт для прослушки закрыт, параметр uint16_t номер TCP порта. |
| ILG_SEARCH_MSG_LISTEN_ERROR | Ошибка TCP порта для прослушки, параметр ilg_listen_error_info*. |
| ILG_API ilg_status ILG_CALL ilg_get_search | ( | ilg_handle * | pSearch | ) |
Создаёт дескриптор поиска конвертеров.
| [out] | pSearch | Дескриптор поиска конвертеров. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_begin_scan | ( | ilg_handle | hSearch, |
| ilg_bool | fReset, | ||
| ilg_handle * | pCommand | ||
| ) |
Запускает асинхронную команду поиска конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | fReset | ILG_TRUE, очистить список найденных перед поиском. |
| [out] | pCommand | Дескриптор команды. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_begin_set_auto_scan | ( | ilg_handle | hSearch, |
| ilg_bool | fEnable, | ||
| ilg_handle * | pCommand | ||
| ) |
Запускает асинхронную команду вкл/выкл режим авто поиска конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | fEnable | ILG_TRUE, включает поиск в реальном времени, иначе - выключает. |
| [out] | pCommand | Дескриптор команды. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_enable_message_queue | ( | ilg_handle | hSearch, |
| ilg_bool | fEnable = ILG_TRUE |
||
| ) |
Включает/выключает очередь сообщений.
Эта функция устанавливает/снимает флаг "очередь включена" в дескрипторе поиска. Очередь сообщений предназначена для синхронизации обработки сообщений поиска.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | fEnable | ILG_TRUE, включить очередь, иначе - выключить. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_get_auto_scan | ( | ilg_handle | hSearch, |
| ilg_bool * | pEnabled | ||
| ) |
Возвращает флаг авто поиска конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [out] | pEnabled | ILG_TRUE, авто поиск включен, иначе - выключен. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_get_converter_count | ( | ilg_handle | hSearch, |
| size_t * | pCount | ||
| ) |
Возвращает количество найденных конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [out] | pCount | Количество найденных конвертеров. |
*pCount в переменной, и уже её использовать в цикле.ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_get_converter_info | ( | ilg_handle | hSearch, |
| size_t | nIdx, | ||
| ilg_converter_info * | pInfo | ||
| ) |
Возвращает информацию о найденном конвертере.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | nIdx | Позиция в списке найденных конвертеров. |
| [out] | pInfo | Информация о конвертере. |
pInfo ссылки pszPortName и pszConnect действительны до следующего вызова ilg_search_get_converter_count и пока жив дескриптор hSearch.ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_get_listen_ports | ( | ilg_handle | hSearch, |
| uint16_t * | pBuf, | ||
| size_t * | pSize | ||
| ) |
Возвращает список портов для прослушки конвертеров к режиме "Клиент".
Возвращает список TCP-портов, которые открываются для прослушки, к этим портам подключаются IP-конвертеры в режиме "Клиент". Установить список можно с помощью функциеи ilg_search_set_listen_ports.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in,out] | pBuf | Указатель на буфер для списка портов. Может быть равен nullptr. |
| [in,out] | pSize | Размер буфера в словах uint16_t. |
pBuf равен nullptr, то буфер не используется, возвращается только требуемый размер для буфера pBuf.pSize устанавливается требуемый размер для буфера pBuf.pSize равно ILG_AUTOALLOCATE, то библиотека сама выделяет память. pBuf должен ссылаться на указатель, в который будет записан адрес выделенной памяти. После использования памяти нужно освободить функцией ilg_free_memory ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_E_POINTER | Необходимый выходной параметр равен nullptr. |
| ILG_E_BUFFER_TOO_SMALL | Размер буфера не достаточный. |
| ILG_E_OUTOFMEMORY | Не удалось выделить память. |
| ILG_API ilg_status ILG_CALL ilg_search_get_message | ( | ilg_handle | hSearch, |
| ilg_search_msg * | pMsg, | ||
| const void ** | pMsgData, | ||
| ilg_bool * | pFound | ||
| ) |
Извлекает следующее сообщение из очереди.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [out] | pMsg | Тип сообщения. |
| [out] | pMsgData | Указатель на данные пользователя, которые были установлены функцией ilg_search_set_message_callback. |
| [out] | pFound | ILG_TRUE, если сообщение успешно извлечено, иначе - очередь пуста. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_get_options | ( | ilg_handle | hSearch, |
| ilg_search_options * | pOptions | ||
| ) |
Возвращает параметры поиска конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [out] | pOptions | Опции поиска конвертеров. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_scan | ( | ilg_handle | hSearch, |
| ilg_bool | fReset = ILG_FALSE |
||
| ) |
Ищет конвертеры.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | fReset | ILG_TRUE, очищает список найденных конвертеров перед началом поиска. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_set_auto_scan | ( | ilg_handle | hSearch, |
| ilg_bool | fEnable = ILG_TRUE, |
||
| ilg_bool | fWait = ILG_TRUE |
||
| ) |
Включает/выключает авто поиск конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | fEnable | ILG_TRUE, включает авто поиск, иначе - выключает. |
| [in] | fWait | ILG_TRUE, ждёт полного завершения команды, иначе только устанавливает флаг. |
fWait =ILG_TRUE, то функция не возвращает управление пока ждёт выполнение команды в потоке поиска конвертеров.ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_set_listen_ports | ( | ilg_handle | hSearch, |
| const uint16_t * | pPorts, | ||
| size_t | nCount | ||
| ) |
Устанавливает список портов для прослушки конвертеров к режиме "Клиент".
Устанавливает список TCP-портов, к которым будут подключаться IP-конвертеры в режиме "Клиент". Получить список можно функцией ilg_search_get_listen_ports.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | pPorts | Массив портов. Если равно nullptr, то очищает список. |
| [in] | nCount | Количество элементов массива портов. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_set_message_callback | ( | ilg_handle | hSearch, |
| ilg_search_message_callback | pCallback, | ||
| void * | pUserData = nullptr |
||
| ) |
Устанавливает функцию обратного вызова для уведомлений поиска конвертеров.
Устанавливает функцию для получения сообщений от дескриптора поиска конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | pCallback | Указатель на функцию, которую библиотека будет вызывать при возникновении события поиска конвертеров. |
| [in] | pUserData | Указатель на данные пользователя, который будет передаваться в функцию. |
ILG_E_BLOCKING_CALL_NOT_ALLOWED.ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_search_set_options | ( | ilg_handle | hSearch, |
| const ilg_search_options * | pOptions | ||
| ) |
Устанавливает параметры поиска конвертеров.
| [in] | hSearch | Дескриптор поиска конвертеров. |
| [in] | pOptions | Опции поиска конвертеров. |
ILG_OK в случае успеха или код ошибки в случае неудачи. | ILG_API ilg_status ILG_CALL ilg_set_filter_port_callback | ( | ilg_filter_port_callback | pCallback, |
| void * | pUserData = nullptr |
||
| ) |
Устанавливает функцию обратного вызова для фильтрации портов при поиске конвертеров.
| [in] | pCallback | Указатель на функцию, которую поток поиска будет вызывать при нахождении порта. |
| [in] | pUserData | Указатель на данные пользователя, который будет передаваться в функцию. |
ILG_E_BLOCKING_CALL_NOT_ALLOWED.ILG_OK в случае успеха или код ошибки в случае неудачи.