35 lines
781 B
C++
35 lines
781 B
C++
#ifndef COMPUTERBOARDINTERFACE_H
|
|
#define COMPUTERBOARDINTERFACE_H
|
|
#include "minwindef.h"
|
|
#include "ComputerBoardState.h"
|
|
|
|
#define CPU_DEFAULT_WATCHDOG_TIMEOUT 600 //10 minutes.
|
|
#define CPU_LIBRARY_NAME "dtSBC87853x64"
|
|
|
|
class CCPUWatchdogConfig;
|
|
|
|
class CComputerBoardInterface
|
|
{
|
|
public:
|
|
CComputerBoardInterface();
|
|
int Init();
|
|
int DeInit();
|
|
int StartCPUWatchdog(/*int TimeoutInSeconds = CPU_DEFAULT_WATCHDOG_TIMEOUT*/); //Timeout in seconds
|
|
int StopCPUWatchdog();
|
|
int KickCPUWatchdog();
|
|
CComputerBoardState GetComputerBoardState();
|
|
|
|
|
|
|
|
int SetWatchdogSettings(CCPUWatchdogConfig *Settings);
|
|
|
|
private:
|
|
int LoadAxiomtekLibrary();
|
|
int UnloadLibrary();
|
|
|
|
int mWatchdogTimeout;
|
|
bool mWatchdogEnabled;
|
|
};
|
|
|
|
#endif // COMPUTERBOARDINTERFACE_H
|