- Library Clean up: - Removed all unused C/C++ libraries from source - First C/C++ libraries then redA libraries - Library changes: - renamed BufferCore -> CharBufferCore - added ItemBufferCore - CharBufferCore: - Derive RollingBuffer & ShiftBuffer from common class CharBuffer - CharBuffer is mostly a virtual class (interface)
53 lines
1021 B
C++
53 lines
1021 B
C++
/*
|
|
* 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"
|
|
|
|
//---------------------------------------------------------------------------
|
|
|
|
class CWatchdogCore : public CSelectableCore
|
|
{
|
|
private:
|
|
// Command
|
|
CLiteProtocol * Protocol;
|
|
|
|
// Timing
|
|
timeval PingTimer;
|
|
int PingInterval;
|
|
|
|
// Handle
|
|
THandle * Ping;
|
|
|
|
public:
|
|
// Life Cycle
|
|
CWatchdogCore( const char * pName );
|
|
virtual ~CWatchdogCore();
|
|
|
|
// Load Configuration
|
|
virtual bool LoadConfigData();
|
|
|
|
// Manually set Configuration
|
|
bool SetInterval( int pPingInterval );
|
|
|
|
// Initialisation
|
|
virtual bool Init();
|
|
|
|
// Process
|
|
virtual bool Process();
|
|
};
|
|
//---------------------------------------------------------------------------
|
|
|
|
#endif /* REDACORE_WATCHDOGCORE_H_ */
|