SDK Readers 1.0.1
SDK для связи со считывателями Iron logic
Связь со считывателем.

Функции и типы, связанные с связью со считывателем. Подробнее...

Классы

struct  ilr_card_info
 Информация о карте. Подробнее...
 
struct  ilr_mf_plus_key
 Ключ аутентификации Mifare Plus. Подробнее...
 
struct  ilr_mf_block_data
 Данные блока Mifare Classic/Plus. Подробнее...
 
struct  ilr_reader_options
 Настройки считывателя. Подробнее...
 

Определения типов

typedef void(ILR_CALLilr_reader_message_callback) (ilr_reader_msg nMsg, const void *pMsgData, void *pUserData)
 Тип функции обратного вызова для получения уведомлений от дескриптора считывателя. Подробнее...
 
typedef int64_t ilr_mf_classic_key
 Ключ аутентификации Mifare Classic.
 

Перечисления

enum  ilr_reader_msg { ILR_READER_MSG_COMMAND_FINISH , ILR_READER_MSG_CONNECTION_CHANGED , ILR_READER_MSG_CARD_FOUND , ILR_READER_MSG_CARD_LOST }
 Сообщение считывателя. Подробнее...
 
enum  ilr_connection_status { ILR_CONNECTION_DISCONNECTED , ILR_CONNECTION_CONNECTED , ILR_CONNECTION_CONNECTING }
 Состояние подключения к считывателю. Подробнее...
 
enum  ilr_mf_plus_sl : int8_t {
  ILR_MF_PLUS_SL_UNKNOWN = -1 , ILR_MF_PLUS_SL_SL0 , ILR_MF_PLUS_SL_SL1 , ILR_MF_PLUS_SL_SL2 ,
  ILR_MF_PLUS_SL_SL3
}
 Уровень безопасности Mifare Plus. Подробнее...
 
enum  ilr_mf_plus_type : uint8_t {
  ILR_MF_PLUS_UNKNOWN , ILR_MF_PLUS_S , ILR_MF_PLUS_X , ILR_MF_PLUS_SE ,
  ILR_MF_PLUS_EV1 , ILR_MF_PLUS_EV2 , ILR_MF_PLUS_TYPE_SIZE
}
 Тип Mifare Plus. Подробнее...
 
enum  ilr_rwcard_type_flags : uint32_t {
  ILR_RWCT_F_TEMIC = (1 << 0) , ILR_RWCT_F_MF_ULTRALIGHT = (1 << 1) , ILR_RWCT_F_MF_CLASSIC = (1 << 2) , ILR_RWCT_F_MF_PLUS_SL0 = (1 << 3) ,
  ILR_RWCT_F_MF_PLUS_SL3 = (1 << 4) , ILR_RWCT_F_MF_PLUS = (1 << 5)
}
 Флаги типов перезаписываемых карт. Подробнее...
 

Функции

struct __attribute__ ((packed))
 ID карты Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_get_reader (ilr_port_type nPortType, const char *pszPortName, ilr_handle *pReader)
 Создаёт дескриптор считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_set_message_callback (ilr_handle hReader, ilr_reader_message_callback pCallback, void *pUserData=nullptr)
 Устанавливает функцию обратного вызова для уведомлений считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_enable_message_queue (ilr_handle hReader, ilr_bool fEnable=ILR_TRUE)
 Включает/выключает очередь сообщений. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_get_message (ilr_handle hReader, ilr_reader_msg *pMsg, const void **pMsgData, ilr_bool *pFound)
 Извлекает следующее сообщение из очереди. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_set_options (ilr_handle hReader, const ilr_reader_options *pOptions)
 Устанавливает параметры считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_get_options (ilr_handle hReader, ilr_reader_options *pOptions)
 Возвращает параметры считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_connect (ilr_handle hReader, ilr_bool fReconnect=ILR_FALSE)
 Подключается к считывателю. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_connect (ilr_handle hReader, ilr_bool fReconnect, ilr_handle *pCommand)
 Запускает асинхронную команду подключения к считывателю. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_disconnect (ilr_handle hReader)
 Отключается от считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_disconnect (ilr_handle hReader, ilr_handle *pCommand)
 Запускает асинхронную команду отключения от считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_get_connection_status (ilr_handle hReader, ilr_connection_status *pStatus)
 Возвращает состояние подключения к считывателю. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_get_info (ilr_handle hReader, ilr_reader_info *pInfo)
 Возвращает информацию о считывателе. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_scan (ilr_handle hReader, ilr_bool fReset=ILR_FALSE, ilr_bool fPowerOff=ILR_TRUE)
 Ищет карту в поле считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_scan (ilr_handle hReader, ilr_bool fReset, ilr_bool fPowerOff, ilr_handle *pCommand)
 Запускает асинхронную команду поиска карты. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_get_card_info (ilr_handle hReader, ilr_card_info *pInfo)
 Возвращает информацию о карте в поле считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_set_auto_scan (ilr_handle hReader, ilr_bool fEnable=ILR_TRUE, ilr_bool fWait=ILR_TRUE)
 Включает/выключает автоматическое сканирование карт. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_set_auto_scan (ilr_handle hReader, ilr_bool fEnable, ilr_handle *pCommand)
 Запускает асинхронную команду вкл/выкл автоматического сканирования карт. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_get_auto_scan (ilr_handle hReader, ilr_bool *pEnabled)
 Возвращает флаг автоматическое сканирование карт. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_read_mf_ultralight (ilr_handle hReader, size_t nPageIdx, uint32_t *pBuf, size_t nPageCount, size_t *pRead=nullptr)
 Читает данные карты Mifare Ultralight. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_read_mf_ultralight (ilr_handle hReader, size_t nPageIdx, size_t nPageCount, ilr_handle *pCommand)
 Запускает асинхронную команду чтения данных из карты Mifare Ultralight. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_read_mf_ultralight (ilr_handle hCommand, const uint32_t **ppList, size_t *pRead)
 Возвращает результат чтения данных из карты Mifare Ultralight. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_write_mf_ultralight (ilr_handle hReader, size_t nPageIdx, const uint32_t *pData, size_t nPageCount, size_t *pWritten=nullptr)
 Пишет данные карты Mifare Ultralight. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_ultralight (ilr_handle hReader, size_t nPageIdx, const uint32_t *pData, size_t nPageCount, ilr_handle *pCommand)
 Запускает асинхронную команду записи данных в карту Mifare Ultralight. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_ultralight (ilr_handle hCommand, size_t *pWritten)
 Возвращает результат записи данных в карту Mifare Ultralight. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_load_mf_ckey (ilr_handle hReader, const ilr_mf_classic_key &nKey)
 Загружает ключ для авторизации сектора Mifare Classic / Plus SL1. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_load_mf_pkey (ilr_handle hReader, const ilr_mf_plus_key &rKey)
 Загружает ключ для авторизации сектора Mifare Plus SL3. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_auth_mf_card (ilr_handle hReader, size_t nAddress, ilr_bool fKeyB, ilr_bool *pAuthOk)
 Авторизует сектор карты Mifare Classic/Plus. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_auth_mf_card (ilr_handle hReader, size_t nAddress, ilr_bool fKeyB, ilr_handle *pCommand)
 Запускает асинхронную команду авторизации сектора карты Mifare Classic / Plus используя ключ, загруженный функцией ilr_reader_load_mf_ckey / ilr_reader_load_mf_pkey. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_auth_mf_card (ilr_handle hCommand, ilr_bool *pAuthOk)
 Возвращает результат авторизации сектора карты. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_auth_mf_card2 (ilr_handle hReader, size_t nAddress, ilr_bool fKeyB, uint32_t nKeys=0xFFFF, int *pFoundIdx=nullptr)
 Авторизует сектор карты Mifare Classic / Plus, используя ключи считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_auth_mf_card2 (ilr_handle hReader, size_t nAddress, ilr_bool fKeyB, uint32_t nKeys, ilr_handle *pCommand)
 Запускает асинхронную команду авторизации сектора карты Mifare Classic / Plus. используя ключи в памяти считывателя Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_auth_mf_card2 (ilr_handle hCommand, int *pFoundIdx)
 Возвращает результат авторизации сектора карты. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_read_mf_classic (ilr_handle hReader, size_t nBlockIdx, ilr_mf_block_data *pBuf, size_t nBlockCount, size_t *pRead=nullptr)
 Читает данные карты Mifare Classic или Mifare Plus SL1. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_read_mf_classic (ilr_handle hReader, size_t nBlockIdx, size_t nBlockCount, ilr_handle *pCommand)
 Запускает асинхронную команду чтения данных из карты Mifare Classic или Mifare Plus SL1. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_read_mf_classic (ilr_handle hCommand, const ilr_mf_block_data **ppList, size_t *pRead)
 Возвращает результат чтения данных из карты Mifare Classic или Mifare Plus SL1. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_write_mf_classic (ilr_handle hReader, size_t nBlockIdx, const ilr_mf_block_data *pData, size_t nBlockCount, size_t *pWritten=nullptr)
 Пишет данные карты Mifare Classic или Mifare Plus SL1. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_classic (ilr_handle hReader, size_t nBlockIdx, const ilr_mf_block_data *pData, size_t nBlockCount, ilr_handle *pCommand)
 Запускает асинхронную команду записи данных в карту Mifare Classic или Mifare Plus SL1. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_classic (ilr_handle hCommand, size_t *pWritten)
 Возвращает результат записи данных в карту Mifare Classic или Mifare Plus SL1. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_read_mf_plus (ilr_handle hReader, size_t nAddress, ilr_mf_block_data *pBuf, size_t nBlockCount, ilr_bool fOpenText=ILR_TRUE, size_t *pRead=nullptr)
 Читает данные карты Mifare Plus SL3. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_read_mf_plus (ilr_handle hReader, size_t nAddress, size_t nBlockCount, ilr_bool fOpenText, ilr_handle *pCommand)
 Запускает асинхронную команду чтения данных из карты Mifare Plus SL3. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_read_mf_plus (ilr_handle hCommand, const ilr_mf_block_data **ppList, size_t *pRead)
 Возвращает результат чтения данных из карты Mifare Plus SL3. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_write_mf_plus (ilr_handle hReader, size_t nAddress, const ilr_mf_block_data *pData, size_t nBlockCount, ilr_bool fOpenText=ILR_TRUE, size_t *pWritten=nullptr)
 Пишет данные карты Mifare Plus SL3. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_plus (ilr_handle hReader, size_t nAddress, const ilr_mf_block_data *pData, size_t nBlockCount, ilr_bool fOpenText, ilr_handle *pCommand)
 Запускает асинхронную команду записи данных в карту Mifare Plus SL3. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_plus (ilr_handle hCommand, size_t *pWritten)
 Возвращает результат записи данных в карту Mifare Plus SL3. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_increment (ilr_handle hReader, size_t nBlockIdx, uint32_t nValue)
 Увеличивает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_increment (ilr_handle hReader, size_t nBlockIdx, uint32_t nValue, ilr_handle *pCommand)
 Увеличивает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_decrement (ilr_handle hReader, size_t nBlockIdx, uint32_t nValue)
 Уменьшает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_decrement (ilr_handle hReader, size_t nBlockIdx, uint32_t nValue, ilr_handle *pCommand)
 Уменьшает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_transfer (ilr_handle hReader, size_t nBlockIdx)
 Записывает содержимое во временном регистре данных в блок-значение. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_transfer (ilr_handle hReader, size_t nBlockIdx, ilr_handle *pCommand)
 Записывает содержимое во временном регистре данных в блок-значение. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_restore (ilr_handle hReader, size_t nBlockIdx)
 Перемещает содержимое блока в регистр данных Mifare. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_restore (ilr_handle hReader, size_t nBlockIdx, ilr_handle *pCommand)
 Перемещает содержимое блока в регистр данных Mifare. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_power_off (ilr_handle hReader)
 Выключает RF поле считывателя (после выключения нужно подождать 10 мс). Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_ras (ilr_handle hReader, ilr_bool fWakeUp, uint8_t *pSAK, uint16_t *pATQ, ilr_card_uid *pUID, ilr_bool *pFound)
 R+A+S(Request+Anticollision+Select) Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_rr (ilr_handle hReader, ilr_bool fWakeUp, const ilr_card_uid &rUID, ilr_bool *pFound)
 R+R(Request+Reselect(по известному номеру)). Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_halt (ilr_handle hReader)
 Halt. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_rats (ilr_handle hReader, uint8_t *pAtsBuf=nullptr, size_t *pSize=nullptr)
 Переходит на ISO 14443-4. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_write_perso (ilr_handle hReader, uint32_t nAddress, const ilr_mf_plus_key &rKey)
 Записывает ключи AES и всех блоков. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_mf_commit_perso (ilr_handle hReader)
 Переключает Mifare Plus в SL1 или SL3(если SL1 нет). Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_write_mf_ckey (ilr_handle hReader, size_t nIdx, ilr_bool fKeyB, const ilr_mf_classic_key *pKeys, size_t nCount, size_t *pWritten=nullptr)
 Записывает ключи аутентификации Mifare Classic в память считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_ckey (ilr_handle hReader, size_t nIdx, ilr_bool fKeyB, const ilr_mf_classic_key *pKeys, size_t nCount, ilr_handle *pCommand)
 Запускает асинхронную команду записи ключей аутентификации Mifare Classic в память считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_ckey (ilr_handle hCommand, size_t *pWritten)
 Возвращает результат записи ключей аутентификации Mifare Classic в память считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_write_mf_pkey (ilr_handle hReader, size_t nIdx, ilr_bool fKeyB, const ilr_mf_plus_key *pKeys, size_t nCount, size_t *pWritten=nullptr)
 Записывает ключи аутентификации Mifare Plus в память считывателя Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_pkey (ilr_handle hReader, size_t nIdx, ilr_bool fKeyB, const ilr_mf_plus_key *pKeys, size_t nCount, ilr_handle *pCommand)
 Запускает асинхронную команду записи ключей аутентификации Mifare Plus в память считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_pkey (ilr_handle hCommand, size_t *pWritten)
 Возвращает результат записи ключей аутентификации Mifare Plus в память считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_load_temic_password (ilr_handle hReader, const int64_t &nPassword)
 Загружает пароль Temic в память объекта считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_scan_temic (ilr_handle hReader, int nScanParam=-1)
 Ищет карту Temic в поле считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_scan_temic (ilr_handle hReader, int nScanParam, ilr_handle *pCommand)
 Запускает асинхронную команду поиска карты Temic в поле считывателя. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_set_scan_temic (ilr_handle hReader, ilr_bool fEnable=ILR_TRUE)
 Вкл/выкл сканирование карт Temic (для Z-2 Rd-All и Z-2 EHR). Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_get_scan_temic (ilr_handle hReader, ilr_bool *pEnable)
 Возвращает True если сканирование Temic включено. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_read_temic (ilr_handle hReader, size_t nBlockIdx, uint32_t *pBuf, size_t nBlockCount, int nScanParam=-1, size_t *pRead=nullptr)
 Читает данные карты Temic. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_read_temic (ilr_handle hReader, size_t nBlockIdx, size_t nBlockCount, int nScanParam, ilr_handle *pCommand)
 Запускает асинхронную команду чтения данных из карты Temic. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_read_temic (ilr_handle hCommand, const uint **ppList, size_t *pRead)
 Возвращает результат чтения данных из карты Temic. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_write_temic (ilr_handle hReader, size_t nBlockIdx, const uint32_t *pData, size_t nBlockCount, ilr_bool fLock=ILR_FALSE, int nScanParam=-1, size_t *pWritten=nullptr)
 Пишет данные карты Temic. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_write_temic (ilr_handle hReader, size_t nBlockIdx, const uint32_t *pData, size_t nBlockCount, ilr_bool fLock, int nScanParam, ilr_handle *pCommand)
 Запускает асинхронную команду записи данных в карту Temic. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_end_write_temic (ilr_handle hCommand, size_t *pWritten)
 Возвращает результат записи данных в карту Temic. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_reset_temic (ilr_handle hReader, ilr_bool fWait=ILR_TRUE)
 Сброс TRES. Подробнее...
 
ILR_API ilr_status ILR_CALL ilr_reader_begin_reset_temic (ilr_handle hReader, ilr_handle *pCommand)
 Запускает асинхронную команду сброса TRES. Подробнее...
 

Подробное описание

Функции и типы, связанные с связью со считывателем.

Ссылки на инфо о создании дескриптора считывателя, настройке параметров связи со считывателем, подключение к считывателю, сканирование карт, чтение/запись данных карты.

Типы

◆ ilr_reader_message_callback

typedef void(ILR_CALL * ilr_reader_message_callback) (ilr_reader_msg nMsg, const void *pMsgData, void *pUserData)

Тип функции обратного вызова для получения уведомлений от дескриптора считывателя.

Аргументы
[in]nMsgТип сообщения.
[in]pMsgDataУказатель на данные сообщения. Тип данных зависит от типа сообщения.
[in]pUserDataУказатель на данные пользователя.
Предупреждения
Указатель pMsgData действителен до выхода из этой функции.

Перечисления

◆ ilr_connection_status

Состояние подключения к считывателю.

Элементы перечислений
ILR_CONNECTION_CONNECTED 

Подключён.

ILR_CONNECTION_CONNECTING 

Подключение.

◆ ilr_mf_plus_sl

enum ilr_mf_plus_sl : int8_t

Уровень безопасности Mifare Plus.

Элементы перечислений
ILR_MF_PLUS_SL_UNKNOWN 

Не известно.

ILR_MF_PLUS_SL_SL0 

Уровень 0 (не инициализирована).

ILR_MF_PLUS_SL_SL1 

Уровень 1 (эмуляция Mifare Classic).

ILR_MF_PLUS_SL_SL2 

Уровень 2.

ILR_MF_PLUS_SL_SL3 

Уровень 3.

◆ ilr_mf_plus_type

enum ilr_mf_plus_type : uint8_t

Тип Mifare Plus.

Элементы перечислений
ILR_MF_PLUS_UNKNOWN 

Не известно.

ILR_MF_PLUS_S 

Mifare Plus S.

ILR_MF_PLUS_X 

Mifare Plus X.

ILR_MF_PLUS_SE 

MIFARE Plus SE.

ILR_MF_PLUS_EV1 

MIFARE Plus EV1.

ILR_MF_PLUS_EV2 

MIFARE Plus EV2.

ILR_MF_PLUS_TYPE_SIZE 

Размер списка.

◆ ilr_reader_msg

Сообщение считывателя.

Элементы перечислений
ILR_READER_MSG_COMMAND_FINISH 

Завершилась асинхронная команда, созданная функцией с префиксом "ilr_reader_begin_". Параметр - дескриптор команды (дескриптор действителен до следующего сообщения этого типа или до следующего вызова GetMessage), его не нужно закрывать функцией ilr_close_handle.

ILR_READER_MSG_CONNECTION_CHANGED 

Изменилось состояние подключения к считывателю. Узнать текущее состояние можно функцией ilr_reader_get_connection_status.

ILR_READER_MSG_CARD_FOUND 

Карта найдена, параметр ilr_card_info*.

ILR_READER_MSG_CARD_LOST 

Карта потеряна, параметр ilr_card_info*.

◆ ilr_rwcard_type_flags

enum ilr_rwcard_type_flags : uint32_t

Флаги типов перезаписываемых карт.

Прим.
Для авто приостановки сканирования при обнаружении карты.
Элементы перечислений
ILR_RWCT_F_TEMIC 

Temic.

ILR_RWCT_F_MF_ULTRALIGHT 

Mifare Ultralight.

ILR_RWCT_F_MF_CLASSIC 

Mifare Classic или Plus SL1.

ILR_RWCT_F_MF_PLUS_SL0 

Mifare Plus SL0.

ILR_RWCT_F_MF_PLUS_SL3 

Mifare Plus SL3.

ILR_RWCT_F_MF_PLUS 

Другие Mifare Plus.

Примеры
auto_read_card/main.cpp.

Функции

◆ __attribute__()

struct __attribute__ ( (packed)  )

ID карты

< Длина номера в байтах.

< Байты номера.

◆ ilr_get_reader()

ILR_API ilr_status ILR_CALL ilr_get_reader ( ilr_port_type  nPortType,
const char *  pszPortName,
ilr_handle pReader 
)

Создаёт дескриптор считывателя.

Аргументы
[in]nPortTypeТип порта.
[in]pszPortNameИмя порта.
[out]pReaderДескриптор считывателя.
Прим.
Эта функция создаёт поток считывателя, если ещё не создан (один поток на порт). Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя. Функция позволяет создать более одного дескриптора для одного порта.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_auth_mf_card()

ILR_API ilr_status ILR_CALL ilr_reader_auth_mf_card ( ilr_handle  hReader,
size_t  nAddress,
ilr_bool  fKeyB,
ilr_bool pAuthOk 
)

Авторизует сектор карты Mifare Classic/Plus.

Авторизует сектор карты Mifare Classic/Plus, используя ключ, загруженный функцией ilr_reader_load_mf_ckey / ilr_reader_load_mf_pkey.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер блока (0..255) или адрес Mifare Plus.
[in]fKeyBILR_TRUE, авторизовать по ключу Б, иначе - по ключу А.
[out]pAuthOkILR_TRUE, сектор успешно авторизован.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_auth_mf_card2()

ILR_API ilr_status ILR_CALL ilr_reader_auth_mf_card2 ( ilr_handle  hReader,
size_t  nAddress,
ilr_bool  fKeyB,
uint32_t  nKeys = 0xFFFF,
int *  pFoundIdx = nullptr 
)

Авторизует сектор карты Mifare Classic / Plus, используя ключи считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер блока (0..255) или адрес Mifare Plus.
[in]fKeyBILR_TRUE, авторизовать по ключу Б, иначе - по ключу А.
[in]nKeysБиты (0..15) ключей в памяти считывателя.
[out]pFoundIdxПозиция найденного ключа в памяти считывателя. Если -1, ключ не найден.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_auth_mf_card()

ILR_API ilr_status ILR_CALL ilr_reader_begin_auth_mf_card ( ilr_handle  hReader,
size_t  nAddress,
ilr_bool  fKeyB,
ilr_handle pCommand 
)

Запускает асинхронную команду авторизации сектора карты Mifare Classic / Plus используя ключ, загруженный функцией ilr_reader_load_mf_ckey / ilr_reader_load_mf_pkey.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер блока или адрес Mifare Plus.
[in]fKeyBILR_TRUE, авторизовать по ключу Б, иначе А.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_auth_mf_card2()

ILR_API ilr_status ILR_CALL ilr_reader_begin_auth_mf_card2 ( ilr_handle  hReader,
size_t  nAddress,
ilr_bool  fKeyB,
uint32_t  nKeys,
ilr_handle pCommand 
)

Запускает асинхронную команду авторизации сектора карты Mifare Classic / Plus. используя ключи в памяти считывателя

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер блока или адрес Mifare Plus,
[in]fKeyBILR_TRUE, авторизовать по ключу Б, иначе А.
[in]nKeysБиты номеров ключей в памяти считывателя.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_connect()

ILR_API ilr_status ILR_CALL ilr_reader_begin_connect ( ilr_handle  hReader,
ilr_bool  fReconnect,
ilr_handle pCommand 
)

Запускает асинхронную команду подключения к считывателю.

Аргументы
[in]hReaderДескриптор считывателя.
[in]fReconnectILR_TRUE переподключиться.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_disconnect()

ILR_API ilr_status ILR_CALL ilr_reader_begin_disconnect ( ilr_handle  hReader,
ilr_handle pCommand 
)

Запускает асинхронную команду отключения от считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_mf_decrement()

ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_decrement ( ilr_handle  hReader,
size_t  nBlockIdx,
uint32_t  nValue,
ilr_handle pCommand 
)

Уменьшает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока Mifare Classic/Plus.
[in]nValueВеличина инкремента.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_mf_increment()

ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_increment ( ilr_handle  hReader,
size_t  nBlockIdx,
uint32_t  nValue,
ilr_handle pCommand 
)

Увеличивает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока Mifare Classic/Plus.
[in]nValueВеличина инкремента.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_mf_restore()

ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_restore ( ilr_handle  hReader,
size_t  nBlockIdx,
ilr_handle pCommand 
)

Перемещает содержимое блока в регистр данных Mifare.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока Mifare Classic/Plus.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_mf_transfer()

ILR_API ilr_status ILR_CALL ilr_reader_begin_mf_transfer ( ilr_handle  hReader,
size_t  nBlockIdx,
ilr_handle pCommand 
)

Записывает содержимое во временном регистре данных в блок-значение.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока Mifare Classic/Plus.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_read_mf_classic()

ILR_API ilr_status ILR_CALL ilr_reader_begin_read_mf_classic ( ilr_handle  hReader,
size_t  nBlockIdx,
size_t  nBlockCount,
ilr_handle pCommand 
)

Запускает асинхронную команду чтения данных из карты Mifare Classic или Mifare Plus SL1.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока Mifare Classic.
[in]nBlockCountКоличество блоков.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_read_mf_plus()

ILR_API ilr_status ILR_CALL ilr_reader_begin_read_mf_plus ( ilr_handle  hReader,
size_t  nAddress,
size_t  nBlockCount,
ilr_bool  fOpenText,
ilr_handle pCommand 
)

Запускает асинхронную команду чтения данных из карты Mifare Plus SL3.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер блока карты Mifare.
[in]nBlockCountКоличество блоков, которые нужно прочитать.
[in]fOpenTextILR_TRUE, открытая передача, иначе зашифрованная.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_read_mf_ultralight()

ILR_API ilr_status ILR_CALL ilr_reader_begin_read_mf_ultralight ( ilr_handle  hReader,
size_t  nPageIdx,
size_t  nPageCount,
ilr_handle pCommand 
)

Запускает асинхронную команду чтения данных из карты Mifare Ultralight.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nPageIdxНомер первой читаемой страницы (начиная от 0).
[in]nPageCountКоличество читаемых страниц.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_read_temic()

ILR_API ilr_status ILR_CALL ilr_reader_begin_read_temic ( ilr_handle  hReader,
size_t  nBlockIdx,
size_t  nBlockCount,
int  nScanParam,
ilr_handle pCommand 
)

Запускает асинхронную команду чтения данных из карты Temic.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока карты.
[in]nBlockCountКоличество блоков.
[in]nScanParamПараметр сканирования Temic. Если -1, авто определение.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_reset_temic()

ILR_API ilr_status ILR_CALL ilr_reader_begin_reset_temic ( ilr_handle  hReader,
ilr_handle pCommand 
)

Запускает асинхронную команду сброса TRES.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_scan()

ILR_API ilr_status ILR_CALL ilr_reader_begin_scan ( ilr_handle  hReader,
ilr_bool  fReset,
ilr_bool  fPowerOff,
ilr_handle pCommand 
)

Запускает асинхронную команду поиска карты.

Аргументы
[in]hReaderДескриптор считывателя.
[in]fResetILR_TRUE, сбросить старые результаты поиска.
[in]fPowerOffILR_TRUE, выключает RF поле после сканирования.
[out]pCommandДескриптор команды.
Возвращает
ILR_OKв случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_scan_temic()

ILR_API ilr_status ILR_CALL ilr_reader_begin_scan_temic ( ilr_handle  hReader,
int  nScanParam,
ilr_handle pCommand 
)

Запускает асинхронную команду поиска карты Temic в поле считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nScanParamПараметры сканирования Temic. Если -1, авто определение.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_set_auto_scan()

ILR_API ilr_status ILR_CALL ilr_reader_begin_set_auto_scan ( ilr_handle  hReader,
ilr_bool  fEnable,
ilr_handle pCommand 
)

Запускает асинхронную команду вкл/выкл автоматического сканирования карт.

Аргументы
[in]hReaderДескриптор считывателя.
[in]fEnableILR_TRUE, включает авто сканирование, иначе - выключает.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_write_mf_ckey()

ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_ckey ( ilr_handle  hReader,
size_t  nIdx,
ilr_bool  fKeyB,
const ilr_mf_classic_key pKeys,
size_t  nCount,
ilr_handle pCommand 
)

Запускает асинхронную команду записи ключей аутентификации Mifare Classic в память считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nIdxПозиция первого ключа в памяти считывателя.
[in]fKeyBILR_TRUE, ключ B, иначе ключ A.
[in]pKeysСписок ключей аутентификации.
[in]nCountКоличество ключей аутентификации.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_write_mf_classic()

ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_classic ( ilr_handle  hReader,
size_t  nBlockIdx,
const ilr_mf_block_data pData,
size_t  nBlockCount,
ilr_handle pCommand 
)

Запускает асинхронную команду записи данных в карту Mifare Classic или Mifare Plus SL1.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока Mifare Classic.
[in]pDataДанные блоков для записи.
[in]nBlockCountКоличество записываемых блоков.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_write_mf_pkey()

ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_pkey ( ilr_handle  hReader,
size_t  nIdx,
ilr_bool  fKeyB,
const ilr_mf_plus_key pKeys,
size_t  nCount,
ilr_handle pCommand 
)

Запускает асинхронную команду записи ключей аутентификации Mifare Plus в память считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nIdxПозиция первого ключа в памяти считывателя.
[in]fKeyBILR_TRUE, ключ B, иначе ключ A.
[in]pKeysСписок ключей аутентификации.
[in]nCountКоличество ключей аутентификации.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_write_mf_plus()

ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_plus ( ilr_handle  hReader,
size_t  nAddress,
const ilr_mf_block_data pData,
size_t  nBlockCount,
ilr_bool  fOpenText,
ilr_handle pCommand 
)

Запускает асинхронную команду записи данных в карту Mifare Plus SL3.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер блока или адрес Mifare Plus.
[in]pDataДанные блоков для записи.
[in]nBlockCountКоличество блоков.
[in]fOpenTextILR_TRUE, открытая передача, иначе зашифрованная.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_write_mf_ultralight()

ILR_API ilr_status ILR_CALL ilr_reader_begin_write_mf_ultralight ( ilr_handle  hReader,
size_t  nPageIdx,
const uint32_t *  pData,
size_t  nPageCount,
ilr_handle pCommand 
)

Запускает асинхронную команду записи данных в карту Mifare Ultralight.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nPageIdxНомер первой записываемой страницы (начиная от 0).
[in]pDataДанные страниц.
[in]nPageCountКоличество записываемых страниц.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_begin_write_temic()

ILR_API ilr_status ILR_CALL ilr_reader_begin_write_temic ( ilr_handle  hReader,
size_t  nBlockIdx,
const uint32_t *  pData,
size_t  nBlockCount,
ilr_bool  fLock,
int  nScanParam,
ilr_handle pCommand 
)

Запускает асинхронную команду записи данных в карту Temic.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока карты.
[in]pDataДанные для записи.
[in]nBlockCountКоличество блоков.
[in]fLockILR_TRUE, блокировать от перезаписи.
[in]nScanParamПараметр сканирования Temic. Если -1, авто определение.
[out]pCommandДескриптор команды.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_connect()

ILR_API ilr_status ILR_CALL ilr_reader_connect ( ilr_handle  hReader,
ilr_bool  fReconnect = ILR_FALSE 
)

Подключается к считывателю.

Аргументы
[in]hReaderДескриптор считывателя.
[in]fReconnectILR_TRUE Отключается перед подключением.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_disconnect()

ILR_API ilr_status ILR_CALL ilr_reader_disconnect ( ilr_handle  hReader)

Отключается от считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_enable_message_queue()

ILR_API ilr_status ILR_CALL ilr_reader_enable_message_queue ( ilr_handle  hReader,
ilr_bool  fEnable = ILR_TRUE 
)

Включает/выключает очередь сообщений.

Эта функция устанавливает/снимает флаг в дескрипторе считывателя. Очередь сообщений предназначена для синхронизации обработки сообщений.

Прим.
Алгоритм синхронизации: при возникновении события в очередь добавляется сообщение и вызывается функция обратного вызова, установленная функцией ilr_reader_set_message_callback, из которой посылается сигнал потоку, обрабатывающему сообщения, этот поток при получении сигнала циклично вызывает ilr_reader_get_message, чтобы получить и обработать все сообщения.
Аргументы
[in]hReaderДескриптор считывателя.
[in]fEnableILR_TRUE, включает очередь, иначе - выключает.
Предупреждения
Если не извлекать сообщения из очереди функцией ilr_reader_get_message, то она будет расти пока не закончится память.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_auth_mf_card()

ILR_API ilr_status ILR_CALL ilr_reader_end_auth_mf_card ( ilr_handle  hCommand,
ilr_bool pAuthOk 
)

Возвращает результат авторизации сектора карты.

Аргументы
[in]hCommandДескриптор команды.
[out]pAuthOkILR_TRUE, авторизация прошла успешно.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_auth_mf_card2()

ILR_API ilr_status ILR_CALL ilr_reader_end_auth_mf_card2 ( ilr_handle  hCommand,
int *  pFoundIdx 
)

Возвращает результат авторизации сектора карты.

Аргументы
[in]hCommandДескриптор команды.
[out]pFoundIdxПозиция найденного ключа в памяти считывателя. Если -1, ключ не найден.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_read_mf_classic()

ILR_API ilr_status ILR_CALL ilr_reader_end_read_mf_classic ( ilr_handle  hCommand,
const ilr_mf_block_data **  ppList,
size_t *  pRead 
)

Возвращает результат чтения данных из карты Mifare Classic или Mifare Plus SL1.

Аргументы
[in]hCommandДескриптор команды.
[out]ppListСсылка на список прочитанных блоков. Ссылка действительна до закрытия дескриптора команды hCommand.
[out]pReadКоличество прочитанных блоков.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_read_mf_plus()

ILR_API ilr_status ILR_CALL ilr_reader_end_read_mf_plus ( ilr_handle  hCommand,
const ilr_mf_block_data **  ppList,
size_t *  pRead 
)

Возвращает результат чтения данных из карты Mifare Plus SL3.

Аргументы
[in]hCommandДескриптор команды.
[out]ppListСсылка на список прочитанных блоков. Ссылка действительна до закрытия дескриптора команды hCommand.
[out]pReadКоличество прочитанных блоков. Может быть равно nullptr.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_read_mf_ultralight()

ILR_API ilr_status ILR_CALL ilr_reader_end_read_mf_ultralight ( ilr_handle  hCommand,
const uint32_t **  ppList,
size_t *  pRead 
)

Возвращает результат чтения данных из карты Mifare Ultralight.

Аргументы
[in]hCommandДескриптор команды.
[out]ppListСсылка на список прочитанных страниц. Ссылка действительна до закрытия дескриптора команды hCommand.
[out]pReadКоличество прочитанных страниц.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_read_temic()

ILR_API ilr_status ILR_CALL ilr_reader_end_read_temic ( ilr_handle  hCommand,
const uint **  ppList,
size_t *  pRead 
)

Возвращает результат чтения данных из карты Temic.

Аргументы
[in]hCommandДескриптор команды.
[out]ppListСсылка на список прочитанных блоков. Ссылка действительна до закрытия дескриптора команды hCommand.
[out]pReadКоличество прочитанных блоков.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_write_mf_ckey()

ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_ckey ( ilr_handle  hCommand,
size_t *  pWritten 
)

Возвращает результат записи ключей аутентификации Mifare Classic в память считывателя.

Аргументы
[in]hCommandДескриптор команды.
[out]pWrittenКоличество записанных ключей.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_write_mf_classic()

ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_classic ( ilr_handle  hCommand,
size_t *  pWritten 
)

Возвращает результат записи данных в карту Mifare Classic или Mifare Plus SL1.

Аргументы
[in]hCommandДескриптор команды.
[out]pWrittenКоличество записанных блоков.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_write_mf_pkey()

ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_pkey ( ilr_handle  hCommand,
size_t *  pWritten 
)

Возвращает результат записи ключей аутентификации Mifare Plus в память считывателя.

Аргументы
[in]hCommandДескриптор команды.
[out]pWrittenКоличество записанных ключей.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_write_mf_plus()

ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_plus ( ilr_handle  hCommand,
size_t *  pWritten 
)

Возвращает результат записи данных в карту Mifare Plus SL3.

Аргументы
[in]hCommandДескриптор команды.
[out]pWrittenКоличество записанных блоков.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_write_mf_ultralight()

ILR_API ilr_status ILR_CALL ilr_reader_end_write_mf_ultralight ( ilr_handle  hCommand,
size_t *  pWritten 
)

Возвращает результат записи данных в карту Mifare Ultralight.

Аргументы
[in]hCommandДескриптор команды.
[out]pWrittenКоличество прочитанных страниц.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_end_write_temic()

ILR_API ilr_status ILR_CALL ilr_reader_end_write_temic ( ilr_handle  hCommand,
size_t *  pWritten 
)

Возвращает результат записи данных в карту Temic.

Аргументы
[in]hCommandДескриптор команды.
[out]pWrittenКоличество записанных блоков.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_get_auto_scan()

ILR_API ilr_status ILR_CALL ilr_reader_get_auto_scan ( ilr_handle  hReader,
ilr_bool pEnabled 
)

Возвращает флаг автоматическое сканирование карт.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pEnabledILR_TRUE, если авто сканирование включено.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_get_card_info()

ILR_API ilr_status ILR_CALL ilr_reader_get_card_info ( ilr_handle  hReader,
ilr_card_info pInfo 
)

Возвращает информацию о карте в поле считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pInfoИнформация о карте. Если pInfo.rUID.nLength = 0, то нет карты.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_get_connection_status()

ILR_API ilr_status ILR_CALL ilr_reader_get_connection_status ( ilr_handle  hReader,
ilr_connection_status pStatus 
)

Возвращает состояние подключения к считывателю.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pStatusСостояние подключения к считывателю.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_get_info()

ILR_API ilr_status ILR_CALL ilr_reader_get_info ( ilr_handle  hReader,
ilr_reader_info pInfo 
)

Возвращает информацию о считывателе.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pInfoИнформация о считывателе.
Предупреждения
В pInfo ссылки pszPortName и pszConnect действительны пока жив дескриптор hReader.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_get_message()

ILR_API ilr_status ILR_CALL ilr_reader_get_message ( ilr_handle  hReader,
ilr_reader_msg pMsg,
const void **  pMsgData,
ilr_bool pFound 
)

Извлекает следующее сообщение из очереди.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pMsgТип сообщения.
[out]pMsgDataУказатель на данные пользователя, которые были установлены функцией ilr_reader_set_message_callback.
[out]pFoundILR_TRUE если сообщение успешно извлечено, иначе - очередь пуста.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_get_options()

ILR_API ilr_status ILR_CALL ilr_reader_get_options ( ilr_handle  hReader,
ilr_reader_options pOptions 
)

Возвращает параметры считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]pOptionsПараметры считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_get_scan_temic()

ILR_API ilr_status ILR_CALL ilr_reader_get_scan_temic ( ilr_handle  hReader,
ilr_bool pEnable 
)

Возвращает True если сканирование Temic включено.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pEnableILR_TRUE, если сканирование Temic включено.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_load_mf_ckey()

ILR_API ilr_status ILR_CALL ilr_reader_load_mf_ckey ( ilr_handle  hReader,
const ilr_mf_classic_key nKey 
)

Загружает ключ для авторизации сектора Mifare Classic / Plus SL1.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nKeyКлюч аутентификации Mifare Classic.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_load_mf_pkey()

ILR_API ilr_status ILR_CALL ilr_reader_load_mf_pkey ( ilr_handle  hReader,
const ilr_mf_plus_key rKey 
)

Загружает ключ для авторизации сектора Mifare Plus SL3.

Аргументы
[in]hReaderДескриптор считывателя.
[in]rKeyКлюч аутентификации Mifare Plus.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_load_temic_password()

ILR_API ilr_status ILR_CALL ilr_reader_load_temic_password ( ilr_handle  hReader,
const int64_t &  nPassword 
)

Загружает пароль Temic в память объекта считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nPasswordПароль Temic. Если равно -1, то нет пароля.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_commit_perso()

ILR_API ilr_status ILR_CALL ilr_reader_mf_commit_perso ( ilr_handle  hReader)

Переключает Mifare Plus в SL1 или SL3(если SL1 нет).

Аргументы
[in]hReaderДескриптор считывателя.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_decrement()

ILR_API ilr_status ILR_CALL ilr_reader_mf_decrement ( ilr_handle  hReader,
size_t  nBlockIdx,
uint32_t  nValue 
)

Уменьшает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока (0..255).
[in]nValueВеличина декремента.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_halt()

ILR_API ilr_status ILR_CALL ilr_reader_mf_halt ( ilr_handle  hReader)

Halt.

Аргументы
[in]hReaderДескриптор считывателя.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_increment()

ILR_API ilr_status ILR_CALL ilr_reader_mf_increment ( ilr_handle  hReader,
size_t  nBlockIdx,
uint32_t  nValue 
)

Увеличивает содержимое блока-значения карты Mifare и сохраняет результат во временном регистре данных.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока (0..255).
[in]nValueВеличина инкремента.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_power_off()

ILR_API ilr_status ILR_CALL ilr_reader_mf_power_off ( ilr_handle  hReader)

Выключает RF поле считывателя (после выключения нужно подождать 10 мс).

Аргументы
[in]hReaderДескриптор считывателя.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_ras()

ILR_API ilr_status ILR_CALL ilr_reader_mf_ras ( ilr_handle  hReader,
ilr_bool  fWakeUp,
uint8_t *  pSAK,
uint16_t *  pATQ,
ilr_card_uid *  pUID,
ilr_bool pFound 
)

R+A+S(Request+Anticollision+Select)

Аргументы
[in]hReaderДескриптор считывателя.
[in]fWakeUpILR_TRUE, разбудить карту.
[out]pSAKКод SAK карты.
[out]pATQКод ATQ карты.
[out]pUIDНомер карты.
[out]pFoundILR_TRUE, карта найдена, иначе нет карты.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_rats()

ILR_API ilr_status ILR_CALL ilr_reader_mf_rats ( ilr_handle  hReader,
uint8_t *  pAtsBuf = nullptr,
size_t *  pSize = nullptr 
)

Переходит на ISO 14443-4.

Аргументы
[in]hReaderДескриптор считывателя.
[out]pAtsBufБуфер для данных ATS.
[in,out]pSizeРазмер буфера. Обычно нужно 12 байт.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_restore()

ILR_API ilr_status ILR_CALL ilr_reader_mf_restore ( ilr_handle  hReader,
size_t  nBlockIdx 
)

Перемещает содержимое блока в регистр данных Mifare.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока (0..255).
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_rr()

ILR_API ilr_status ILR_CALL ilr_reader_mf_rr ( ilr_handle  hReader,
ilr_bool  fWakeUp,
const ilr_card_uid &  rUID,
ilr_bool pFound 
)

R+R(Request+Reselect(по известному номеру)).

Аргументы
[in]hReaderДескриптор считывателя.
[in]fWakeUpILR_TRUE, разбудить карту.
[in]rUIDНомер карты.
[out]pFoundILR_TRUE, карта найдена.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_transfer()

ILR_API ilr_status ILR_CALL ilr_reader_mf_transfer ( ilr_handle  hReader,
size_t  nBlockIdx 
)

Записывает содержимое во временном регистре данных в блок-значение.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер блока (0..255).
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_mf_write_perso()

ILR_API ilr_status ILR_CALL ilr_reader_mf_write_perso ( ilr_handle  hReader,
uint32_t  nAddress,
const ilr_mf_plus_key rKey 
)

Записывает ключи AES и всех блоков.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressАдрес ключа.
[in]rKeyЗначение ключа.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_read_mf_classic()

ILR_API ilr_status ILR_CALL ilr_reader_read_mf_classic ( ilr_handle  hReader,
size_t  nBlockIdx,
ilr_mf_block_data pBuf,
size_t  nBlockCount,
size_t *  pRead = nullptr 
)

Читает данные карты Mifare Classic или Mifare Plus SL1.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер первого читаемого блока (0..255).
[out]pBufБуфер для прочитанных блоков.
[out]nBlockCountКоличество блоков, которые нужно прочитать.
[in]pReadКоличество прочитанных блоков. Может быть равен nullptr.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_read_mf_plus()

ILR_API ilr_status ILR_CALL ilr_reader_read_mf_plus ( ilr_handle  hReader,
size_t  nAddress,
ilr_mf_block_data pBuf,
size_t  nBlockCount,
ilr_bool  fOpenText = ILR_TRUE,
size_t *  pRead = nullptr 
)

Читает данные карты Mifare Plus SL3.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер первого читаемого блока (0..255).
[out]pBufБуфер для прочитанных блоков.
[in]nBlockCountКоличество блоков, которые нужно прочитать.
[in]fOpenTextILR_TRUE, открытая передача, иначе - зашифрованная.
[out]pReadКоличество прочитанных блоков. Может быть равен nullptr.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_read_mf_ultralight()

ILR_API ilr_status ILR_CALL ilr_reader_read_mf_ultralight ( ilr_handle  hReader,
size_t  nPageIdx,
uint32_t *  pBuf,
size_t  nPageCount,
size_t *  pRead = nullptr 
)

Читает данные карты Mifare Ultralight.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nPageIdxНомер первой читаемой страницы (0..15).
[out]pBufБуфер для прочитанных страниц.
[in]nPageCountКоличество страниц, которые нужно прочитать.
[out]pReadКоличество прочитанных страниц. Может быть равен nullptr.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_read_temic()

ILR_API ilr_status ILR_CALL ilr_reader_read_temic ( ilr_handle  hReader,
size_t  nBlockIdx,
uint32_t *  pBuf,
size_t  nBlockCount,
int  nScanParam = -1,
size_t *  pRead = nullptr 
)

Читает данные карты Temic.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер первого блока, который нужно причитать (0..9).
[out]pBufБуфер для прочитанных данных.
[in]nBlockCountКоличество блоков, которые нужно прочитать.
[in]nScanParamПараметры сканирования Temic. Если -1, авто определение.
[out]pReadКоличество прочитанных блоков.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_reset_temic()

ILR_API ilr_status ILR_CALL ilr_reader_reset_temic ( ilr_handle  hReader,
ilr_bool  fWait = ILR_TRUE 
)

Сброс TRES.

Аргументы
[in]hReaderДескриптор считывателя.
[in]fWaitILR_TRUE, ждать завершения команды.
Прим.
Если fWait равно ILR_TRUE, то функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_scan()

ILR_API ilr_status ILR_CALL ilr_reader_scan ( ilr_handle  hReader,
ilr_bool  fReset = ILR_FALSE,
ilr_bool  fPowerOff = ILR_TRUE 
)

Ищет карту в поле считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]fResetILR_TRUE, сбросить старые результаты поиска.
[in]fPowerOffILR_TRUE, выключает RF поле после сканирования.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_scan_temic()

ILR_API ilr_status ILR_CALL ilr_reader_scan_temic ( ilr_handle  hReader,
int  nScanParam = -1 
)

Ищет карту Temic в поле считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nScanParamПараметры сканирования Temic. Если -1, авто определение.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_set_auto_scan()

ILR_API ilr_status ILR_CALL ilr_reader_set_auto_scan ( ilr_handle  hReader,
ilr_bool  fEnable = ILR_TRUE,
ilr_bool  fWait = ILR_TRUE 
)

Включает/выключает автоматическое сканирование карт.

Если включено, то ищет карты в фоновом режиме.

Аргументы
[in]hReaderДескриптор считывателя.
[in]fEnableILR_TRUE, включить авто сканирование, иначе - выключить.
[in]fWaitILR_TRUE, ждать полного завершения команды, иначе только установить флаг.
Прим.
Если fWait равен ILR_TRUE, то функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_set_message_callback()

ILR_API ilr_status ILR_CALL ilr_reader_set_message_callback ( ilr_handle  hReader,
ilr_reader_message_callback  pCallback,
void *  pUserData = nullptr 
)

Устанавливает функцию обратного вызова для уведомлений считывателя.

Устанавливает функцию для получения сообщений от дескриптора считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]pCallbackУказатель на функцию, которую библиотека будет вызывать при возникновении события считывателя.
[in]pUserDataУказатель на данные пользователя, который будет передаваться в функцию.
Предупреждения
Не позволяйте исключениям выйти из callback-функции, оберните код в try catch. Нельзя из callback-функции вызывать функции, которые ждут выполнение команды в потоке, из которого вызвана эта callback-функция, иначе вернёт ошибку ILR_E_BLOCKING_CALL_NOT_ALLOWED.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_set_options()

ILR_API ilr_status ILR_CALL ilr_reader_set_options ( ilr_handle  hReader,
const ilr_reader_options pOptions 
)

Устанавливает параметры считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]pOptionsПараметры считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_set_scan_temic()

ILR_API ilr_status ILR_CALL ilr_reader_set_scan_temic ( ilr_handle  hReader,
ilr_bool  fEnable = ILR_TRUE 
)

Вкл/выкл сканирование карт Temic (для Z-2 Rd-All и Z-2 EHR).

Если включено, то ищет карту Temic при ручном или автоматическом поиске карт ( ilr_reader_scan, ilr_reader_set_auto_scan).

Аргументы
[in]hReaderДескриптор считывателя.
[in]fEnableILR_TRUE, включает сканирование Temic.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_write_mf_ckey()

ILR_API ilr_status ILR_CALL ilr_reader_write_mf_ckey ( ilr_handle  hReader,
size_t  nIdx,
ilr_bool  fKeyB,
const ilr_mf_classic_key pKeys,
size_t  nCount,
size_t *  pWritten = nullptr 
)

Записывает ключи аутентификации Mifare Classic в память считывателя.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nIdxНомер ячейки в памяти считывателя, в которую записывается первый ключ.
[in]fKeyBILR_TRUE, ключ Б, иначе - ключ А.
[in]pKeysСписок записываемых ключей.
[in]nCountКоличество ключей, которые нужно записать.
[out]pWrittenКоличество записанных ключей.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_write_mf_classic()

ILR_API ilr_status ILR_CALL ilr_reader_write_mf_classic ( ilr_handle  hReader,
size_t  nBlockIdx,
const ilr_mf_block_data pData,
size_t  nBlockCount,
size_t *  pWritten = nullptr 
)

Пишет данные карты Mifare Classic или Mifare Plus SL1.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер первого записываемого блока (0..255).
[in]pDataДанные записываемых блоков.
[out]nBlockCountКоличество блоков, которые нужно записать.
[out]pWrittenКоличество записанных блоков. Может быть равен nullptr.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_write_mf_pkey()

ILR_API ilr_status ILR_CALL ilr_reader_write_mf_pkey ( ilr_handle  hReader,
size_t  nIdx,
ilr_bool  fKeyB,
const ilr_mf_plus_key pKeys,
size_t  nCount,
size_t *  pWritten = nullptr 
)

Записывает ключи аутентификации Mifare Plus в память считывателя

Аргументы
[in]hReaderДескриптор считывателя.
[in]nIdxНомер ячейки в памяти считывателя, в которую записывается первый ключ.
[in]fKeyBILR_TRUE, ключ Б, иначе - ключ А.
[in]pKeysСписок записываемых ключей.
[in]nCountКоличество ключей, которые нужно записать.
[out]pWrittenКоличество записанных ключей.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_write_mf_plus()

ILR_API ilr_status ILR_CALL ilr_reader_write_mf_plus ( ilr_handle  hReader,
size_t  nAddress,
const ilr_mf_block_data pData,
size_t  nBlockCount,
ilr_bool  fOpenText = ILR_TRUE,
size_t *  pWritten = nullptr 
)

Пишет данные карты Mifare Plus SL3.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nAddressНомер первого записываемого блока (0..255) или адрес Mifare Plus.
[in]pDataДанные записываемых блоков.
[in]nBlockCountКоличество блоков, которые нужно записать.
[in]fOpenTextILR_TRUE, открытая передача, иначе - зашифрованная.
[out]pWrittenКоличество записанных блоков. Может быть равно nullptr.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_write_mf_ultralight()

ILR_API ilr_status ILR_CALL ilr_reader_write_mf_ultralight ( ilr_handle  hReader,
size_t  nPageIdx,
const uint32_t *  pData,
size_t  nPageCount,
size_t *  pWritten = nullptr 
)

Пишет данные карты Mifare Ultralight.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nPageIdxНомер первой записываемой страницы (0..15).
[in]pDataДанные страниц.
[in]nPageCountКоличество страниц, которые нужно записать.
[out]pWrittenКоличество записанных страниц. Может быть равен nullptr.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.

◆ ilr_reader_write_temic()

ILR_API ilr_status ILR_CALL ilr_reader_write_temic ( ilr_handle  hReader,
size_t  nBlockIdx,
const uint32_t *  pData,
size_t  nBlockCount,
ilr_bool  fLock = ILR_FALSE,
int  nScanParam = -1,
size_t *  pWritten = nullptr 
)

Пишет данные карты Temic.

Аргументы
[in]hReaderДескриптор считывателя.
[in]nBlockIdxНомер первого блока, в который нужно записать (0..7).
[in]pDataДанные блоков для записи.
[in]nBlockCountКоличество блоков, которые нужно записать.
[in]fLockILR_TRUE, заблокировать блоки от перезаписи.
[in]nScanParamПараметры сканирования Temic. Если -1, авто определение.
[out]pWrittenКоличество записанных блоков.
Прим.
Функция не возвращает управление пока ждёт выполнение команды в потоке считывателя.
Возвращает
ILR_OK в случае успеха или код ошибки в случае неудачи.