195 DEBUG_PRINT(
"Returning ERROR from CHECK_TIMESTAMPS")
199 DEBUG_PRINT(
"Checkup complete and returning success");
The CheckupManager class handles various checkup operations.
bool should_stay_manual_driving() const
Performs a manual driving checkup.
bool should_enter_emergency(State current_state) const
Performs an emergency checkup.
bool should_stay_off(DigitalSender *digital_sender)
Performs an off checkup.
Metro _ebs_sound_timestamp_
Timer for the EBS buzzer sound check.
CheckupError initial_checkup_sequence(DigitalSender *digital_sender)
Performs an initial checkup.
CheckupState checkup_state_
Current state of the checkup process.
bool emergency_sequence_complete() const
Checks if the emergency sequence is complete and the vehicle can transition to AS_OFF.
bool should_stay_ready() const
Performs a ready to drive checkup.
CheckupState
The CheckupState enum represents the different states of the initial checkup process....
@ START_TOGGLING_WATCHDOG
bool should_go_ready_from_off() const
Performs a last re-check for off to ready transition.
void reset_checkup_state()
Resets the checkup state to the initial state.
bool should_stay_mission_finished() const
Performs a mission finished checkup.
bool res_triggered() const
Checks if the RES has been triggered.
bool should_stay_driving() const
CheckupManager(SystemData *system_data)
Constructor for the CheckupManager class.
Class responsible for controlling digital outputs in the Master Teensy.
static void activate_ebs()
Activates the solenoid EBS valves.
static void close_sdc()
Closes the SDC in Master and SDC Logic.
Our own implementation of Metro class.
bool checkWithoutReset() const
Checks if the interval has passed without resetting the timer.
constexpr auto HYDRAULIC_BRAKE_THRESHOLD
constexpr int EBS_BUZZER_TIMEOUT
DigitalSender digital_sender
bool pneumatic_line_pressure_
bool has_any_component_timed_out()
void enter_ready_state()
resets timestamps for ready
void enter_driving_state()
resets timestamps for driving
Metro releaseEbsTimestamp
int _hydraulic_line_pressure
The whole model of the system: holds all the data necessary.
DigitalData digital_data_
FailureDetection failure_detection_