/* * WatchdogCore.h * * Created on: July 2017 * Author: wentzelc */ #ifndef REDACORE_WATCHDOGCORE_H_ #define REDACORE_WATCHDOGCORE_H_ // Standard C/C++ Libraries /* none */ // redA Libraries #include "SelectableCore.h" #include "LiteProtocolCore.h" //--------------------------------------------------------------------------- // Function Constructor #define TYPE_WATCHDOG "Watchdog" CFunctionCore * NewWatchdogCore( const char * Name ); //--------------------------------------------------------------------------- class CWatchdogCore : public CSelectableCore { private: // Command CLiteProtocol * Protocol; // Timing timeval PingTimer; int PingInterval; // Handle THandle * Ping; public: // Life Cycle CWatchdogCore( const char * pName, const char * pType = TYPE_WATCHDOG ); virtual ~CWatchdogCore(); // Manually set Configuration bool SetInterval( int pPingInterval ); // Initialisation virtual bool Init( CDataMember * FunctionConfig ); // Process virtual bool Process(); }; //--------------------------------------------------------------------------- #endif /* REDACORE_WATCHDOGCORE_H_ */