#include <ControllerBase.h>
Public Member Functions | |
virtual void | clearLogs () |
virtual void | control_step (const typename VEH_DYNAMICS::TControllerInput &ci, typename VEH_DYNAMICS::TControllerOutput &co)=0 |
ControllerBaseTempl (VEH_DYNAMICS &veh) | |
virtual void | load_config (const rapidxml::xml_node< char > &node) |
virtual void | newLogSession () |
virtual void | setLogRecording (bool recording) |
virtual void | teleop_interface (const TeleopInput &in, TeleopOutput &out) override |
virtual | ~ControllerBaseTempl () |
Protected Attributes | |
VEH_DYNAMICS & | m_veh |
Virtual base for controllers of vehicles of any type (template)
Definition at line 45 of file ControllerBase.h.
mvsim::ControllerBaseTempl< VEH_DYNAMICS >::ControllerBaseTempl | ( | VEH_DYNAMICS & | veh | ) | [inline] |
Definition at line 48 of file ControllerBase.h.
virtual mvsim::ControllerBaseTempl< VEH_DYNAMICS >::~ControllerBaseTempl | ( | ) | [inline, virtual] |
Definition at line 49 of file ControllerBase.h.
virtual void mvsim::ControllerBaseTempl< VEH_DYNAMICS >::clearLogs | ( | ) | [inline, virtual] |
Definition at line 105 of file ControllerBase.h.
virtual void mvsim::ControllerBaseTempl< VEH_DYNAMICS >::control_step | ( | const typename VEH_DYNAMICS::TControllerInput & | ci, |
typename VEH_DYNAMICS::TControllerOutput & | co | ||
) | [pure virtual] |
The core of the controller: will be called at each timestep before the numeric integration of dynamical eqs
virtual void mvsim::ControllerBaseTempl< VEH_DYNAMICS >::load_config | ( | const rapidxml::xml_node< char > & | node | ) | [inline, virtual] |
Override to load class-specific options from the <controller> node
Reimplemented in mvsim::DynamicsAckermannDrivetrain::ControllerFrontSteerPID, mvsim::DynamicsAckermann::ControllerFrontSteerPID, mvsim::DynamicsAckermannDrivetrain::ControllerTwistFrontSteerPID, mvsim::DynamicsAckermann::ControllerTwistFrontSteerPID, mvsim::DynamicsAckermannDrivetrain::ControllerRawForces, mvsim::DynamicsDifferential::ControllerTwistPID, and mvsim::DynamicsAckermann::ControllerRawForces.
Definition at line 98 of file ControllerBase.h.
virtual void mvsim::ControllerBaseTempl< VEH_DYNAMICS >::newLogSession | ( | ) | [inline, virtual] |
Definition at line 106 of file ControllerBase.h.
virtual void mvsim::ControllerBaseTempl< VEH_DYNAMICS >::setLogRecording | ( | bool | recording | ) | [inline, virtual] |
Definition at line 101 of file ControllerBase.h.
virtual void mvsim::ControllerBaseTempl< VEH_DYNAMICS >::teleop_interface | ( | const TeleopInput & | in, |
TeleopOutput & | out | ||
) | [inline, override, virtual] |
This is to handle basic need of all the controllers.
Reimplemented from mvsim::ControllerBaseInterface.
Reimplemented in mvsim::DynamicsAckermannDrivetrain::ControllerFrontSteerPID, mvsim::DynamicsAckermann::ControllerFrontSteerPID, mvsim::DynamicsAckermannDrivetrain::ControllerTwistFrontSteerPID, mvsim::DynamicsAckermann::ControllerTwistFrontSteerPID, mvsim::DynamicsAckermannDrivetrain::ControllerRawForces, mvsim::DynamicsDifferential::ControllerTwistPID, mvsim::DynamicsAckermann::ControllerRawForces, and mvsim::DynamicsDifferential::ControllerRawForces.
Definition at line 51 of file ControllerBase.h.
VEH_DYNAMICS& mvsim::ControllerBaseTempl< VEH_DYNAMICS >::m_veh [protected] |
Definition at line 108 of file ControllerBase.h.