16 #include <boost/assign/list_of.hpp> 22 using ::dynamicgraph::command::Command;
23 using ::dynamicgraph::command::Value;
32 Push(
Sot &entity,
const std::string &docstring)
37 std::string taskName = values[0].value();
58 std::string taskName = values[0].value();
74 Up(
Sot &entity,
const std::string &docstring)
79 std::string taskName = values[0].value();
95 Down(
Sot &entity,
const std::string &docstring)
100 std::string taskName = values[0].value();
119 std::stringstream returnString;
124 return Value(returnString.str());
135 List(
Sot &entity,
const std::string &docstring)
140 const StackType &stack = sot.
tasks();
142 std::stringstream returnString;
143 returnString <<
"( ";
144 for (StackType::const_iterator it = stack.begin(); it != stack.end();
146 returnString <<
'"' << (*it)->getName() <<
"\", ";
151 return Value(returnString.str());
164 std::stringstream returnString;
177 #endif // SOT_COMMAND_H virtual Value doExecute()
virtual void down(const TaskAbstract &task)
This method makes the task to swap with the task having the immediate inferior priority.
Up(Sot &entity, const std::string &docstring)
Remove(Sot &entity, const std::string &docstring)
virtual Value doExecute()
virtual Value doExecute()
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 tas...
Display(Sot &entity, const std::string &docstring)
Push(Sot &entity, const std::string &docstring)
std::list< TaskAbstract * > StackType
Defines a type for a list of tasks.
virtual void remove(const TaskAbstract &task)
Remove a task regardless to its position in the stack. It removes also the signals connected to the o...
virtual Value doExecute()
List(Sot &entity, const std::string &docstring)
static PoolStorage * getInstance()
virtual Value doExecute()
virtual Value doExecute()
virtual void display(std::ostream &os) const
Clear(Sot &entity, const std::string &docstring)
virtual const StackType & tasks() const
This class implements the Stack of Task. It allows to deal with the priority of the controllers throu...
const std::vector< Value > & getParameterValues() const
virtual void up(const TaskAbstract &task)
This method makes the task to swap with the task having the immediate superior priority.
virtual void clear(void)
Remove all the tasks from the stack.
virtual Value doExecute()
Down(Sot &entity, const std::string &docstring)