BusUnitClient.h 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #pragma once
  2. #define BUSUNITCLIENT_API
  3. #include "LogicClient.h"
  4. #include "BusUnitLogic.h"
  5. // 此类是从 BusUnitClient.dll 导出的
  6. // Bus客户端
  7. class BUSUNITCLIENT_API BusUnitClient : public BusUnitLogic, public LogicClient
  8. {
  9. public:
  10. //BusUnitClient(void);
  11. virtual ~BusUnitClient(void);
  12. BusUnitClient(string szClientName, string szType = "");
  13. // TODO: 在此添加您的方法。
  14. //内部实现设备的Open
  15. BusUnitClient& operator = (const BusUnitClient &tValue);
  16. virtual int Open(const char *pPath, int flags, DWORD timeout = INFINITE);
  17. virtual void SubscribeSelf() override;
  18. virtual PACKET_CMD ReadCmd(ResDataObject &CmdObject);
  19. //get device resource
  20. virtual RET_STATUS SYSTEM_CALL GetDeviceResource(ResDataObject PARAM_OUT *pDeviceResource);
  21. //ResourceCommand Request In and Response Out
  22. virtual RET_STATUS SYSTEM_CALL Request(ResDataObject PARAM_IN *pRequest, ResDataObject PARAM_OUT *pResponse);
  23. //notify to lower layer
  24. //notify&response from real logic device
  25. virtual RET_STATUS SYSTEM_CALL CmdToLogicDev(ResDataObject PARAM_IN *pCmd);
  26. //Data Access
  27. virtual int AddDeviceDescrpt(const char PARAM_IN *pDevPath, const char PARAM_IN *pTargetType, const char PARAM_IN *pMachineId, UINT64 ProcId, UINT64 Addr, bool forceAdd = false);
  28. virtual int DelDeviceDescrpt(const char PARAM_IN *pDevPath);
  29. virtual int ExitDriverProc();
  30. virtual int SetDeviceStatus(int PARAM_IN DevStatus);
  31. virtual int SetEthBusSwitch(int Switch);//设置网络EBUS开关
  32. virtual int SetEthBusRouterIp(const char PARAM_IN *pRouterIp);//设置网络EBUS的RouterIp
  33. bool GetDeviceUsage();
  34. virtual int ForTest(bool Flag);
  35. };