unit PRx08;
////////////////////////////////////////////////////////////////////////////////
//             ИНТЕРФЕЙС К БИБЛИОТЕКЕ PRx08.dll
////////////////////////////////////////////////////////////////////////////////


                                 interface
////////////////////////////////////////////////////////////////////////////////
uses
  windows,
  SysUtils,
  Classes,
  //
  ErrCodes,
  PRTypes;

const
  DLL_NAME = 'PRx08.dll';

//                 ЭКСПОРТИРУЕМЫЕ ФУНКЦИИ
// Пересоздаем список подключенных считывателей
function Enumerate(): short; stdcall; external DLL_NAME;
// Получаем первый считыватель
function GetFirstReader(desc: pbytearray; maxlen: short): short; stdcall; external DLL_NAME;
// Получаем следующий считыватель
function GetNextReader(desc: pbytearray; maxlen: short): short; stdcall; external DLL_NAME;
// Открываем ридер по номеру
function OpenReader(num: short): short; stdcall; external DLL_NAME;
// Закрываем ридер по номеру
function CloseReader(num: short): short; stdcall; external DLL_NAME;

// Читаем полный код карты
function ReadCardNumberRaw(num: short; var ctype: short; cserial: PByteArray;
                           var clen: short): short; stdcall; external DLL_NAME;
// Читаем 4-х байтовый код карты
function ReadCardNumber(num: short; var cod: dword): short; stdcall; external DLL_NAME;

// Устанавливаем режим индикации
function SetBeepBlinkMode(num: short; useblink: short; usebeep: short): short; stdcall; external DLL_NAME;
// Внешнее управление индикацией
function BeepBlink(num: short): short; stdcall; external DLL_NAME;

// Информация о считывателе
function GetReaderInfo(num: short; info: PByteArray): short; stdcall; external DLL_NAME;

// Принудительный wiegand-26 On/Off
function SetWiegand26(on: short): short; stdcall; external DLL_NAME;

                                 implementation
////////////////////////////////////////////////////////////////////////////////

end.

