Files
Cognitive_Agent/firmware/t2g/Seat_Controller_demo/App/safety_manager.h
T

31 lines
890 B
C
Executable File

#ifndef SAFETY_MANAGER_H
#define SAFETY_MANAGER_H
#include <stdbool.h>
#include <stdint.h>
typedef enum
{
SAFETY_FAULT_NONE = 0,
SAFETY_FAULT_DRIVER = 1,
SAFETY_FAULT_CAN_BUS_OFF = 2,
SAFETY_FAULT_CONFIG_STORE = 3,
SAFETY_FAULT_BOOT_RECOVERY = 4,
SAFETY_FAULT_DEBUG_DETACH = 5,
SAFETY_FAULT_CAN_INIT = 6
} safety_fault_t;
void SafetyManager_Init(uint32_t resetReason);
void SafetyManager_Service(void);
void SafetyManager_LatchFault(safety_fault_t fault);
void SafetyManager_KickWatchdog(void);
bool SafetyManager_IsWatchdogInitialized(void);
bool SafetyManager_IsInhibited(void);
safety_fault_t SafetyManager_GetFault(void);
bool SafetyManager_WasWatchdogReset(void);
bool SafetyManager_TriggerHilWatchdogReset(uint16_t token);
void SafetyManager_CommitHilWatchdogReset(void);
bool SafetyManager_WasHilWatchdogRecovered(void);
#endif /* SAFETY_MANAGER_H */