Функции и типы, связанные с инициализацией и обработкой ошибок. Подробнее...
Классы | |
struct | ilg_options |
Настройки библиотеки. Подробнее... | |
Определения типов | |
typedef void(ILG_CALL * | ilg_logging_callback) (ilg_log_level nLevel, const char *pContext, const char *pMessage, void *pUserData) |
Тип функции обратного вызова для получения сообщений лога отладки библиотеки. Подробнее... | |
Макросы версии SDK Guard. | |
#define | ILG_VERSION_MAJOR 1 |
Основной номер версии библиотеки SDK Guard. Подробнее... | |
#define | ILG_VERSION_MINOR 0 |
Минорный номер версии библиотеки SDK Guard. Подробнее... | |
#define | ILG_VERSION_PATCH 1 |
Номер патча библиотеки SDK Guard. Подробнее... | |
#define | ILG_VERSION ((ILG_VERSION_MAJOR << 24) | (ILG_VERSION_MINOR << 16) | (ILG_VERSION_PATCH << 8) | 0xC0) |
Полный номер версии библиотеки SDK Guard. | |
#define | ILG_VERSION_GET_MAJOR(v) ((v) >> 24) |
#define | ILG_VERSION_GET_MINOR(v) (((v) >> 16) & 0xff) |
#define | ILG_VERSION_GET_PATCH(v) (((v) >> 8) & 0xff) |
Функции и типы, связанные с инициализацией и обработкой ошибок.
Ссылки на инфо о инициализации и завершении библиотеки, проверке версии и обработке ошибок.
#define ILG_FAILED | ( | status | ) | ((status) != ILG_OK) |
Проверяет код возврата SDK на ошибку.
[in] | status | Код возврата. |
#define ILG_SUCCEEDED | ( | status | ) | ((status) == ILG_OK) |
Проверяет код возврата SDK на успех.
[in] | status | Код возврата. |
#define ILG_VERSION_GET_MAJOR | ( | v | ) | ((v) >> 24) |
Извлекает основной номер из полной версии.
#define ILG_VERSION_GET_MINOR | ( | v | ) | (((v) >> 16) & 0xff) |
Извлекает минорный номер из полной версии.
#define ILG_VERSION_GET_PATCH | ( | v | ) | (((v) >> 8) & 0xff) |
Извлекает номер патча из полной версии.
#define ILG_VERSION_MAJOR 1 |
Основной номер версии библиотеки SDK Guard.
Увеличивается, когда API становится не совместимым с предыдущими версиями.
#define ILG_VERSION_MINOR 0 |
Минорный номер версии библиотеки SDK Guard.
Увеличивается, когда в API добавляются новые возможности, но при этом сохраняется обратная совместимость.
#define ILG_VERSION_PATCH 1 |
Номер патча библиотеки SDK Guard.
Увеличивается, когда выпускается исправление ошибки, не содержащее никаких изменений в API.
typedef void(ILG_CALL * ilg_logging_callback) (ilg_log_level nLevel, const char *pContext, const char *pMessage, void *pUserData) |
Тип функции обратного вызова для получения сообщений лога отладки библиотеки.
Функция имеет следующий вид:
[in] | nLevel | Уровень лога. |
[in] | pContext | Контекст. |
[in] | pMessage | Текст сообщения. |
[in] | pUserData | Указатель на данные пользователя. |
enum ilg_status |
Коды ошибок.
Элементы перечислений | |
---|---|
ILG_OK | Операция успешно выполнена. |
ILG_E_FAIL | Неизвестная ошибка. |
ILG_E_PENDING | Операция выполняется асинхронно. |
ILG_E_BOUNDS | Индекс вне диапазона. |
ILG_E_NOTIMPL | Команда не поддерживается конвертером. |
ILG_E_POINTER | Неправильный указатель. |
ILG_E_ABORT | Операция прервана. |
ILG_E_HANDLE | Неправильный дескриптор. |
ILG_E_OUTOFMEMORY | Недостаточно памяти. |
ILG_E_INVALIDARG | Неправильные параметры. |
ILG_E_WRONG_SDK_VERSION | Неправильная версия Sdk Guard передана в функцию ilg_init. |
ILG_E_NOT_INITIALIZED | Библиотека не инициализирована с помощью ilg_init. |
ILG_E_BUFFER_TOO_SMALL | Размер буфера слишком мал. |
ILG_E_OUT_OF_RESOURCES | Недостаточно ресурсов для завершения операции. |
ILG_E_BLOCKING_CALL_NOT_ALLOWED | Блокирующий вызов функции из обработчика не разрешен. |
ILG_E_PORT_NOT_EXIST | Порт не существует. |
ILG_E_PORT_ACCESS_DENIED | Нет доступа к порту. |
ILG_E_PORT_OPEN_FAILED | Неизвестная ошибка открытия порта. |
ILG_E_CONNECTION_ERROR | Ошибка подключения. |
ILG_E_CONNECTION_DOWN | Связь с устройством была потеряна. |
ILG_E_REQUEST_TIMEOUT | Тайм-аут запроса к конвертеру. |
ILG_E_BAD_RESPONSE | Не распознан ответ конвертера. |
ILG_E_CONVERTER_ERROR | Неизвестная ошибка конвертера. |
ILG_E_CTR_NOT_EXIST | Контроллер не существует по указанному адресу. |
ILG_E_LICENSE_ERROR | Неизвестная ошибка лицензии. |
ILG_E_LICENSE_NOT_FOUND | Лицензия не найдена. |
ILG_E_LICENSE_EXPIRED | Лицензия просрочена. |
ILG_E_LICENSE_CONTROLLERS | Ограничение лицензии на количество контроллеров. |
ILG_E_LICENSE_READ_KEYS | Ограничение лицензии на количество считываемых ключей. |
ILG_E_LICENSE_WRITE_KEYS | Ограничение лицензии на количество записываемых ключей. |
ILG_E_NOT_SUPPORTED | Команда не поддерживается. |
ILG_E_FIRMWARE_FILESIZE | Размер файла не соответствует запросу. |
ILG_E_BOOTLOADER_NOSTART | Не удалось активировать режим прошивки. |
ILG_E_NO_COMPATIBLE | Не подходит для данной модели устройства. |
ILG_E_INVALID_DEV_NUM | Не подходит для данного номера устройства. |
ILG_E_TOOLARGE_FIRMWARE | Слишком большой размер данных. |
ILG_E_SEQUENCE_DATA | Нарушена последовательность передачи данных. |
ILG_E_DATA_INTEGRITY | Нарушена целостность данных. |
ILG_E_FIRMWARE_OTHER | Другая ошибка прошивки. |
ILG_E_RUN_FIRMWARE_FAIL | Не найдена запущенная программа контроллера. Попробуйте перезапустить устройство. |
ILG_E_FIRMWARE_IMAGE_INVALID | Неправильный образ прошивки. |
ILG_E_CTR_NACK | Контроллер отказал в выполнении команды. |
ILG_STATUS_SIZE | Размер списка |
|
inline |
Проверяет версию SDK.
Возвращает true
если версия библиотеки совместима с этим заголовочным файлом.
ILG_API ilg_status ILG_CALL ilg_cleanup | ( | ) |
Освобождает ресурсы библиотеки.
Освобождает память и закрывает все дескрипторы библиотеки.
ILG_OK
.ILG_API const char *ILG_CALL ilg_get_error_text | ( | ilg_status | nErrorCode | ) |
Возвращает описание ошибки по её коду.
[in] | nErrorCode | Код ошибки. |
ILG_API ilg_status ILG_CALL ilg_get_options | ( | ilg_options * | pOptions | ) |
Возвращает глобальные настройки библиотеки.
[out] | pOptions | Опции библиотеки. |
ILG_OK
в случае успеха или код ошибки в случае неудачи. Возвращает номер версии библиотеки.
ILG_API ilg_status ILG_CALL ilg_init | ( | uint32_t | nVersionRequested = ILG_VERSION | ) |
Инициализирует библиотеку SDK Guard.
Эта функция инициализирует библиотеку SDK Guard. Функция ilg_init должна быть вызвана первой перед вызовом других функций, кроме ilg_get_version, ilg_get_error_text, ilg_set_log_level, ilg_set_log_callback и ilg_free_memory. Завершив использование библиотеки приложение должно вызвать ilg_cleanup, чтобы библиотека освободила внутренние ресурсы. Приложение должно вызвать ilg_cleanup при каждом успешном вызове ilg_init, т.к. используется внутренний счётчик инициализаций.
[in] | nVersionRequested | Номер версии API SDK Guard, всегда должно быть равен ILG_VERSION. |
ILG_OK
в случае успеха, иначе код ошибки. `ILG_E_WRONG_SDK_VERSION` | запрошенная версия SDK не поддерживается. |
ILG_API ilg_status ILG_CALL ilg_set_log_callback | ( | ilg_logging_callback | pCallback, |
void * | pUserData = nullptr |
||
) |
Устанавливает функцию обратного вызова для лога отладки.
[in] | pCallback | Указатель на функцию, которую библиотека будет вызывать для передачи сообщений лога отладки. |
[in] | pUserData | Указатель на данные пользователя, который будет передаваться в функцию. |
ILG_E_BLOCKING_CALL_NOT_ALLOWED
.ILG_OK
. ILG_API ilg_status ILG_CALL ilg_set_log_level | ( | ilg_log_level | nLevel | ) |
Устанавливает уровень лога отладки.
[in] | nLevel | Уровень лога отладка. |
ILG_OK
. ILG_API ilg_status ILG_CALL ilg_set_options | ( | const ilg_options * | pOptions | ) |
Устанавливает глобальные настройки библиотеки.
[in] | pOptions | Опции библиотеки. |
ILG_OK
в случае успеха или код ошибки в случае неудачи.