watchdog.nantian.h 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. //基类
  2. #include "WatchDogClass.h"
  3. //辅助类
  4. #include "CILIX_AUX_UTILS.h"
  5. #include "WATCHDOG.h"
  6. #ifdef __cplusplus
  7. extern "C"
  8. {
  9. #endif
  10. #pragma pack(push, 1)
  11. #define WDT_API __attribute__((visibility("default")))
  12. typedef WATCHDOG *(*pCreat_WATCHDOG)();
  13. typedef void *(*pDestory_WATCHDOG)(WATCHDOG *p);
  14. class watchdog_nantian : public WatchDogClass
  15. {
  16. public:
  17. watchdog_nantian(void);
  18. ~watchdog_nantian();
  19. public:
  20. //通用接口
  21. ErrorCodeEnum GetDevCategory(DevCategoryInfo &devCategory);
  22. ErrorCodeEnum Reset();
  23. ErrorCodeEnum DevClose();
  24. ErrorCodeEnum GetLastErr(DevErrorInfo &devErrInfo);
  25. //wdt
  26. ErrorCodeEnum DevOpen();
  27. ErrorCodeEnum StartWatch(DWORD dwDelay, DWORD dwTimeout);
  28. ErrorCodeEnum StopWatch();
  29. ErrorCodeEnum RefreshDog();
  30. private:
  31. void *dplHandle;
  32. WATCHDOG *m_device;
  33. CILIXTrace *m_trace;
  34. DevErrorInfo m_errorInfo;
  35. bool LoadNTDRVSO();
  36. pCreat_WATCHDOG VC_Creat_WATCHDOG;
  37. pDestory_WATCHDOG VC_Destory_WATCHDOG;
  38. };
  39. WDT_API ErrorCodeEnum CreateDevComponent(DeviceBaseClass *&baseObj);
  40. WDT_API ErrorCodeEnum ReleaseDevComponent(DeviceBaseClass *&pBaseObj);
  41. #pragma pack(pop)
  42. #ifdef __cplusplus
  43. }
  44. #endif