IDTech Universal SDK  1.0.35.036
API reference for C++
libIDT_Augusta.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 
69 typedef void (* pFW_callBack)(int, int, int, int, int);
70 
81 typedef void (* ftpComm_callBack)(int, int, int);
82 
87 typedef void (* httpComm_callBack)(BYTE *, int);
88 
95 typedef void (* v4Comm_callBack)(BYTE, BYTE, BYTE *, int);
96 
97 
98 # ifdef __cplusplus
99 extern "C" {
100 # endif
101 
105 void
107 
111 void
113 
117 void
119 
123 void
125 
129 void
131 
135 void
137 
141 void
143 
147 void
149 
153 void
155 
160 char *
161 SDK_Version();
162 
171 int
172 setAbsoluteLibraryPath(const char * absoluteLibraryPath);
173 
181 int
182 device_init();
183 
184 
227 int
228 device_setCurrentDevice(int deviceType);
229 
230 
236 int
237 device_close();
238 
597 void
598 device_getResponseCodeString(IN int returnCode, OUT char * despcrition);
599 
604 int
606 
613 int
614 device_isAttached(int deviceType);
615 
624 int
625 device_getFirmwareVersion(OUT char * firmwareVersion);
626 
638 int
639 device_getFirmwareVersion_Len(OUT char * firmwareVersion, IN_OUT int * firmwareVersionLen);
640 
646 int
648 
666 // int device_SendDataCommand(IN BYTE* cmd, IN int cmdLen, OUT BYTE* response, IN_OUT int *respLen);
667 int
668 device_SendDataCommand(IN BYTE * cmd, IN int cmdLen, IN BYTE * data, IN int dataLen, OUT BYTE * response,
669  IN_OUT int * respLen);
670 
696 int
697 device_updateFirmware(IN BYTE * firmwareData, IN int firmwareDataLen, IN char * firmwareName, IN int encryptionType,
698  IN BYTE * keyBlob, IN int keyBlobLen);
699 
709 int
711 
734 // intervalOn = 500, int intervalOff = 500
735 int
736 device_controlLED(byte indexLED, byte control, int intervalOn, int intervalOff);
737 
738 
752 int
753 device_controlLED_ICC(int controlMode, int interval);
754 
775 // int intervalOn = 500, int intervalOff = 500)
776 
777 int
778 device_controlLED_MSR(byte control, int intervalOn, int intervalOff);
779 
793 int
794 device_controlBeep(int index, int frequency, int duration);
795 
831 int
832 device_getDRS(BYTE * codeDRS, int * codeDRSLen);
833 
899 int
900 device_getKeyStatus(int * newFormat, BYTE * status, int * statusLen);
901 
910 int
912 
922 void
923 device_setSDKWaitTime(int waitTime);
924 
933 int
935 
943 void
944 device_setThreadStackSize(int threadSize);
945 
954 int
955 config_getModelNumber(OUT char * sNumber);
956 
968 int
969 config_getModelNumber_Len(OUT char * sNumber, IN_OUT int * sNumberLen);
970 
981 int
982 config_getSerialNumber(OUT char * sNumber);
983 
993 int
994 config_getSerialNumber_Len(OUT char * sNumber, IN_OUT int * sNumberLen);
995 
1010 int
1011 config_setLEDController(IN int firmwareControlMSRLED, IN int firmwareControlICCLED);
1012 
1026 int
1027 config_getLEDController(OUT int * firmwareControlMSRLED, OUT int * firmwareControlICCLED);
1028 
1038 int
1039 config_setBeeperController(IN int firmwareControlBeeper);
1040 
1049 int
1050 config_getBeeperController(OUT int * firmwareControlBeeper);
1051 
1071 int
1072 config_setEncryptionControl(IN int msr, IN int icc);
1073 
1093 int
1094 config_getEncryptionControl(OUT int * msr, OUT int * icc);
1095 
1106 int
1107 icc_enable(IN int withNotification);
1108 
1114 int
1115 icc_disable();
1116 
1126 int
1127 icc_powerOnICC(OUT BYTE * ATR, IN_OUT int * inLen);
1128 
1139 int
1140 icc_powerOffICC();
1141 
1155 int
1156 icc_exchangeAPDU(IN BYTE * c_APDU, IN int cLen, OUT BYTE * reData, IN_OUT int * reLen);
1157 
1190 int
1191 icc_exchangeEncryptedAPDU(IN BYTE * c_APDU, IN int cLen, OUT BYTE * reData, IN_OUT int * reLen);
1192 
1203 int
1204 icc_getAPDU_KSN(OUT BYTE * KSN, IN_OUT int * inLen);
1205 
1217 int
1218 icc_getFunctionStatus(OUT int * enabled, OUT int * withNotification);
1219 
1230 int
1231 icc_getICCReaderStatus(OUT BYTE * status);
1232 
1244 int
1245 icc_getKeyFormatForICCDUKPT(OUT BYTE * format);
1246 
1259 int
1260 icc_getKeyTypeForICCDUKPT(OUT BYTE * type);
1261 
1272 int
1273 emv_getEMVKernelVersion(OUT char * version);
1274 
1285 int
1286 emv_getEMVKernelVersion_Len(OUT char * version, IN_OUT int * versionLen);
1287 
1297 int
1298 emv_getEMVKernelCheckValue(OUT BYTE * checkValue, IN_OUT int * checkValueLen);
1299 
1308 int
1309 emv_getEMVConfigurationCheckValue(OUT BYTE * checkValue, IN_OUT int * checkValueLen);
1310 
1315 void
1316 emv_allowFallback(IN int allow);
1317 
1323 void
1324 emv_setAutoAuthenticateTransaction(IN int authenticate);
1325 
1331 void
1332 emv_setAutoCompleteTransaction(IN int complete);
1333 
1338 int
1340 
1345 int
1347 
1369 int
1370 emv_startTransaction(IN double amount, IN double amtOther, IN int exponent, IN int type, IN int timeout, IN BYTE * tags,
1371  IN int tagsLen, IN int forceOnline);
1372 
1373 
1392 int
1393 emv_activateTransaction(IN int timeout, IN BYTE * tags, IN int tagsLen, IN int forceOnline);
1394 
1399 void
1400 device_setTransactionExponent(int exponent);
1401 
1429 int
1430 device_startTransaction(IN double amount,
1431  IN double amtOther,
1432  IN int type,
1433  IN const int _timeout,
1434  IN BYTE * tags,
1435  IN int tagsLen);
1436 
1453 int
1454 emv_authenticateTransaction(IN BYTE * updatedTLV, IN int updatedTLVLen);
1455 
1473 int
1474 emv_authenticateTransactionWithTimeout(IN int timeout, IN BYTE * updatedTLV, IN int updatedTLVLen);
1475 
1495 int
1496 emv_completeTransaction(IN int commError, IN BYTE * authCode, IN int authCodeLen,
1497  IN BYTE * iad, IN int iadLen, IN BYTE * tlvScripts, IN int tlvScriptsLen, IN BYTE * tlv, IN int tlvLen);
1498 
1505 int
1507 
1512 int
1514 
1528 int
1529 emv_retrieveTransactionResult(IN BYTE * tags, IN int tagsLen, IDTTransactionData * cardData);
1530 
1546 int
1547 emv_callbackResponseLCD(IN int type, byte selection);
1548 
1560 int
1561 emv_callbackResponseMSR(IN BYTE * MSR, IN_OUT int MSRLen);
1562 
1575 int
1576 emv_retrieveApplicationData(IN BYTE * AID, IN int AIDLen, OUT BYTE * tlv, IN_OUT int * tlvLen);
1577 
1590 int
1591 emv_setApplicationData(IN BYTE * name, IN int nameLen, IN BYTE * tlv, IN int tlvLen);
1592 
1602 int
1603 emv_removeApplicationData(IN BYTE * AID, IN int AIDLen);
1604 
1614 int
1616 
1628 int
1629 emv_retrieveAIDList(OUT BYTE * AIDList, IN_OUT int * AIDListLen);
1630 
1642 int
1643 emv_retrieveTerminalData(OUT BYTE * tlv, IN_OUT int * tlvLen);
1644 
1656 int
1657 emv_setTerminalData(IN BYTE * tlv, IN int tlvLen);
1658 
1667 int
1669 
1690 int
1691 emv_retrieveCAPK(IN BYTE * capk, IN int capkLen, OUT BYTE * key, IN_OUT int * keyLen);
1692 
1711 int
1712 emv_setCAPK(IN BYTE * capk, IN int capkLen);
1713 
1724 int
1725 emv_removeCAPK(IN BYTE * capk, IN int capkLen);
1726 
1735 int
1737 
1748 int
1749 emv_retrieveCAPKList(OUT BYTE * keys, IN_OUT int * keysLen);
1750 
1759 int
1760 emv_retrieveTerminalID(OUT char * terminalID);
1761 
1770 int
1771 emv_retrieveTerminalID_Len(OUT char * terminalID, IN_OUT int * terminalIDLen);
1772 
1779 int
1780 emv_setTerminalID(IN char * terminalID);
1781 
1792 int
1793 emv_retrieveCRL(OUT BYTE * list, IN_OUT int * lssLen);
1794 
1807 int
1808 emv_setCRL(IN BYTE * list, IN int lsLen);
1809 
1820 int
1821 emv_removeCRL(IN BYTE * list, IN int lsLen);
1822 
1832 int
1834 
1842 int
1843 msr_getMSRData(OUT BYTE * reData, IN_OUT int * reLen);
1844 
1850 int
1852 
1859 int
1860 msr_startMSRSwipe(IN int _timeout);
1861 
1868 void
1869 parseMSRData(IN BYTE * resData, IN int resLen, IN_OUT IDTMSRData * cardData);
1870 
1882 int
1883 msr_getKeyFormatForICCDUKPT(OUT BYTE * format);
1884 
1897 int
1898 msr_getKeyTypeForICCDUKPT(OUT BYTE * type);
1899 
1911 int
1912 msr_setKeyFormatForICCDUKPT(IN BYTE format);
1913 
1925 int
1926 msr_setKeyTypeForICCDUKPT(IN BYTE type);
1927 
1946 int
1947 msr_captureMode(IN int isBufferMode, IN int withNotification);
1948 
1961 int
1962 msr_setSetting(IN BYTE setting, IN BYTE * val, IN int valLen);
1963 
1978 int
1979 msr_getSetting(IN byte setting, OUT BYTE * value, IN_OUT int * valueLen);
1980 
1995 int
1996 msr_setSwipeForcedEncryptionOption(IN int track1, IN int track2, IN int track3, IN int track3card0);
1997 
2011 int
2013 
2028 int
2029 msr_setSwipeMaskOption(IN int track1, IN int track2, IN int track3);
2030 
2046 int
2047 msr_getSwipeMaskOption(OUT BYTE * option);
2048 
2059 int
2060 msr_setExpirationMask(IN int mask);
2061 
2071 int
2072 msr_getExpirationMask(OUT BYTE * value);
2073 
2082 int
2083 msr_setClearPANID(IN BYTE val);
2084 
2096 int
2097 msr_getClearPANID(OUT BYTE * value);
2098 
2104 int
2105 msr_disable();
2106 
2114 int
2116 
2117 # ifdef __cplusplus
2118 }
2119 # endif
2120 
2121 
2122 #endif // ifndef __LIBIDT_AUGUSTA_H___
2123 
int pin_cancelPINEntry()
void(* httpComm_callBack)(BYTE *, int)
Definition: libIDT_Augusta.h:87
int icc_enable(IN int withNotification)
int msr_cancelMSRSwipe()
int device_controlLED_ICC(int controlMode, int interval)
int emv_getAutoAuthenticateTransaction()
int emv_retrieveCRL(OUT BYTE *list, IN_OUT int *lssLen)
int emv_authenticateTransaction(IN BYTE *updatedTLV, IN int updatedTLVLen)
int device_isAttached(int deviceType)
void device_getResponseCodeString(IN int returnCode, OUT char *despcrition)
int emv_setCAPK(IN BYTE *capk, IN int capkLen)
int msr_getSwipeForcedEncryptionOption(OUT BYTE *option)
int emv_activateTransaction(IN int timeout, IN BYTE *tags, IN int tagsLen, IN int forceOnline)
int emv_cancelTransaction()
void(* pFW_callBack)(int, int, int, int, int)
Definition: libIDT_Augusta.h:69
int device_getKeyStatus(int *newFormat, BYTE *status, int *statusLen)
void(* pPIN_callBack)(int, IDTPINData *)
Definition: libIDT_Augusta.h:51
int emv_removeAllApplicationData()
int msr_setExpirationMask(IN int mask)
int config_getModelNumber(OUT char *sNumber)
void device_setTransactionExponent(int exponent)
int emv_removeTerminalData()
int emv_setCRL(IN BYTE *list, IN int lsLen)
int emv_callbackResponseLCD(IN int type, byte selection)
int config_setEncryptionControl(IN int msr, IN int icc)
int device_getThreadStackSize()
int emv_getEMVKernelVersion_Len(OUT char *version, IN_OUT int *versionLen)
char * SDK_Version()
int config_setLEDController(IN int firmwareControlMSRLED, IN int firmwareControlICCLED)
int msr_setSwipeForcedEncryptionOption(IN int track1, IN int track2, IN int track3, IN int track3card0)
#define OUT
int device_SendDataCommand(IN BYTE *cmd, IN int cmdLen, IN BYTE *data, IN int dataLen, OUT BYTE *response, IN_OUT int *respLen)
int msr_captureMode(IN int isBufferMode, IN int withNotification)
int icc_powerOffICC()
int emv_getEMVKernelCheckValue(OUT BYTE *checkValue, IN_OUT int *checkValueLen)
int msr_getKeyTypeForICCDUKPT(OUT BYTE *type)
int emv_getEMVConfigurationCheckValue(OUT BYTE *checkValue, IN_OUT int *checkValueLen)
void emv_registerCallBk(pEMV_callBack pEMVf)
int msr_setKeyTypeForICCDUKPT(IN BYTE type)
int emv_authenticateTransactionWithTimeout(IN int timeout, IN BYTE *updatedTLV, IN int updatedTLVLen)
void msr_registerCallBk(pMSR_callBack pMSRf)
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)
void msr_registerCallBkp(pMSR_callBackp pMSRf)
void pin_registerCallBk(pPIN_callBack pPINf)
int device_startTransaction(IN double amount, IN double amtOther, IN int type, IN const int _timeout, IN BYTE *tags, IN int tagsLen)
void device_registerCardStatusFrontSwitchCallBk(pCSFS_callBack pCSFSf)
int emv_retrieveCAPKList(OUT BYTE *keys, IN_OUT int *keysLen)
int emv_callbackResponseMSR(IN BYTE *MSR, IN_OUT int MSRLen)
int device_getFirmwareVersion(OUT char *firmwareVersion)
void parseMSRData(IN BYTE *resData, IN int resLen, IN_OUT IDTMSRData *cardData)
int emv_removeApplicationData(IN BYTE *AID, IN int AIDLen)
int emv_setTerminalID(IN char *terminalID)
int msr_setSwipeMaskOption(IN int track1, IN int track2, IN int track3)
int device_close()
void registerHotplugCallBk(pMessageHotplug pMsgHotplug)
void device_registerFWCallBk(pFW_callBack pFWf)
int emv_retrieveTransactionResult(IN BYTE *tags, IN int tagsLen, IDTTransactionData *cardData)
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(* pCSFS_callBack)(BYTE status)
Definition: libIDT_Augusta.h:63
int msr_getExpirationMask(OUT BYTE *value)
int emv_retrieveTerminalID_Len(OUT char *terminalID, IN_OUT int *terminalIDLen)
int config_getModelNumber_Len(OUT char *sNumber, IN_OUT int *sNumberLen)
int device_isConnected()
void emv_setAutoCompleteTransaction(IN int complete)
void(* v4Comm_callBack)(BYTE, BYTE, BYTE *, int)
Definition: libIDT_Augusta.h:95
int icc_getKeyFormatForICCDUKPT(OUT BYTE *format)
int emv_retrieveTerminalID(OUT char *terminalID)
int msr_setKeyFormatForICCDUKPT(IN BYTE format)
int icc_getFunctionStatus(OUT int *enabled, OUT int *withNotification)
int device_getCurrentDeviceType()
int config_getEncryptionControl(OUT int *msr, OUT int *icc)
int emv_removeCAPK(IN BYTE *capk, IN int capkLen)
void(* pMSR_callBackp)(int, IDTMSRData *)
Definition: libIDT_Augusta.h:45
int icc_getKeyTypeForICCDUKPT(OUT BYTE *type)
int device_controlLED(byte indexLED, byte control, int intervalOn, int intervalOff)
int emv_getEMVKernelVersion(OUT char *version)
void device_setThreadStackSize(int threadSize)
int device_controlBeep(int index, int frequency, int duration)
int msr_getSetting(IN byte setting, OUT BYTE *value, IN_OUT int *valueLen)
void device_registerCameraCallBk(pCMR_callBack pCMRf)
int config_getSerialNumber_Len(OUT char *sNumber, IN_OUT int *sNumberLen)
void(* pSendDataLog)(BYTE *, int)
Definition: libIDT_Augusta.h:21
int msr_getClearPANID(OUT BYTE *value)
int device_cancelTransaction()
void device_setSDKWaitTime(int waitTime)
void emv_setAutoAuthenticateTransaction(IN int authenticate)
int msr_disable()
int device_setCurrentDevice(int deviceType)
int device_getFirmwareVersion_Len(OUT char *firmwareVersion, IN_OUT int *firmwareVersionLen)
int emv_setApplicationData(IN BYTE *name, IN int nameLen, IN BYTE *tlv, IN int tlvLen)
int emv_retrieveCAPK(IN BYTE *capk, IN int capkLen, OUT BYTE *key, IN_OUT int *keyLen)
int emv_removeAllCAPK()
int device_rebootDevice()
void(* pMSR_callBack)(int, IDTMSRData)
Definition: libIDT_Augusta.h:39
void(* pCMR_callBack)(int, IDTCMRData *)
Definition: libIDT_Augusta.h:57
int emv_retrieveAIDList(OUT BYTE *AIDList, IN_OUT int *AIDListLen)
#define IN_OUT
void emv_allowFallback(IN int allow)
int emv_setTerminalData(IN BYTE *tlv, IN int tlvLen)
void(* pMessageHotplug)(int, int)
Definition: libIDT_Augusta.h:15
int device_getSDKWaitTime()
int setAbsoluteLibraryPath(const char *absoluteLibraryPath)
int config_getSerialNumber(OUT char *sNumber)
void registerLogCallBk(pSendDataLog pFSend, pReadDataLog pFRead)
int msr_getSwipeMaskOption(OUT BYTE *option)
int icc_exchangeAPDU(IN BYTE *c_APDU, IN int cLen, OUT BYTE *reData, IN_OUT int *reLen)
int emv_retrieveApplicationData(IN BYTE *AID, IN int AIDLen, OUT BYTE *tlv, IN_OUT int *tlvLen)
int emv_getAutoCompleteTransaction()
int config_setBeeperController(IN int firmwareControlBeeper)
int icc_getAPDU_KSN(OUT BYTE *KSN, IN_OUT int *inLen)
int device_controlLED_MSR(byte control, int intervalOn, int intervalOff)
int config_getLEDController(OUT int *firmwareControlMSRLED, OUT int *firmwareControlICCLED)
int icc_powerOnICC(OUT BYTE *ATR, IN_OUT int *inLen)
int emv_removeAllCRL()
int msr_startMSRSwipe(IN int _timeout)
int msr_getMSRData(OUT BYTE *reData, IN_OUT int *reLen)
void(* pReadDataLog)(BYTE *, int)
Definition: libIDT_Augusta.h:27
int icc_exchangeEncryptedAPDU(IN BYTE *c_APDU, IN int cLen, OUT BYTE *reData, IN_OUT int *reLen)
int emv_retrieveTerminalData(OUT BYTE *tlv, IN_OUT int *tlvLen)
int device_getDRS(BYTE *codeDRS, int *codeDRSLen)
int config_getBeeperController(OUT int *firmwareControlBeeper)
int device_updateFirmware(IN BYTE *firmwareData, IN int firmwareDataLen, IN char *firmwareName, IN int encryptionType, IN BYTE *keyBlob, IN int keyBlobLen)
int msr_setClearPANID(IN BYTE val)
#define IN
int icc_getICCReaderStatus(OUT BYTE *status)
int msr_getKeyFormatForICCDUKPT(OUT BYTE *format)
int icc_disable()
void(* ftpComm_callBack)(int, int, int)
Definition: libIDT_Augusta.h:81
int device_init()
int emv_removeCRL(IN BYTE *list, IN int lsLen)
void(* pEMV_callBack)(int, int, BYTE *, int, IDTTransactionData *, EMV_Callback *, int)
Definition: libIDT_Augusta.h:33
int msr_setSetting(IN BYTE setting, IN BYTE *val, IN int valLen)