diff options
Diffstat (limited to 'NodeStateManager/Watchdog.hpp')
-rw-r--r-- | NodeStateManager/Watchdog.hpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/NodeStateManager/Watchdog.hpp b/NodeStateManager/Watchdog.hpp new file mode 100644 index 0000000..b109dcc --- /dev/null +++ b/NodeStateManager/Watchdog.hpp @@ -0,0 +1,45 @@ +/********************************************************************************************************************** +* +* Copyright (C) 2017 BMW AG +* +* Implementation of the watchdog helper function +* +* This Source Code Form is subject to the terms of the Mozilla Public +* License, v. 2.0. If a copy of the MPL was not distributed with this +* file, You can obtain one at http://mozilla.org/MPL/2.0/. +* +**********************************************************************************************************************/ +#ifndef NODESTATEMANAGER_WATCHDOG_HPP_ +#define NODESTATEMANAGER_WATCHDOG_HPP_ + +#ifdef __cplusplus +extern "C" { +#endif + +#include "stdbool.h" + +typedef enum _NsmWatchdogState_e { + NsmWatchdogState_Unknown, + NsmWatchdogState_Active, + NsmWatchdogState_Sleep +}NsmWatchdogState_e; + +typedef enum _NsmWatchdogThread_e +{ + NsmThreadAuto, + NsmThreadSDMG +}NsmWatchdogThread_e; + +void NSMTriggerWatchdog(NsmWatchdogState_e state); + +void NSMTriggerSpecificWatchdog(NsmWatchdogState_e state, const long int thread); + +void NSMUnregisterWatchdog(); + +bool NSMWatchdogIsHappy(); + +#ifdef __cplusplus +} +#endif + +#endif /* NODESTATEMANAGER_WATCHDOG_HPP_ */ |