39 #include "../base/ActionInterface.hpp" 44 {
namespace scripting {
66 for (std::vector<base::ActionInterface*>::const_iterator it=orig.vect.begin();it!=orig.vect.end();it++)
67 this->add( (*it)->clone() );
71 for (std::vector<base::ActionInterface*>::iterator it=vect.begin();it!=vect.end();it++) {
82 for (std::vector<base::ActionInterface*>::iterator it=vect.begin();it!=vect.end();it++) {
83 if ( !(*it)->execute() )
90 for (std::vector<base::ActionInterface*>::iterator it=vect.begin();it!=vect.end();it++)
91 (*it)->readArguments();
97 for (std::vector<base::ActionInterface*>::const_iterator it=vect.begin();it!=vect.end();it++)
98 v = v && (*it)->valid();
118 for (std::vector<base::ActionInterface*>::const_iterator it=vect.begin();it!=vect.end();it++)
119 res->
add( (*it)->copy(alreadyCloned) );
124 std::vector<base::ActionInterface*> vect;
#define RTT_SCRIPTING_API
virtual base::ActionInterface * clone() const
The Clone Software Pattern.
CommandComposite(std::vector< base::ActionInterface * > cv)
virtual bool execute()
Execute the functionality of all commands.
Based on the software pattern 'command', this interface allows execution of action objects...
CommandComposite(const CommandComposite &orig)
Copy-Construct a clone() of all commands.
virtual ~CommandComposite()
virtual base::ActionInterface * copy(std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const
When copying an Orocos program, we want identical internal::DataSource's to be mapped to identical Da...
virtual void add(base::ActionInterface *com)
add a command to the vect
bool valid() const
Inspect if this action was executed and valid.
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Based on the software pattern 'composite', this class RTT_SCRIPTING_API allows composing command obje...
void readArguments()
This is invoked some time before execute() at a time when the action may read its function arguments...