60 operator uint8_t()
const {
return static_cast<uint8_t
>(this->_mode); }
Encapsulates the primary control authority of the turret.
Definition system_control_types.h:17
Mode
Internal mode values.
Definition system_control_types.h:23
@ AI_MODE
Definition system_control_types.h:25
@ USER_MODE
Definition system_control_types.h:24
bool is_user() const
Checks if the system is in User mode.
Definition system_control_types.h:38
bool is_ai() const
Checks if the system is in AI mode.
Definition system_control_types.h:35
Mode get_mode() const
Gets the underlying Mode enum.
Definition system_control_types.h:57
constexpr SystemControl(Mode mode=AI_MODE)
Construct a new SystemControl object.
Definition system_control_types.h:32
const char * to_string() const
Converts the current mode to a human-readable string.
Definition system_control_types.h:54
bool operator==(Mode m) const
Equality comparison with Mode enum.
Definition system_control_types.h:63
bool operator!=(Mode m) const
Inequality comparison with Mode enum.
Definition system_control_types.h:66
Mode toggle_mode()
Toggles the state between USER_MODE and AI_MODE.
Definition system_control_types.h:44