Files
redAcore/WatchdogCore.h
Charl Wentzel 3f86de71b1 Major update:
- DataTreeCore:
  - Bug fix: GetMember() error if member not found
- FunctionCore: (affected: SelectableCore, FileCore, WatchdogCore)
  - Made destructor virual
  - Standardize method parameter naming, e.g. pName, pLog
  - Renamed parameters: DebugLevel -> LogLevel, OutputDisplay -> LogOutput
  - Reinstated parameter BaseMember
  - Removed logging parameters from constructor
  - Created method InitLoggging() (shows "Function Created" message)
  - Split LoadConfig() method into parts:
    - Implemented public LoadConfig() methods
    - Implemented LoadConfigData() method, load parameters from DataTree
- WatchdogCore:
  - Derive from CSelectableCore instead of CFunctionCore
  - Rename parameter: PingTimeout -> PingInterval
  - Replace Ping Channel with Handle only
  - Add method SetInterval()
  - Send command direct to handle with (channel) Input()
- SelectableCore:
  - Rename parameters: Auto -> AutoManage, ReopenTimeout -> ReopenDelay
  - Implemented own virtual LoadConfigData() method
- DeviceCore:
  - Made all logging conditional: if (Log) Log->Message(...)
- SelectCore:
  - Renamed parameters: DebugLevel -> LogLevel
2017-07-11 06:20:14 +02:00

47 lines
932 B
C++

/*
* WatchdogCore.h
*
* Created on: July 2017
* Author: wentzelc
*/
#ifndef REDACORE_WATCHDOGCORE_H_
#define REDACORE_WATCHDOGCORE_H_
// redA Libraries
#include "SelectableCore.h"
#include "LiteProtocolCore.h"
// Standard C/C++ Libraries
/*none*/
//---------------------------------------------------------------------------
class CWatchdogCore : public CSelectableCore
{
private:
// Command
CLiteProtocol * Protocol;
// Timing
timeval PingTimer;
int PingInterval;
// Handle
THandle * Ping;
public:
// Life Cycle
CWatchdogCore( const char * pName, CSelect * pSelect, CLogCore * pLog );
virtual ~CWatchdogCore();
// Configuration
bool SetInterval( int pPingInterval );
// Process
virtual bool Process();
};
//---------------------------------------------------------------------------
#endif /* REDACORE_WATCHDOGCORE_H_ */