ACT-Sankyo_DevCtrl.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. #pragma once
  2. #include "stdafx.h"
  3. #include "ACT_SDK_DevCtrlImpl.h"
  4. /* 字节对齐设置为1 */
  5. #pragma pack(push,1)
  6. class CACT_Sankyo_DevCtrl
  7. {
  8. public:
  9. CACT_Sankyo_DevCtrl(void);
  10. ~CACT_Sankyo_DevCtrl(void);
  11. public:
  12. WORD Open(DWORD dwPort, DWORD dwBaudRate);
  13. WORD Close();
  14. WORD GetDevStatus(LPDevStatus lpDevStatus);
  15. WORD GetDevSN(LPSTR lpDevSN);
  16. WORD GetVersion(LPSTR lpVersion);
  17. WORD GetCHUVersion(LPSTR lpVersion);
  18. WORD Reset(WORD wAction);
  19. WORD PermitInsertion(WORD wCardType);
  20. WORD DenyInsertion();
  21. WORD ReadTrackData(LPMediaData lpMediaData, int nMediaCnt);
  22. WORD WriteTrackData(LPMediaData lpMediaData, int nMediaCnt, WORD wMode);
  23. WORD EjectCard();
  24. WORD RetainCard();
  25. WORD ReIntakeCard();
  26. WORD DispenseCard(WORD wHopperNum);
  27. WORD ChipPower(WORD wChipPower);
  28. WORD ChipIO(LPChipIOData lpChipData);
  29. WORD ReturnOffRetractCounter();
  30. public:
  31. WORD CheckReleaseIC();
  32. public:
  33. WORD GetErrorDetail(LPDevErrDetail lpErrDetail, WORD wRes);
  34. WORD GetWarningDetail(LPDevErrDetail lpErrDetail, WORD wRes);
  35. WORD GetCRTErrCode(WORD wValue);
  36. private:
  37. WORD GetDevErrCode(LPREPLY lpErrReply);
  38. WORD GetCHUStatus(LPCRTCHUSensorInfo lpCHUInfo, LPBYTE lpbyStMark);
  39. WORD GetHopperStatus(LPCRTHoppersInfo lpHoppersInfo);
  40. WORD GetIccStatus(LPBYTE lpbyIccStatus);
  41. private:
  42. WORD SetWriteMode(WORD wMode);
  43. WORD WriteDataToTrack(const MediaData writeData);
  44. char* GetCOMPortString(DWORD dwCOM); //根据COM口编号获取相应的Linux下COM口的描述字符串
  45. private:
  46. CACT_SDK_DevCtrlImpl* m_pDevCtrlImpl;
  47. //此处需要根据实际的设备上COM 口数量 进行数组元素个数的配置修改,当前测试设备COM口数量为12个
  48. static Dev_COMInfo m_arrCOMInfo[18]; //存储COM 口映射关系数组
  49. };
  50. /* 恢复字节对齐方式 */
  51. #pragma pack(pop)