BranchDeviceClass.h 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /////////////////////////////////////////////////////////////////////////////////
  2. /// Copyright (c) 2017 China Merchants Bank, all rights reserved ///
  3. /// Adapter Interface for Branch Device. ///
  4. /// ///
  5. /// ///
  6. /////////////////////////////////////////////////////////////////////////////////
  7. #ifndef __BRANCH_DEVICE_CLASS_H
  8. #define __BRANCH_DEVICE_CLASS_H
  9. #include "DeviceBaseClass.h"
  10. class BranchDeviceClass : public DeviceBaseClass
  11. {
  12. public:
  13. //
  14. // 打开设备
  15. // @param1: 配置在root.ini中,打开设备所需的参数字符串,比如说波特率端口,由实现子类进行字符串额分割和解析
  16. // @param2: 配置在CenterSetting.ini中,分行全行通用的字符串,作用暂未定义,由分行决定其使用功能
  17. // 参数的配置方式见《可视化柜台分行特色硬件适配器开发说明.doc》
  18. //
  19. virtual ErrorCodeEnum DevOpen(const char *param1, const char *param2) = 0;
  20. //
  21. // 执行操作指令
  22. // @param: 指令内容
  23. // @retValue: 存储返回内容的字符串
  24. // @maxLen: 字符串的缓冲区长度
  25. //
  26. virtual ErrorCodeEnum ExecuteCmd(const char *param, char *&retValue, int maxLen) = 0;
  27. //
  28. // 设备状态检测
  29. // @status: 在函数返回 Error_Succeed 的前提下定义为有效,其余情况不作任何处理
  30. // 0:正常
  31. // 1:警告,提示性信息,上层可不处理,原则上可通过GetLastErr接口可提取具体的原因
  32. // 2:维护,设备可用,但需要上层发维护信息,分行通用实体将执行Reset接口函数
  33. // 3:故障,设备不可用,原则上可通过GetLastErr接口可提取具体的原因,分行通道实体将执行适配器加载进程重启操作
  34. //
  35. virtual ErrorCodeEnum QueryDevice(unsigned int &status) = 0;
  36. };
  37. #endif //__BRANCH_DEVICE_CLASS_H