Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
TrackingCtrl Class Reference

TrackingCtrl aims at following a trajectory with the robot. More...

#include <track.hpp>

Inheritance diagram for TrackingCtrl:
Inheritance graph
[legend]

Public Member Functions

virtual void newState (const State &state)
 Handles new state of the robot. More...
 
 TrackingCtrl (const MotionModel &model, const double &ts, const char *input_file_name, const iSeeML::rob::OrPtConfig &init_config)
 The constructor needs a motion model, a time step, a file name giving the path to track and an initial configuration. More...
 
const std::list< State * > & trajectory () const
 Gives the tracked trajectory. More...
 
virtual ~TrackingCtrl ()
 The destructor needs to be explicitely redefined. More...
 
- Public Member Functions inherited from FileCtrl
void chooseVelocities (double &trans_vel, double &rot_vel, std::ostream &log_str)
 Computes new velocities for ROS node. More...
 
 FileCtrl (const MotionModel &model, const double &ts, const char *input_file_name=NULL)
 The constructor needs a motion model and an optional input file name. More...
 
void setInput (const char *input_file_name)
 Change the input stream to a new file. More...
 
virtual ~FileCtrl ()
 The destructor closes the input stream, if any. More...
 
- Public Member Functions inherited from Controller
void stopMotion ()
 Stops the robot (i.e. sets both velocities to zero). More...
 
const double & timeStep () const
 Stops the robot (i.e. sets both velocities to zero). More...
 
virtual ~Controller ()
 The destructor needs to be defined as virtual. More...
 

Protected Member Functions

void searchGoal (const double &forwardTime=0)
 Moves the goal forward until it gets after the robot's date plus a given amount of time. More...
 
- Protected Member Functions inherited from FileCtrl
void inputEnd ()
 Close and terminate the input stream. More...
 
bool inputEnded () const
 Is the input stream at its end? More...
 
bool inputOK () const
 Is the input stream OK for reading? More...
 
- Protected Member Functions inherited from Controller
void changeFirstOdometry ()
 Change the odometry data status (first or not). More...
 
 Controller (const MotionModel &model, const double &ts)
 This constructor (for the inheriting controllers) sets the motion model to the given one. More...
 
bool firstOdometry ()
 Are the odometry data the first? More...
 
void updateVelocities (double &trans_vel, double &rot_vel)
 Update the velocities from the fields and send the update signal. More...
 

Protected Attributes

std::list< State * >::const_iterator goal
 The trajectory's state which is aimed. More...
 
int nb_states
 The number of states in the followed trajectory. More...
 
State state
 The current state of the robot. More...
 
std::list< State * > traject
 The trajectory which should be followed. More...
 
- Protected Attributes inherited from FileCtrl
std::ifstream * input
 The input stream, if any. More...
 
- Protected Attributes inherited from Controller
double initial_date
 The first date of the odometry. More...
 
const MotionModelmotion_model
 The model of the motion. More...
 
double moving_velocity
 Translation velocity desired for the robot. More...
 
const double time_step
 The time step of the controller. More...
 
double turning_velocity
 Rotation velocity desired for the robot. More...
 

Additional Inherited Members

- Signals inherited from Controller
void commandsUpdated (const double &trans_vel, const double &rot_vel)
 Update the display of the controller's commands. More...
 
void stateUpdated (const State &state)
 Update the display of the state. More...
 

Detailed Description

TrackingCtrl aims at following a trajectory with the robot.

Since
0.3.1

Definition at line 23 of file track.hpp.

Constructor & Destructor Documentation

TrackingCtrl::TrackingCtrl ( const MotionModel model,
const double &  ts,
const char *  input_file_name,
const iSeeML::rob::OrPtConfig &  init_config 
)

The constructor needs a motion model, a time step, a file name giving the path to track and an initial configuration.

States from the path are projected into the initial configuration's frame.

Parameters
modelthe motion model,
tsthe time step of the controller,
input_file_namethe input file name of the path,
init_configthe initial configuration.
See also
FileCtrl(const MotionModel&, const double&, const char*), iSeeML::rob::OrPtConfig::projection(const iSeeML::rob::OrPtConfig&), list::push_back

Definition at line 26 of file track.cpp.

virtual TrackingCtrl::~TrackingCtrl ( )
inlinevirtual

The destructor needs to be explicitely redefined.

Definition at line 67 of file track.hpp.

Member Function Documentation

virtual void TrackingCtrl::newState ( const State state)
inlinevirtual

Handles new state of the robot.

Parameters
statethe new state of the robot, from odometry.

This method can be overwritten by inheritors.

Reimplemented from Controller.

Definition at line 70 of file track.hpp.

void TrackingCtrl::searchGoal ( const double &  forwardTime = 0)
inlineprotected

Moves the goal forward until it gets after the robot's date plus a given amount of time.

Parameters
forwardTimethe amount of time forward.

Definition at line 38 of file track.hpp.

const std::list<State*>& TrackingCtrl::trajectory ( ) const
inline

Gives the tracked trajectory.

Returns
the tracked trajectory.

Definition at line 75 of file track.hpp.

Member Data Documentation

std::list<State*>::const_iterator TrackingCtrl::goal
protected

The trajectory's state which is aimed.

Definition at line 30 of file track.hpp.

int TrackingCtrl::nb_states
protected

The number of states in the followed trajectory.

Definition at line 28 of file track.hpp.

State TrackingCtrl::state
protected

The current state of the robot.

Definition at line 32 of file track.hpp.

std::list<State*> TrackingCtrl::traject
protected

The trajectory which should be followed.

Definition at line 26 of file track.hpp.


The documentation for this class was generated from the following files:


qt_ctrl
Author(s): Alexis Scheuer
autogenerated on Wed Dec 16 2020 15:51:32