/* * AlgorithmStop.h * * Author: Aleksey Gerasimenko * gerasimenko.aleksey.n@gmail.com */ #include #include #ifndef SYSCTRL_ALGORITHMSTOP_H_ #define SYSCTRL_ALGORITHMSTOP_H_ #include "SYSCTRL/AlgorithmBase.h" #include "SYSCTRL/HeadersFLTSYSLIB.h" namespace SYSCTRL { class AlgorithmStop: public SYSCTRL::AlgorithmBase { private: SYSCTRL::SystemEnvironment& m_env; public: AlgorithmStop(SYSCTRL::SystemEnvironment& env); public: void setup(); public: void reset(); public: void execute(); private: void (AlgorithmStop::*_execute)(); void _execute_run(); #if TYPECONTROL == SCALARCONTROL private: inline void _execute_single_phase(SYSCTRL::AlgorithmSinglePhaseControl& phase, SYSCTRL::VectorOrthogonalProjection& orts, FLTSYSLIB::PIController& regulator_active, FLTSYSLIB::PIController& regulator_reactive); #endif // };//AlgorithmPrestop } /* namespace SYSCTRL */ #endif /* SYSCTRL_ALGORITHMSTOP_H_ */