OemBusUnit.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. #define OEMBUSUNIT_API
  2. #define OEMBUSUNIT_C_API extern "C"
  3. #include "LogicDriver.h"
  4. //OEMBUSUNIT_C_API DPC* GetDPC();
  5. //OEMBUSUNIT_C_API void ReleaseDPC(DPC *p);
  6. //class OEMBUSUNIT_API BusUnitDPC : public DPC
  7. //{
  8. // std::string *m_pWorkpath;
  9. //public:
  10. // BusUnitDPC(void);
  11. // virtual ~BusUnitDPC(void);
  12. //
  13. // virtual bool DpcEntry(ResDataObject &Configuration);
  14. //
  15. // virtual ResDataObject GetConnectionType();
  16. //
  17. // virtual bool Connect(ResDataObject &Connection);
  18. //
  19. // virtual bool Probe(ResDataObject &HardwareInfo);
  20. //
  21. // virtual bool SetWorkPath(const char *pWorkPath);
  22. //
  23. // virtual PVOID LoadLogicDevices();
  24. //
  25. // virtual void UnloadLogicDevices(PVOID p);
  26. //
  27. // virtual bool DisConnect();
  28. //
  29. //};
  30. class OEMBUSUNIT_API BusUnitDPC : public LogicDriver
  31. {
  32. std::shared_ptr< LinuxEvent> m_ExitFlag;
  33. string *m_pWorkpath;
  34. LogicDevice *m_pRootDevice;
  35. bool m_FirstLoad;
  36. public:
  37. BusUnitDPC(void);
  38. virtual ~BusUnitDPC(void);
  39. virtual bool DriverEntry(ResDataObject &Configuration);
  40. virtual bool SYSTEM_CALL Driver_Probe(ResDataObject& PARAM_OUT HardwareInfo);
  41. virtual void SubscribeSelf() override;
  42. virtual void OnSetClientID() override;
  43. //virtual RET_STATUS ProcessRequest(ResDataObject* pCmd, PACKET_CMD cmd) override;
  44. virtual bool SetDriverWorkPath(const char *pWorkPath);
  45. virtual PVOID SYSTEM_CALL LoadDriver();//ÎÞ¸ù½Úµã
  46. virtual void SYSTEM_CALL UnloadDriver();
  47. void SYSTEM_CALL UnloadAllRegistedDrivers();
  48. void SetExitFlag();
  49. //actions
  50. virtual bool Connect();
  51. virtual void DisConnect();
  52. //virtual bool SYSTEM_CALL GetDeviceType(GUID &DevType);
  53. virtual bool SYSTEM_CALL Device_Probe(ResDataObject& PARAM_OUT HardwareInfo);
  54. virtual bool SYSTEM_CALL SetDeviceWorkPath(const char * PARAM_IN pWorkPath);
  55. virtual PVOID LoadLogicDevices();
  56. virtual void UnloadLogicDevices();
  57. RET_STATUS SYSTEM_CALL GetDriverDictionary(ResDataObject& PARAM_OUT DriverInfo);
  58. virtual DWORD SYSTEM_CALL OnNotify(std::vector <std::shared_ptr<LinuxEvent>> evtList, DWORD count);
  59. };
  60. OEMBUSUNIT_C_API DriverDPC* GetDriverDPC();
  61. OEMBUSUNIT_C_API void ReleaseDriverDPC(DriverDPC *p);