00001 // WatchdogTimer.hpp 00002 // Copyright (c) SICK AG 00003 // created: 06.06.2011 00004 00005 #ifndef WATCHDOGTIMER_HPP 00006 #define WATCHDOGTIMER_HPP 00007 00008 #include "../BasicDatatypes.hpp" 00009 //#include <sys/time.h> 00010 #include "Time.hpp" 00011 00013 // 00014 // 00015 // 00016 class WatchdogTimer 00017 { 00018 public: 00020 WatchdogTimer(); 00021 00023 virtual ~WatchdogTimer(); 00024 00025 void reset(); 00026 00027 void start(UINT32 seconds); // Initializes and starts the timer. 00028 00030 void start(const TimeDuration interval); 00031 00032 bool isElapsed(); 00033 00034 private: 00035 Time m_nextElapseTime; 00036 TimeDuration m_timeoutInterval; 00037 }; 00038 00039 00040 #endif // WATCHDOGTIMER_HPP