IDTech Universal SDK  1.0.35.027
API reference for C++
libIDT_MiniSmartII.h
Go to the documentation of this file.
1 #ifndef __LIBIDT_AUGUSTA_H___
2 # define __LIBIDT_AUGUSTA_H___
3 
4 
5 # define IN
6 # define OUT
7 # define IN_OUT
8 # include "IDTDef.h"
9 
15 typedef void (* pMessageHotplug)(int, int);
16 
21 typedef void (* pSendDataLog)(BYTE *, int);
22 
27 typedef void (* pReadDataLog)(BYTE *, int);
28 
33 typedef void (* pEMV_callBack)(int, int, BYTE *, int, IDTTransactionData *, EMV_Callback *, int);
34 
39 typedef void (* pMSR_callBack)(int, IDTMSRData);
40 
45 typedef void (* pMSR_callBackp)(int, IDTMSRData *);
46 
51 typedef void (* pPIN_callBack)(int, IDTPINData *);
52 
57 typedef void (* pCMR_callBack)(int, IDTCMRData *);
58 
63 typedef void (* pCSFS_callBack)(BYTE status);
64 
76 typedef void (* ftpComm_callBack)(int, int, int);
77 
82 typedef void (* httpComm_callBack)(BYTE *, int);
83 
90 typedef void (* v4Comm_callBack)(BYTE, BYTE, BYTE *, int);
91 
92 
93 # ifdef __cplusplus
94 extern "C" {
95 # endif
96 
100 void
102 
106 void
108 
112 void
114 
118 void
120 
124 void
126 
130 void
132 
136 void
138 
142 void
144 
150 void
152 
158 void
160 
165 char *
166 SDK_Version();
167 
176 int
177 setAbsoluteLibraryPath(const char * absoluteLibraryPath);
178 
186 int
187 device_init();
188 
239 int
240 rs232_device_init(int deviceType, int port_number, int brate);
241 
242 
284 int
285 device_setCurrentDevice(int deviceType);
286 
287 
293 int
294 device_close();
295 
654 void
655 device_getResponseCodeString(IN int returnCode, OUT char * despcrition);
656 
661 int
663 
670 int
671 device_isAttached(int deviceType);
672 
683 int
684 device_getFirmwareVersion(OUT char * firmwareVersion);
685 
695 int
696 device_getFirmwareVersion_Len(OUT char * firmwareVersion, IN_OUT int * firmwareVersionLen);
697 
703 int
705 
723 // int device_SendDataCommand(IN BYTE* cmd, IN int cmdLen, OUT BYTE* response, IN_OUT int *respLen);
724 int
725 device_SendDataCommand(IN BYTE * cmd, IN int cmdLen, IN BYTE * data, IN int dataLen, OUT BYTE * response,
726  IN_OUT int * respLen);
727 
753 int
754 device_updateFirmware(IN BYTE * firmwareData, IN int firmwareDataLen, IN char * firmwareName, IN int encryptionType,
755  IN BYTE * keyBlob, IN int keyBlobLen);
756 
766 int
768 
791 // intervalOn = 500, int intervalOff = 500
792 int
793 device_controlLED(byte indexLED, byte control, int intervalOn, int intervalOff);
794 
795 
809 int
810 device_controlLED_ICC(int controlMode, int interval);
811 
832 // int intervalOn = 500, int intervalOff = 500)
833 
834 int
835 device_controlLED_MSR(byte control, int intervalOn, int intervalOff);
836 
850 int
851 device_controlBeep(int index, int frequency, int duration);
852 
917 int
918 device_getKeyStatus(int * newFormat, BYTE * status, int * statusLen);
919 
928 int
930 
940 void
941 device_setSDKWaitTime(int waitTime);
942 
951 int
953 
961 void
962 device_setThreadStackSize(int threadSize);
963 
974 int
975 config_getModelNumber(OUT char * sNumber);
976 
986 int
987 config_getModelNumber_Len(OUT char * sNumber, IN_OUT int * sNumberLen);
988 
999 int
1000 config_getSerialNumber(OUT char * sNumber);
1001 
1011 int
1012 config_getSerialNumber_Len(OUT char * sNumber, IN_OUT int * sNumberLen);
1013 
1028 int
1029 config_setLEDController(int firmwareControlMSRLED, int firmwareControlICCLED);
1030 
1044 int
1045 config_getLEDController(int * firmwareControlMSRLED, int * firmwareControlICCLED);
1046 
1056 int
1057 config_setBeeperController(int firmwareControlBeeper);
1058 
1067 int
1068 config_getBeeperController(int * firmwareControlBeeper);
1069 
1089 int
1090 config_setEncryptionControl(int msr, int icc);
1091 
1111 int
1112 config_getEncryptionControl(int * msr, int * icc);
1113 
1124 int
1125 icc_enable(IN int withNotification);
1126 
1132 int
1133 icc_disable();
1134 
1144 int
1145 icc_powerOnICC(OUT BYTE * ATR, IN_OUT int * inLen);
1146 
1157 int
1158 icc_powerOffICC();
1159 
1173 int
1174 icc_exchangeAPDU(IN BYTE * c_APDU, IN int cLen, OUT BYTE * reData, IN_OUT int * reLen);
1175 
1208 int
1209 icc_exchangeEncryptedAPDU(IN BYTE * c_APDU, IN int cLen, OUT BYTE * reData, IN_OUT int * reLen);
1210 
1221 int
1222 icc_getAPDU_KSN(OUT BYTE * KSN, IN_OUT int * inLen);
1223 
1235 int
1236 icc_getFunctionStatus(OUT int * enabled, OUT int * withNotification);
1237 
1248 int
1249 icc_getICCReaderStatus(OUT BYTE * status);
1250 
1262 int
1263 icc_getKeyFormatForICCDUKPT(OUT BYTE * format);
1264 
1277 int
1278 icc_getKeyTypeForICCDUKPT(OUT BYTE * type);
1279 
1290 int
1291 emv_getEMVKernelVersion(OUT char * version);
1292 
1303 int
1304 emv_getEMVKernelVersion_Len(OUT char * version, IN_OUT int * versionLen);
1305 
1315 int
1316 emv_getEMVKernelCheckValue(OUT BYTE * checkValue, IN_OUT int * checkValueLen);
1317 
1326 int
1327 emv_getEMVConfigurationCheckValue(OUT BYTE * checkValue, IN_OUT int * checkValueLen);
1328 
1334 void
1335 emv_setAutoAuthenticateTransaction(IN int authenticate);
1336 
1342 void
1343 emv_setAutoCompleteTransaction(IN int complete);
1344 
1349 int
1351 
1356 int
1358 
1363 void
1364 emv_allowFallback(IN int allow);
1365 
1387 int
1388 emv_startTransaction(IN double amount, IN double amtOther, IN int exponent, IN int type, IN int timeout, IN BYTE * tags,
1389  IN int tagsLen, IN int forceOnline);
1390 
1395 void
1396 device_setTransactionExponent(int exponent);
1397 
1425 int
1426 device_startTransaction(IN double amount,
1427  IN double amtOther,
1428  IN int type,
1429  IN const int _timeout,
1430  IN BYTE * tags,
1431  IN int tagsLen);
1432 
1451 int
1452 emv_activateTransaction(IN int timeout, IN BYTE * tags, IN int tagsLen, IN int forceOnline);
1453 
1470 int
1471 emv_authenticateTransaction(IN BYTE * updatedTLV, IN int updatedTLVLen);
1472 
1490 int
1491 emv_authenticateTransactionWithTimeout(IN int timeout, IN BYTE * updatedTLV, IN int updatedTLVLen);
1492 
1512 int
1513 emv_completeTransaction(IN int commError, IN BYTE * authCode, IN int authCodeLen,
1514  IN BYTE * iad, IN int iadLen, IN BYTE * tlvScripts, IN int tlvScriptsLen, IN BYTE * tlv, IN int tlvLen);
1515 
1522 int
1524 
1529 int
1531 
1545 int
1546 emv_retrieveTransactionResult(IN BYTE * tags, IN int tagsLen, IDTTransactionData * cardData);
1547 
1563 int
1564 emv_callbackResponseLCD(IN int type, byte selection);
1565 
1577 int
1578 emv_callbackResponseMSR(IN BYTE * MSR, IN_OUT int MSRLen);
1579 
1592 int
1593 emv_retrieveApplicationData(IN BYTE * AID, IN int AIDLen, OUT BYTE * tlv, IN_OUT int * tlvLen);
1594 
1607 int
1608 emv_setApplicationData(IN BYTE * name, IN int nameLen, IN BYTE * tlv, IN int tlvLen);
1609 
1619 int
1620 emv_removeApplicationData(IN BYTE * AID, IN int AIDLen);
1621 
1631 int
1633 
1645 int
1646 emv_retrieveAIDList(OUT BYTE * AIDList, IN_OUT int * AIDListLen);
1647 
1659 int
1660 emv_retrieveTerminalData(OUT BYTE * tlv, IN_OUT int * tlvLen);
1661 
1673 int
1674 emv_setTerminalData(IN BYTE * tlv, IN int tlvLen);
1675 
1684 int
1686 
1707 int
1708 emv_retrieveCAPK(IN BYTE * capk, IN int capkLen, OUT BYTE * key, IN_OUT int * keyLen);
1709 
1728 int
1729 emv_setCAPK(IN BYTE * capk, IN int capkLen);
1730 
1741 int
1742 emv_removeCAPK(IN BYTE * capk, IN int capkLen);
1743 
1752 int
1754 
1765 int
1766 emv_retrieveCAPKList(OUT BYTE * keys, IN_OUT int * keysLen);
1767 
1776 int
1777 emv_retrieveTerminalID(OUT char * terminalID);
1778 
1787 int
1788 emv_retrieveTerminalID_Len(OUT char * terminalID, IN_OUT int * terminalIDLen);
1789 
1796 int
1797 emv_setTerminalID(IN char * terminalID);
1798 
1809 int
1810 emv_retrieveCRL(OUT BYTE * list, IN_OUT int * lssLen);
1811 
1824 int
1825 emv_setCRL(IN BYTE * list, IN int lsLen);
1826 
1837 int
1838 emv_removeCRL(IN BYTE * list, IN int lsLen);
1839 
1849 int
1851 
1852 # ifdef __cplusplus
1853 }
1854 # endif
1855 
1856 
1857 #endif // ifndef __LIBIDT_AUGUSTA_H___
1858 
void(* pMSR_callBackp)(int, IDTMSRData *)
Definition: libIDT_MiniSmartII.h:45
int icc_getAPDU_KSN(OUT BYTE *KSN, IN_OUT int *inLen)
int device_controlLED_ICC(int controlMode, int interval)
int emv_retrieveTerminalID_Len(OUT char *terminalID, IN_OUT int *terminalIDLen)
int device_getThreadStackSize()
int device_getCurrentDeviceType()
int emv_retrieveAIDList(OUT BYTE *AIDList, IN_OUT int *AIDListLen)
int emv_completeTransaction(IN int commError, IN BYTE *authCode, IN int authCodeLen, IN BYTE *iad, IN int iadLen, IN BYTE *tlvScripts, IN int tlvScriptsLen, IN BYTE *tlv, IN int tlvLen)
int emv_removeAllCAPK()
int emv_getAutoCompleteTransaction()
int icc_powerOffICC()
void(* ftpComm_callBack)(int, int, int)
Definition: libIDT_MiniSmartII.h:76
void device_setThreadStackSize(int threadSize)
int icc_powerOnICC(OUT BYTE *ATR, IN_OUT int *inLen)
int setAbsoluteLibraryPath(const char *absoluteLibraryPath)
int icc_exchangeEncryptedAPDU(IN BYTE *c_APDU, IN int cLen, OUT BYTE *reData, IN_OUT int *reLen)
int emv_retrieveCRL(OUT BYTE *list, IN_OUT int *lssLen)
int emv_retrieveTerminalData(OUT BYTE *tlv, IN_OUT int *tlvLen)
void(* pReadDataLog)(BYTE *, int)
Definition: libIDT_MiniSmartII.h:27
int rs232_device_init(int deviceType, int port_number, int brate)
void device_setTransactionExponent(int exponent)
void(* pEMV_callBack)(int, int, BYTE *, int, IDTTransactionData *, EMV_Callback *, int)
Definition: libIDT_MiniSmartII.h:33
int device_rebootDevice()
int emv_getEMVKernelCheckValue(OUT BYTE *checkValue, IN_OUT int *checkValueLen)
int emv_getEMVConfigurationCheckValue(OUT BYTE *checkValue, IN_OUT int *checkValueLen)
void emv_registerCallBk(pEMV_callBack pEMVf)
void(* pCMR_callBack)(int, IDTCMRData *)
Definition: libIDT_MiniSmartII.h:57
int emv_removeTerminalData()
int icc_exchangeAPDU(IN BYTE *c_APDU, IN int cLen, OUT BYTE *reData, IN_OUT int *reLen)
int emv_removeCAPK(IN BYTE *capk, IN int capkLen)
int emv_activateTransaction(IN int timeout, IN BYTE *tags, IN int tagsLen, IN int forceOnline)
void(* pMessageHotplug)(int, int)
Definition: libIDT_MiniSmartII.h:15
#define IN_OUT
void comm_registerV4Callback(v4Comm_callBack cBack)
int config_getSerialNumber_Len(OUT char *sNumber, IN_OUT int *sNumberLen)
int emv_setCRL(IN BYTE *list, IN int lsLen)
int emv_setCAPK(IN BYTE *capk, IN int capkLen)
int icc_disable()
int device_getKeyStatus(int *newFormat, BYTE *status, int *statusLen)
void(* pSendDataLog)(BYTE *, int)
Definition: libIDT_MiniSmartII.h:21
int device_close()
int emv_retrieveTransactionResult(IN BYTE *tags, IN int tagsLen, IDTTransactionData *cardData)
#define IN
int device_controlLED_MSR(byte control, int intervalOn, int intervalOff)
void(* v4Comm_callBack)(BYTE, BYTE, BYTE *, int)
Definition: libIDT_MiniSmartII.h:90
void device_registerCameraCallBk(pCMR_callBack pCMRf)
void(* httpComm_callBack)(BYTE *, int)
Definition: libIDT_MiniSmartII.h:82
int emv_removeApplicationData(IN BYTE *AID, IN int AIDLen)
int device_controlLED(byte indexLED, byte control, int intervalOn, int intervalOff)
void pin_registerCallBk(pPIN_callBack pPINf)
int icc_getKeyFormatForICCDUKPT(OUT BYTE *format)
int emv_retrieveApplicationData(IN BYTE *AID, IN int AIDLen, OUT BYTE *tlv, IN_OUT int *tlvLen)
int device_startTransaction(IN double amount, IN double amtOther, IN int type, IN const int _timeout, IN BYTE *tags, IN int tagsLen)
int emv_authenticateTransaction(IN BYTE *updatedTLV, IN int updatedTLVLen)
int device_controlBeep(int index, int frequency, int duration)
void emv_setAutoAuthenticateTransaction(IN int authenticate)
void msr_registerCallBkp(pMSR_callBackp pMSRf)
int device_getFirmwareVersion_Len(OUT char *firmwareVersion, IN_OUT int *firmwareVersionLen)
int config_setBeeperController(int firmwareControlBeeper)
int emv_setTerminalData(IN BYTE *tlv, IN int tlvLen)
void device_setSDKWaitTime(int waitTime)
int emv_removeCRL(IN BYTE *list, IN int lsLen)
int emv_removeAllCRL()
int icc_getFunctionStatus(OUT int *enabled, OUT int *withNotification)
int emv_setApplicationData(IN BYTE *name, IN int nameLen, IN BYTE *tlv, IN int tlvLen)
void registerHotplugCallBk(pMessageHotplug pMsgHotplug)
int emv_authenticateTransactionWithTimeout(IN int timeout, IN BYTE *updatedTLV, IN int updatedTLVLen)
int emv_callbackResponseMSR(IN BYTE *MSR, IN_OUT int MSRLen)
void msr_registerCallBk(pMSR_callBack pMSRf)
int emv_setTerminalID(IN char *terminalID)
void device_registerCardStatusFrontSwitchCallBk(pCSFS_callBack pCSFSf)
int emv_startTransaction(IN double amount, IN double amtOther, IN int exponent, IN int type, IN int timeout, IN BYTE *tags, IN int tagsLen, IN int forceOnline)
int emv_getAutoAuthenticateTransaction()
int config_setEncryptionControl(int msr, int icc)
int emv_retrieveCAPKList(OUT BYTE *keys, IN_OUT int *keysLen)
int config_setLEDController(int firmwareControlMSRLED, int firmwareControlICCLED)
void device_getResponseCodeString(IN int returnCode, OUT char *despcrition)
int config_getSerialNumber(OUT char *sNumber)
int config_getLEDController(int *firmwareControlMSRLED, int *firmwareControlICCLED)
int icc_getKeyTypeForICCDUKPT(OUT BYTE *type)
int config_getModelNumber(OUT char *sNumber)
char * SDK_Version()
int emv_getEMVKernelVersion_Len(OUT char *version, IN_OUT int *versionLen)
int config_getEncryptionControl(int *msr, int *icc)
#define OUT
int device_getFirmwareVersion(OUT char *firmwareVersion)
int emv_retrieveCAPK(IN BYTE *capk, IN int capkLen, OUT BYTE *key, IN_OUT int *keyLen)
int emv_cancelTransaction()
int device_setCurrentDevice(int deviceType)
int device_getSDKWaitTime()
int emv_getEMVKernelVersion(OUT char *version)
void emv_setAutoCompleteTransaction(IN int complete)
int device_SendDataCommand(IN BYTE *cmd, IN int cmdLen, IN BYTE *data, IN int dataLen, OUT BYTE *response, IN_OUT int *respLen)
int device_isAttached(int deviceType)
int device_cancelTransaction()
void(* pCSFS_callBack)(BYTE status)
Definition: libIDT_MiniSmartII.h:63
void comm_registerHTTPCallback(httpComm_callBack cBack)
int device_isConnected()
void registerLogCallBk(pSendDataLog pFSend, pReadDataLog pFRead)
int icc_getICCReaderStatus(OUT BYTE *status)
int device_init()
void(* pPIN_callBack)(int, IDTPINData *)
Definition: libIDT_MiniSmartII.h:51
void(* pMSR_callBack)(int, IDTMSRData)
Definition: libIDT_MiniSmartII.h:39
void emv_allowFallback(IN int allow)
int emv_retrieveTerminalID(OUT char *terminalID)
int config_getModelNumber_Len(OUT char *sNumber, IN_OUT int *sNumberLen)
int emv_callbackResponseLCD(IN int type, byte selection)
int device_updateFirmware(IN BYTE *firmwareData, IN int firmwareDataLen, IN char *firmwareName, IN int encryptionType, IN BYTE *keyBlob, IN int keyBlobLen)
int emv_removeAllApplicationData()
int config_getBeeperController(int *firmwareControlBeeper)
int icc_enable(IN int withNotification)