IDTech Universal SDK  1.0.35.036
API reference for C++
libIDT_SpectrumPro.h
Go to the documentation of this file.
1 #ifndef __LIBIDT_SPECTRUMPRO_H___
2 # define __LIBIDT_SPECTRUMPRO_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 
75 typedef void (* ftpComm_callBack)(int, int, int);
76 
88 typedef void (* ftpComm_callBack)(int, int, int);
89 
94 typedef void (* httpComm_callBack)(BYTE *, int);
95 
102 typedef void (* v4Comm_callBack)(BYTE, BYTE, BYTE *, int);
103 
104 
105 # ifdef __cplusplus
106 extern "C" {
107 # endif
108 
112 void
114 
118 void
120 
124 void
126 
130 void
132 
136 void
138 
142 void
144 
148 void
150 
154 void
156 
161 char *
162 SDK_Version();
163 
172 int
173 setAbsoluteLibraryPath(const char * absoluteLibraryPath);
174 
182 int
183 device_init();
184 
235 int
236 rs232_device_init(int deviceType, int port_number, int brate);
237 
280 int
281 device_setCurrentDevice(int deviceType);
282 
288 int
289 device_close();
290 
649 void
650 device_getResponseCodeString(IN int returnCode, OUT char * despcrition);
651 
656 int
658 
665 int
666 device_isAttached(int deviceType);
667 
678 int
679 device_getFirmwareVersion(OUT char * firmwareVersion);
680 
690 int
691 device_getFirmwareVersion_Len(OUT char * firmwareVersion, IN_OUT int * firmwareVersionLen);
692 
698 int
700 
718 // int device_SendDataCommand(IN BYTE* cmd, IN int cmdLen, OUT BYTE* response, IN_OUT int *respLen);
719 int
720 device_SendDataCommand(IN BYTE * cmd, IN int cmdLen, IN BYTE * data, IN int dataLen, OUT BYTE * response,
721  IN_OUT int * respLen);
722 
732 int
734 
761 int
762 device_updateFirmware(IN BYTE * firmwareData, IN int firmwareDataLen, IN char * firmwareName, IN int encryptionType,
763  IN BYTE * keyBlob, IN int keyBlobLen);
764 
775 int
776 config_getModelNumber(OUT char * sNumber);
777 
787 int
788 config_getModelNumber_Len(OUT char * sNumber, IN_OUT int * sNumberLen);
789 
800 int
801 config_getSerialNumber(OUT char * sNumber);
802 
812 int
813 config_getSerialNumber_Len(OUT char * sNumber, IN_OUT int * sNumberLen);
814 
878 int
879 device_pollCardReader(OUT BYTE * status);
880 
944 int
945 device_pollCardReader_Len(OUT BYTE * status, IN_OUT int * statusLen);
946 
966 int
968  OUT BYTE * KSN);
969 
988 int
990  OUT BYTE * KSN, IN_OUT int * KSNLen);
991 
1000 int
1002 
1012 void
1013 device_setSDKWaitTime(int waitTime);
1014 
1023 int
1025 
1033 void
1034 device_setThreadStackSize(int threadSize);
1035 
1045 int
1046 icc_powerOnICC(OUT BYTE * ATR, IN_OUT int * inLen);
1047 
1058 int
1059 icc_powerOffICC();
1060 
1070 int
1071 icc_getICCReaderStatus(OUT BYTE * status);
1072 
1083 int
1084 emv_getEMVKernelVersion(OUT char * version);
1085 
1096 int
1097 emv_getEMVKernelVersion_Len(OUT char * version, IN_OUT int * versionLen);
1098 
1108 int
1109 emv_getEMVKernelCheckValue(OUT BYTE * checkValue, IN_OUT int * checkValueLen);
1110 
1116 void
1117 emv_setAutoAuthenticateTransaction(IN int authenticate);
1118 
1124 void
1125 emv_setAutoCompleteTransaction(IN int complete);
1126 
1131 int
1133 
1138 int
1140 
1149 int
1150 emv_getEMVConfigurationCheckValue(OUT BYTE * checkValue, IN_OUT int * checkValueLen);
1151 
1156 void
1157 emv_allowFallback(IN int allow);
1158 
1180 int
1181 emv_startTransaction(IN double amount, IN double amtOther, IN int exponent, IN int type, IN int timeout, IN BYTE * tags,
1182  IN int tagsLen, IN int forceOnline);
1183 
1202 int
1203 emv_activateTransaction(IN int timeout, IN BYTE * tags, IN int tagsLen, IN int forceOnline);
1204 
1221 int
1222 emv_authenticateTransaction(IN BYTE * updatedTLV, IN int updatedTLVLen);
1223 
1241 int
1242 emv_authenticateTransactionWithTimeout(IN int timeout, IN BYTE * updatedTLV, IN int updatedTLVLen);
1243 
1263 int
1264 emv_completeTransaction(IN int commError, IN BYTE * authCode, IN int authCodeLen,
1265  IN BYTE * iad, IN int iadLen, IN BYTE * tlvScripts, IN int tlvScriptsLen, IN BYTE * tlv, IN int tlvLen);
1266 
1273 int
1275 
1289 int
1290 emv_retrieveTransactionResult(IN BYTE * tags, IN int tagsLen, IDTTransactionData * cardData);
1291 
1307 int
1308 emv_callbackResponseLCD(IN int type, byte selection);
1309 
1321 int
1322 emv_callbackResponseMSR(IN BYTE * MSR, IN_OUT int MSRLen);
1323 
1336 int
1337 emv_retrieveApplicationData(IN BYTE * AID, IN int AIDLen, OUT BYTE * tlv, IN_OUT int * tlvLen);
1338 
1351 int
1352 emv_setApplicationData(IN BYTE * name, IN int nameLen, IN BYTE * tlv, IN int tlvLen);
1353 
1363 int
1364 emv_removeApplicationData(IN BYTE * AID, IN int AIDLen);
1365 
1375 int
1377 
1389 int
1390 emv_retrieveAIDList(OUT BYTE * AIDList, IN_OUT int * AIDListLen);
1391 
1403 int
1404 emv_retrieveTerminalData(OUT BYTE * tlv, IN_OUT int * tlvLen);
1405 
1417 int
1418 emv_setTerminalData(IN BYTE * tlv, IN int tlvLen);
1419 
1428 int
1430 
1451 int
1452 emv_retrieveCAPK(IN BYTE * capk, IN int capkLen, OUT BYTE * key, IN_OUT int * keyLen);
1453 
1472 int
1473 emv_setCAPK(IN BYTE * capk, IN int capkLen);
1474 
1485 int
1486 emv_removeCAPK(IN BYTE * capk, IN int capkLen);
1487 
1496 int
1498 
1509 int
1510 emv_retrieveCAPKList(OUT BYTE * keys, IN_OUT int * keysLen);
1511 
1520 int
1521 emv_retrieveTerminalID(OUT char * terminalID);
1522 
1531 int
1532 emv_retrieveTerminalID_Len(OUT char * terminalID, IN_OUT int * terminalIDLen);
1533 
1540 int
1541 emv_setTerminalID(IN char * terminalID);
1542 
1553 int
1554 emv_retrieveCRL(OUT BYTE * list, IN_OUT int * lssLen);
1555 
1568 int
1569 emv_setCRL(IN BYTE * list, IN int lsLen);
1570 
1581 int
1582 emv_removeCRL(IN BYTE * list, IN int lsLen);
1583 
1593 int
1595 
1601 int
1603 
1611 int
1612 msr_getMSRData(OUT BYTE * reData, IN_OUT int * reLen);
1613 
1619 int
1621 
1628 int
1629 msr_startMSRSwipe(IN int _timeout);
1630 
1637 void
1638 parseMSRData(IN BYTE * resData, IN int resLen, IN_OUT IDTMSRData * cardData);
1639 
1661 int
1662 pin_getPIN(IN int mode, IN int PANSource, IN char * iccPAN, IN int IN iccPANLen, int startTimeout, IN int entryTimeout,
1663  IN char * language, IN int languageLen);
1664 
1672 int
1674 
1681 void
1682 parsePINBlockData(IN BYTE * resData, IN int resLen, IN_OUT IDTPINData * cardData);
1683 
1690 void
1691 parsePINData(IN BYTE * resData, IN int resLen, IN_OUT IDTPINData * cardData);
1692 
1693 # ifdef __cplusplus
1694 }
1695 # endif
1696 
1697 
1698 #endif // ifndef __LIBIDT_SPECTRUMPRO_H___
1699 
int device_getThreadStackSize()
void parseMSRData(IN BYTE *resData, IN int resLen, IN_OUT IDTMSRData *cardData)
int device_isAttached(int deviceType)
void device_getResponseCodeString(IN int returnCode, OUT char *despcrition)
int emv_removeApplicationData(IN BYTE *AID, IN int AIDLen)
void(* pMessageHotplug)(int, int)
Definition: libIDT_SpectrumPro.h:15
int emv_removeAllCRL()
int msr_clearMSRData()
#define IN
void registerLogCallBk(pSendDataLog pFSend, pReadDataLog pFRead)
int emv_callbackResponseLCD(IN int type, byte selection)
void(* pMSR_callBackp)(int, IDTMSRData *)
Definition: libIDT_SpectrumPro.h:45
int emv_setCAPK(IN BYTE *capk, IN int capkLen)
void(* pCSFS_callBack)(BYTE status)
Definition: libIDT_SpectrumPro.h:63
int emv_setCRL(IN BYTE *list, IN int lsLen)
void(* pCMR_callBack)(int, IDTCMRData *)
Definition: libIDT_SpectrumPro.h:57
void pin_registerCallBk(pPIN_callBack pPINf)
int emv_activateTransaction(IN int timeout, IN BYTE *tags, IN int tagsLen, IN int forceOnline)
void parsePINBlockData(IN BYTE *resData, IN int resLen, IN_OUT IDTPINData *cardData)
void(* pSendDataLog)(BYTE *, int)
Definition: libIDT_SpectrumPro.h:21
void(* pPIN_callBack)(int, IDTPINData *)
Definition: libIDT_SpectrumPro.h:51
int emv_retrieveCAPK(IN BYTE *capk, IN int capkLen, OUT BYTE *key, IN_OUT int *keyLen)
int emv_retrieveTerminalData(OUT BYTE *tlv, IN_OUT int *tlvLen)
int device_pollCardReader(OUT BYTE *status)
#define OUT
int msr_cancelMSRSwipe()
int device_pollCardReader_Len(OUT BYTE *status, IN_OUT int *statusLen)
int icc_powerOnICC(OUT BYTE *ATR, IN_OUT int *inLen)
int emv_removeAllCAPK()
int device_getSpectrumProKSN_Len(IN int type, OUT BYTE *KSN, IN_OUT int *KSNLen)
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)
char * SDK_Version()
void emv_setAutoCompleteTransaction(IN int complete)
int device_getFirmwareVersion(OUT char *firmwareVersion)
int emv_setApplicationData(IN BYTE *name, IN int nameLen, IN BYTE *tlv, IN int tlvLen)
int config_getSerialNumber(OUT char *sNumber)
void device_registerCameraCallBk(pCMR_callBack pCMRf)
int config_getModelNumber_Len(OUT char *sNumber, IN_OUT int *sNumberLen)
int device_getFirmwareVersion_Len(OUT char *firmwareVersion, IN_OUT int *firmwareVersionLen)
void msr_registerCallBk(pMSR_callBack pMSRf)
int emv_retrieveTerminalID(OUT char *terminalID)
int pin_cancelPINEntry()
void emv_allowFallback(IN int allow)
int emv_getAutoCompleteTransaction()
int emv_retrieveCRL(OUT BYTE *list, IN_OUT int *lssLen)
int device_init()
int emv_authenticateTransactionWithTimeout(IN int timeout, IN BYTE *updatedTLV, IN int updatedTLVLen)
int device_updateFirmware(IN BYTE *firmwareData, IN int firmwareDataLen, IN char *firmwareName, IN int encryptionType, IN BYTE *keyBlob, IN int keyBlobLen)
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)
void registerHotplugCallBk(pMessageHotplug pMsgHotplug)
int emv_getAutoAuthenticateTransaction()
void parsePINData(IN BYTE *resData, IN int resLen, IN_OUT IDTPINData *cardData)
int emv_getEMVKernelCheckValue(OUT BYTE *checkValue, IN_OUT int *checkValueLen)
void msr_registerCallBkp(pMSR_callBackp pMSRf)
int emv_retrieveTransactionResult(IN BYTE *tags, IN int tagsLen, IDTTransactionData *cardData)
void(* pReadDataLog)(BYTE *, int)
Definition: libIDT_SpectrumPro.h:27
int device_isConnected()
int setAbsoluteLibraryPath(const char *absoluteLibraryPath)
int emv_getEMVKernelVersion(OUT char *version)
int device_getSpectrumProKSN(IN int type, OUT BYTE *KSN)
int device_getCurrentDeviceType()
int emv_retrieveApplicationData(IN BYTE *AID, IN int AIDLen, OUT BYTE *tlv, IN_OUT int *tlvLen)
void device_setSDKWaitTime(int waitTime)
void device_setThreadStackSize(int threadSize)
void(* v4Comm_callBack)(BYTE, BYTE, BYTE *, int)
Definition: libIDT_SpectrumPro.h:102
int device_setCurrentDevice(int deviceType)
void emv_setAutoAuthenticateTransaction(IN int authenticate)
int device_close()
int device_getSDKWaitTime()
int device_rebootDevice()
void device_registerCardStatusFrontSwitchCallBk(pCSFS_callBack pCSFSf)
int msr_startMSRSwipe(IN int _timeout)
int pin_getPIN(IN int mode, IN int PANSource, IN char *iccPAN, IN int IN iccPANLen, int startTimeout, IN int entryTimeout, IN char *language, IN int languageLen)
void(* httpComm_callBack)(BYTE *, int)
Definition: libIDT_SpectrumPro.h:94
int config_getSerialNumber_Len(OUT char *sNumber, IN_OUT int *sNumberLen)
int config_getModelNumber(OUT char *sNumber)
int emv_removeCAPK(IN BYTE *capk, IN int capkLen)
int emv_removeTerminalData()
int device_SendDataCommand(IN BYTE *cmd, IN int cmdLen, IN BYTE *data, IN int dataLen, OUT BYTE *response, IN_OUT int *respLen)
int emv_getEMVKernelVersion_Len(OUT char *version, IN_OUT int *versionLen)
int emv_callbackResponseMSR(IN BYTE *MSR, IN_OUT int MSRLen)
int emv_removeCRL(IN BYTE *list, IN int lsLen)
int emv_retrieveCAPKList(OUT BYTE *keys, IN_OUT int *keysLen)
void(* pEMV_callBack)(int, int, BYTE *, int, IDTTransactionData *, EMV_Callback *, int)
Definition: libIDT_SpectrumPro.h:33
int emv_getEMVConfigurationCheckValue(OUT BYTE *checkValue, IN_OUT int *checkValueLen)
int msr_getMSRData(OUT BYTE *reData, IN_OUT int *reLen)
int emv_setTerminalID(IN char *terminalID)
int icc_powerOffICC()
#define IN_OUT
int rs232_device_init(int deviceType, int port_number, int brate)
int emv_authenticateTransaction(IN BYTE *updatedTLV, IN int updatedTLVLen)
int emv_retrieveAIDList(OUT BYTE *AIDList, IN_OUT int *AIDListLen)
void emv_registerCallBk(pEMV_callBack pEMVf)
int emv_retrieveTerminalID_Len(OUT char *terminalID, IN_OUT int *terminalIDLen)
int emv_setTerminalData(IN BYTE *tlv, IN int tlvLen)
void(* ftpComm_callBack)(int, int, int)
Definition: libIDT_SpectrumPro.h:75
int icc_getICCReaderStatus(OUT BYTE *status)
void(* pMSR_callBack)(int, IDTMSRData)
Definition: libIDT_SpectrumPro.h:39
int emv_cancelTransaction()
int emv_removeAllApplicationData()