|
@@ -0,0 +1,158 @@
|
|
|
+#pragma once
|
|
|
+
|
|
|
+#ifdef LIBCARDISSUERLOADER_EXPORTS
|
|
|
+#define LIBSUBDEVICELOADER_API __declspec(dllexport)
|
|
|
+#else
|
|
|
+#define LIBSUBDEVICELOADER_API __declspec(dllimport)
|
|
|
+#pragma comment(lib, "libCardIssuerLoader.lib")
|
|
|
+#endif
|
|
|
+
|
|
|
+#include "CardIssuerClass.h"
|
|
|
+
|
|
|
+#ifdef __cplusplus
|
|
|
+extern "C" {
|
|
|
+#endif
|
|
|
+
|
|
|
+ struct Bridge_CardIssuerStatus
|
|
|
+ {
|
|
|
+ int eMedia;
|
|
|
+ int eRetainBin;
|
|
|
+ DWORD dwRetainCount;
|
|
|
+ int eIssuerBin[12];
|
|
|
+ DWORD dwIssuerCount[12];
|
|
|
+ int eKakuTape[8];
|
|
|
+ };
|
|
|
+ struct Bridge_SAMStatus
|
|
|
+ {
|
|
|
+ int isActive;
|
|
|
+ int chosenOfSAM;
|
|
|
+ };
|
|
|
+
|
|
|
+ struct Bridge_SCIKeyInfo
|
|
|
+ {
|
|
|
+ BYTE key[MAX_WORKING_KEY_SIZE];
|
|
|
+ DWORD dwSize;
|
|
|
+ };
|
|
|
+ struct Bridge_SCICheckCode
|
|
|
+ {
|
|
|
+ BYTE code[MAX_CHECK_CODE_SIZE];
|
|
|
+ DWORD dwSize;
|
|
|
+ };
|
|
|
+ struct Bridge_SCITempData
|
|
|
+ {
|
|
|
+ BYTE data[MAX_TEMP_DATA_SIZE];
|
|
|
+ DWORD dwSize;
|
|
|
+ };
|
|
|
+
|
|
|
+ struct Bridge_KakuPrintInfo
|
|
|
+ {
|
|
|
+ char formPath[MAX_KAKU_FILE_SIZE];
|
|
|
+ char fields[MAX_KAKU_FIELDS_SIZE];
|
|
|
+ };
|
|
|
+
|
|
|
+ //////////////////////////////////////////////////////////////////////////
|
|
|
+
|
|
|
+ struct Bridge_TrackInfo
|
|
|
+ {
|
|
|
+ int eSource;
|
|
|
+ int eStatus;
|
|
|
+ DWORD dwSize;
|
|
|
+ BYTE data[MAX_MAG_TRACK_SIZE];
|
|
|
+ };
|
|
|
+
|
|
|
+ struct Bridge_MagTracks
|
|
|
+ {
|
|
|
+ int eRange;
|
|
|
+ Bridge_TrackInfo track[MAX_MAG_TRACK_NUM];
|
|
|
+ };
|
|
|
+
|
|
|
+ struct Bridge_CmdInfo
|
|
|
+ {
|
|
|
+ DWORD dwSize;
|
|
|
+ BYTE data[MAX_IC_BUFFER_SIZE];
|
|
|
+ };
|
|
|
+
|
|
|
+ struct Bridge_CardNo
|
|
|
+ {
|
|
|
+ DWORD dwSize;
|
|
|
+ DWORD dwTrack2Size;
|
|
|
+ DWORD dwTrack3Size;
|
|
|
+ char account[MAX_MAG_TRACK_SIZE];
|
|
|
+ char track2[MAX_MAG_TRACK_SIZE];
|
|
|
+ char track3[MAX_MAG_TRACK_SIZE];
|
|
|
+ };
|
|
|
+
|
|
|
+ struct Bridge_SlotStatus
|
|
|
+ {
|
|
|
+ DWORD dwSize;//sum of slots
|
|
|
+ BYTE status[MAX_SLOT_BUFFER_SIZE];
|
|
|
+ };
|
|
|
+
|
|
|
+ //////////////////////////////////////////////////////////////////////////
|
|
|
+
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_LoadDevObject(const char* libraryPath);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ReleaseDevObject();
|
|
|
+ //////////////////////////////////////////////////////////////////////////
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_GetDevCategory(DevCategoryInfo* pDevCategory);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_Reset();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_DevClose();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_GetLastErr(DevErrorInfo* pDevErrInfo);
|
|
|
+ //////////////////////////////////////////////////////////////////////////
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_DevOpen(DWORD dwPort, DWORD dwBaudRate);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_GetDevStatus(Bridge_CardIssuerStatus* pDevStatus);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_GetDeviceSN(char** pDevSN);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_MoveCard(int eCardPos, int hopperNo);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SetCardInType(int eCardIn);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_MagRead(Bridge_MagTracks* pMagTracks);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_MagWrite(Bridge_MagTracks magTracks, int eWriteMode);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SetRetractCounter(DWORD dwCount);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SetIssuerCounter(DWORD dwCount, int hopperNo);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ActiveICCard();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ContactIC();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ReleaseIC();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_WarmReset();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ICCommand(Bridge_CmdInfo sendBuf, Bridge_CmdInfo* pRecvBuf);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SAMActive(BYTE vcc);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SAMDeactivate();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SAMWarmReset();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SAMQueryStatus(Bridge_SAMStatus* pSamStatus);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SAMSelect(const int sn);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SAMCommand(Bridge_CmdInfo sendBuf, Bridge_CmdInfo* pRecvBuf);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ActiveICCardATR(Bridge_CmdInfo* pAtrBuf);
|
|
|
+
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_Print(BYTE** pData, const int dataSize, const int side);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_QueryPrinterStatus();
|
|
|
+
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ActiveContactlessICCard(char fstType, char scdType, char thdType, char* pOutType);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_DeactivateICCard();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_DeactContactlessICCard();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_MifareCommand(int eFunType, Bridge_CmdInfo sendBuf, Bridge_CmdInfo* pRecvBuf);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_RFTypeABCommand(Bridge_CmdInfo sendBuf, Bridge_CmdInfo* pRecvBuf);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_DevOpenEx(DWORD dwPort, DWORD dwBaudRate, BYTE btOpenType, const char* pDevSN, BYTE* pBtType);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_TransferEnInit(int* iStatus, BYTE** Cr1, int* lenR1, BYTE** Cr3, int* lenR3, BYTE** dKey, int* lenKey);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SetR2(int* iStatus, BYTE* pCr2, int lenR2);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SendWorkingKey(const char* pWorkingKey);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SLLoadKey(const Bridge_SCIKeyInfo key);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SLSetParam(int eType, int value);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SLLock();
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SLUnLock(const Bridge_SCICheckCode checkCode, int bTemp);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SLGetTempData(Bridge_SCITempData* pKsnData, Bridge_SCITempData* pRamData);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_SLOpenDoor(const Bridge_SCITempData data);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_BluetoothControl(int eCmd);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_BluetoothModifyKey(unsigned char* key);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_BluetoothModifyName(unsigned char* name);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_BluetoothGetVersion(char** pVersion);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_BluetoothGetConnectName(unsigned char** name);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_BluetoothGetSignalStrength(unsigned char** signal);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_LightControl(int eLight, int bOnOff);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_QueryBatteryPower(int* bat);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_MoveCardToSlot(int slot);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_MoveCardFromSlot(int slot);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_ReadAccount(Bridge_CardNo* pCardNo);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_GetSlotSum(int* sum);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_QuerySlotsStatus(Bridge_SlotStatus* slots, const int slot, int bFull);
|
|
|
+ LIBSUBDEVICELOADER_API ErrorCodeEnum Bridge_PrintCardFaceRightNow(const Bridge_KakuPrintInfo printInfo);
|
|
|
+
|
|
|
+#ifdef __cplusplus
|
|
|
+} // extern "C" {
|
|
|
+#endif
|