6 #ifndef MOTORCORTEX_CORE_DRIVE_CIA402_FSM_BASE_H
7 #define MOTORCORTEX_CORE_DRIVE_CIA402_FSM_BASE_H
9 #include "sm_statemachine.h"
10 #include "drive_mode.h"
24 void registerUserEvents()
override;
26 virtual state_machine::EventStatus shutdown(
int state_id);
28 virtual state_machine::EventStatus switchOn(
int state_id);
30 virtual state_machine::EventStatus disableVoltage(
int state_id);
32 virtual state_machine::EventStatus quickStop(
int state_id);
34 virtual state_machine::EventStatus disableOperation(
int state_id);
36 virtual state_machine::EventStatus enableOperation(
int state_id);
38 virtual state_machine::EventStatus resetting(
int state_id);
40 virtual state_machine::EventStatus gotoOff();
42 virtual state_machine::EventStatus gotoDisengage();
44 virtual state_machine::EventStatus gotoEngage();
46 virtual state_machine::EventStatus gotoQuickStop();
48 virtual state_machine::EventStatus gotoModeAction();
50 virtual state_machine::EventStatus faultAcknowledge();
52 virtual state_machine::EventStatus switchMode(DriveMode drive_mode,
const std::string& machine_name);
64 DriveMode drive_mode_{DriveMode::DRIVE_MODE_NOMODE};
71 #endif //MOTORCORTEX_CORE_DRIVE_CIA402_FSM_BASE_H