91 return steer_dead || pc_dead || inversor_dead || res_dead;
Our own implementation of Metro class.
void reset()
Resets the timer to the current time.
bool checkWithoutReset() const
Checks if the interval has passed without resetting the timer.
bool check()
Checks if the interval has passed and resets the timer if true.
#define DEBUG_PRINT_VAR(var)
#define COMPONENT_TIMESTAMP_TIMEOUT
#define RES_TIMESTAMP_TIMEOUT
bool hasAnyComponentTimedOut()
Metro resSignalLossTimestamp
Metro inversorAliveTimestamp
Metro steerAliveTimestamp
void enterReadyState()
resets timestamps for ready
Metro releaseEbsTimestamp
bool processGoSignal()
Processes the go signal.
void enterDrivingState()
resets timestamps for driving
constexpr unsigned long READY_TIMEOUT_MS
constexpr unsigned long RELEASE_EBS_TIMEOUT_MS
constexpr unsigned long ENGAGE_EBS_TIMEOUT_MS