This class implements the Stack of Task. It allows to deal with the priority of the controllers through the shell. More...
#include <sot.hh>

Public Types | |
| typedef std::list< TaskAbstract * > | StackType |
| Defines a type for a list of tasks. More... | |
Public Types inherited from dynamicgraph::Entity | |
| typedef std::map< const std::string, command::Command * > | CommandMap_t |
| typedef std::map< std::string, SignalBase< sigtime_t > * > | SignalMap |
Public Member Functions | |
| virtual void | defineNbDof (const size_type &nbDof) |
| This method defines the part of the state vector which correspond to the free flyer of the robot. More... | |
| virtual const std::string & | getClassName () const |
| Returns the name of this class. More... | |
| virtual const size_type & | getNbDof () const |
| Sot (const std::string &name) | |
| Default constructor. More... | |
| virtual std::ostream & | writeGraph (std::ostream &os) const |
| This method write the priority between tasks in the output stream os. More... | |
| ~Sot (void) | |
Methods to handle the stack. | |
| virtual const StackType & | tasks () const |
| virtual void | push (TaskAbstract &task) |
| Push the task in the stack. It has a lowest priority than the previous ones. If this is the first task, then it has the highest priority. More... | |
| virtual TaskAbstract & | pop (void) |
| Pop the task from the stack. This method removes the task with the smallest priority in the task. The other are projected in the null-space of their predecessors. More... | |
| virtual bool | exist (const TaskAbstract &task) |
| This method allows to know if a task exists or not. More... | |
| virtual void | remove (const TaskAbstract &task) |
| Remove a task regardless to its position in the stack. It removes also the signals connected to the output signal of this stack. More... | |
| virtual void | removeDependency (const TaskAbstract &key) |
| This method removes the output signals depending on this task. More... | |
| virtual void | up (const TaskAbstract &task) |
| This method makes the task to swap with the task having the immediate superior priority. More... | |
| virtual void | down (const TaskAbstract &task) |
| This method makes the task to swap with the task having the immediate inferior priority. More... | |
| virtual void | clear (void) |
| Remove all the tasks from the stack. More... | |
Methods to compute the control law following the | |
recursive definition of the stack of tasks. | |
| virtual dynamicgraph::Vector & | computeControlLaw (dynamicgraph::Vector &control, const sigtime_t &time) |
| Compute the control law. More... | |
Public Member Functions inherited from dynamicgraph::Entity | |
| std::ostream & | displaySignalList (std::ostream &os) const |
| Entity (const std::string &name) | |
| const std::string & | getCommandList () const |
| virtual std::string | getDocString () const |
| LoggerVerbosity | getLoggerVerbosityLevel () |
| LoggerVerbosity | getLoggerVerbosityLevel () |
| const std::string & | getName () const |
| command::Command * | getNewStyleCommand (const std::string &cmdName) |
| CommandMap_t | getNewStyleCommandMap () |
| SignalBase< sigtime_t > & | getSignal (const std::string &signalName) |
| const SignalBase< sigtime_t > & | getSignal (const std::string &signalName) const |
| SignalMap | getSignalMap () const |
| double | getStreamPrintPeriod () |
| double | getStreamPrintPeriod () |
| double | getTimeSample () |
| double | getTimeSample () |
| bool | hasSignal (const std::string &signame) const |
| Logger & | logger () |
| Logger & | logger () |
| const Logger & | logger () const |
| const Logger & | logger () const |
| void | sendMsg (const std::string &msg, MsgType t=MSG_TYPE_INFO, const std::string &lineId="") |
| void | sendMsg (const std::string &msg, MsgType t=MSG_TYPE_INFO, const std::string &lineId="") |
| void | setLoggerVerbosityLevel (LoggerVerbosity lv) |
| void | setLoggerVerbosityLevel (LoggerVerbosity lv) |
| bool | setStreamPrintPeriod (double t) |
| bool | setStreamPrintPeriod (double t) |
| bool | setTimeSample (double t) |
| bool | setTimeSample (double t) |
| virtual SignalBase< sigtime_t > * | test () |
| virtual void | test2 (SignalBase< sigtime_t > *) |
| virtual std::ostream & | writeCompletionList (std::ostream &os) const |
| virtual | ~Entity () |
Static Public Member Functions | |
| static void | taskVectorToMlVector (const VectorMultiBound &taskVector, Vector &err) |
| Number of joints by default. More... | |
Public Attributes | |
Methods to handle signals | |
| SignalPtr< dynamicgraph::Vector, sigtime_t > | q0SIN |
| Intrinsec velocity of the robot, that is used to initialized the recurence of the SOT (e.g. velocity coming from the other OpenHRP plugins). More... | |
| SignalPtr< dynamicgraph::Matrix, sigtime_t > | proj0SIN |
A matrix K whose columns are a base of the desired velocity. In other words, where is the free parameter to be computed. More... | |
| SignalPtr< double, sigtime_t > | inversionThresholdSIN |
| This signal allow to change the threshold for the damped pseudo-inverse on-line. More... | |
| SignalTimeDependent< dynamicgraph::Vector, sigtime_t > | controlSOUT |
| Allow to get the result of the computed control law. More... | |
Static Public Attributes | |
| static const std::string | CLASS_NAME |
| Specify the name of the class entity. More... | |
| static const double | INVERSION_THRESHOLD_DEFAULT = 1e-4 |
| Threshold to compute the dumped pseudo inverse. More... | |
Protected Attributes | |
| bool | enablePostureTaskAcceleration |
| Option to disable the computation of the SVD for the last task if this task is a Task with a single FeaturePosture. More... | |
| double | maxControlIncrementSquaredNorm |
Maximum allowed squared norm of control increment. A task whose control increment is above this value is discarded. It defaults to std::numeric_limits<double>::max(). More... | |
| size_type | nbJoints |
| Store the number of joints to be used in the command computed by the stack of tasks. More... | |
| StackType | stack |
| This field is a list of controllers managed by the stack of tasks. More... | |
Protected Attributes inherited from dynamicgraph::Entity | |
| CommandMap_t | commandMap |
| Logger | logger_ |
| std::string | name |
| SignalMap | signalMap |
Methods to display the stack of tasks. | |
| virtual void | display (std::ostream &os) const |
| SOTSOT_CORE_EXPORT friend std::ostream & | operator<< (std::ostream &os, const Sot &sot) |
Additional Inherited Members | |
Protected Member Functions inherited from dynamicgraph::Entity | |
| void | addCommand (const std::string &name, command::Command *command) |
| void | entityDeregistration () |
| void | entityRegistration () |
| void | signalDeregistration (const std::string &name) |
| void | signalRegistration (const SignalArray< sigtime_t > &signals) |
This class implements the Stack of Task. It allows to deal with the priority of the controllers through the shell.
| typedef std::list<TaskAbstract *> dynamicgraph::sot::Sot::StackType |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
Display the stack of tasks in text mode as a tree.
Reimplemented from dynamicgraph::Entity.
|
virtual |
|
virtual |
|
inlinevirtual |
Returns the name of this class.
Reimplemented from dynamicgraph::Entity.
|
inlinevirtual |
|
virtual |
|
virtual |
|
virtual |
|
virtual |
|
inlinevirtual |
|
static |
|
virtual |
|
virtual |
This method write the priority between tasks in the output stream os.
Reimplemented from dynamicgraph::Entity.
|
friend |
|
static |
| SignalTimeDependent<dynamicgraph::Vector, sigtime_t> dynamicgraph::sot::Sot::controlSOUT |
|
protected |
Option to disable the computation of the SVD for the last task if this task is a Task with a single FeaturePosture.
|
static |
|
protected |
Maximum allowed squared norm of control increment. A task whose control increment is above this value is discarded. It defaults to std::numeric_limits<double>::max().
|
protected |
| SignalPtr<dynamicgraph::Matrix, sigtime_t> dynamicgraph::sot::Sot::proj0SIN |
| SignalPtr<dynamicgraph::Vector, sigtime_t> dynamicgraph::sot::Sot::q0SIN |
|
protected |