Line data Source code
1 : /*! 2 : * \file 3 : * \brief Class module::Controller_limit. 4 : */ 5 : #ifndef CONTROLLER_LIMIT_HPP_ 6 : #define CONTROLLER_LIMIT_HPP_ 7 : 8 : #include <cstdint> 9 : 10 : #include "Module/Stateful/Controller/Controller.hpp" 11 : 12 : namespace spu 13 : { 14 : namespace module 15 : { 16 : 17 : class Controller_limit : public Controller 18 : { 19 : protected: 20 : const size_t limit; 21 : size_t counter; 22 : 23 : public: 24 : Controller_limit(const size_t limit, const size_t init_path = 0); 25 0 : virtual ~Controller_limit() = default; 26 : virtual Controller_limit* clone() const; 27 : 28 : virtual void reset(); 29 : 30 : protected: 31 : virtual void _control(int8_t* out, const size_t frame_id); 32 : }; 33 : } 34 : } 35 : 36 : #endif /* CONTROLLER_LIMIT_HPP_ */