#pragma once #include "lfr_state_interface.h" #include "lfr_state_machine.h" namespace State { class Idle: public LFR_IState { Idle() {} Idle(const Idle& other) {}; Idle& operator= (const Idle& other); public: void enter(LFR_StateMachine*); void exit(LFR_StateMachine*); static LFR_IState& getInstance(); }; class Autonomous: public LFR_IState { Autonomous() {} Autonomous(const Autonomous& other) {}; Autonomous& operator= (const Autonomous& other); public: void enter(LFR_StateMachine*); void exit(LFR_StateMachine*); static LFR_IState& getInstance(); }; class Manual: public LFR_IState { Manual() {} Manual(const Manual& other) {}; Manual& operator= (const Manual& other); public: void enter(LFR_StateMachine*); void exit(LFR_StateMachine*); static LFR_IState& getInstance(); }; }