watchdog_impl.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #ifndef LIBFRAMEWORK_WATCHDOG_IMPL_H
  2. #define LIBFRAMEWORK_WATCHDOG_IMPL_H
  3. #include "WatchDogClass.h"
  4. class WatchDogClassImpl : public WatchDogClass
  5. {
  6. public:
  7. WatchDogClassImpl();
  8. ~WatchDogClassImpl();
  9. //DeviceBaseClass
  10. ErrorCodeEnum GetDevCategory(DevCategoryInfo &devCategory);
  11. ErrorCodeEnum Reset();
  12. ErrorCodeEnum DevClose();
  13. ErrorCodeEnum GetLastErr(DevErrorInfo &devErrInfo);
  14. //
  15. // Initialization,make preparation for working.
  16. //
  17. virtual ErrorCodeEnum DevOpen();
  18. //
  19. // Conifgure watchdog.
  20. // Watchdog start to work in [dwDelay] second.It must be feed in every [dwTimeout]
  21. // period or it will restart the computer.
  22. // Arguments:
  23. // - dwDelay:time to start watching(in second)
  24. // - dwTimeout:max time period to feed dog(in second)
  25. //
  26. virtual ErrorCodeEnum StartWatch(DWORD dwDelay, DWORD dwTimeout);
  27. //
  28. // Stop watchdog.
  29. //
  30. virtual ErrorCodeEnum StopWatch();
  31. //
  32. // Feed watchdog.
  33. //
  34. virtual ErrorCodeEnum RefreshDog();
  35. private:
  36. int m_mode;
  37. };
  38. #endif //LIBFRAMEWORK_WATCHDOG_IMPL_H