WheelUnitLogic.h 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. #pragma once
  2. // 下列 ifdef 块是创建使从 DLL 导出更简单的
  3. // 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 WHEELUNITLOGIC_EXPORTS
  4. // 符号编译的。在使用此 DLL 的
  5. // 任何其他项目上不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将
  6. // WHEELUNITLOGIC_API 函数视为是从 DLL 导入的,而此 DLL 则将用此宏定义的
  7. // 符号视为是被导出的。
  8. #ifndef WHEELUNITLOGIC_EXPORTS
  9. #ifdef _WIN64
  10. #ifdef _DEBUG
  11. #pragma comment(lib, "WheelUnitLogicX64D.lib")
  12. #else
  13. #pragma comment(lib, "WheelUnitLogicX64.lib")
  14. #endif
  15. #else
  16. #ifdef _DEBUG
  17. #pragma comment(lib, "WheelUnitLogicD.lib")
  18. #else
  19. #pragma comment(lib, "WheelUnitLogic.lib")
  20. #endif
  21. #endif
  22. #endif
  23. #ifdef WHEELUNITLOGIC_EXPORTS
  24. #define WHEELUNITLOGIC_API __declspec(dllexport)
  25. #else
  26. #define WHEELUNITLOGIC_API __declspec(dllimport)
  27. #endif
  28. #include "LogicDevice.h"
  29. class WHEELUNITLOGIC_API WheelUnitLogic : public LogicDevice
  30. {
  31. protected:
  32. BaseJsonDataObject<bool> *m_Status;//Wheel Rolling status
  33. public:
  34. WheelUnitLogic(void);
  35. virtual ~WheelUnitLogic(void);
  36. //get device type
  37. virtual bool SYSTEM_CALL GetDeviceType(GUID &DevType);
  38. //get device resource
  39. virtual RET_STATUS SYSTEM_CALL GetDeviceResource(ResDataObject PARAM_OUT *pDeviceResource);
  40. //ResourceCommand Request In and Response Out
  41. virtual RET_STATUS SYSTEM_CALL Request(ResDataObject PARAM_IN *pRequest, ResDataObject PARAM_OUT *pResponse);
  42. //notify to lower layer
  43. virtual RET_STATUS SYSTEM_CALL CmdToLogicDev(ResDataObject PARAM_IN *pCmd);
  44. //errors,warnings
  45. void SetErrorInfo(int errCode, char *pErrInfo);
  46. void SetWarningInfo(int warningCode, char *pWarningInfo);
  47. //Data Access
  48. virtual int DATA_ACTION GetStatus(bool PARAM_OUT &status);
  49. virtual int DATA_ACTION SetStatus(bool PARAM_IN status);
  50. //Actions
  51. virtual int DEVICE_ACTION StartRoll();
  52. virtual int DEVICE_ACTION StopRoll();
  53. virtual bool DEVICE_SUPPORT Support_GetStatus();
  54. virtual bool DEVICE_SUPPORT Support_SetStatus();
  55. virtual bool DEVICE_SUPPORT Support_StartRoll();
  56. virtual bool DEVICE_SUPPORT Support_StopRoll();
  57. virtual int DEVICE_ACTION ChangeStatus(bool PARAM_IN st);
  58. virtual bool DEVICE_SUPPORT Support_ChangeStatus();
  59. };