RTT::TaskObject Class Reference

A task object groups a set of commands and methods (operations) which may be invoked. More...

#include <rtt/TaskObject.hpp>

Inheritance diagram for RTT::TaskObject:
RTT::OperationInterface RTT::Corba::CorbaService RTT::ProgramTask RTT::StateMachineTask

List of all members.

Public Types

typedef std::vector< std::string > ObjectList
 A list of all child objects of this interface.

Public Member Functions

 TaskObject (std::string name, std::string description="A Task Object.")
 Create a TaskObject with a given name and description.
 TaskObject (OperationInterface *parent, std::string name, std::string description="A Task Object.")
 Create a TaskObject with a given name and description and tie it to a parent.
virtual OperationInterfacegetParent ()
 Returns the parent OperationInterface in which this TaskObject lives.
virtual void setParent (OperationInterface *newparent)
 Set a new parent for this interface.
virtual void setEngine (ExecutionEngine *newengine)
 Set the execution engine of the parent TaskContext.
const std::string & getName () const
 Returns the name of this interface.
const std::string & getDescription () const
 Returns the description of this interface.
void setDescription (const std::string &d)
void setName (const std::string &n)
CommandRepositorycommands ()
 Returns the commands of this interface.
const CommandRepositorycommands () const
MethodRepositorymethods ()
 Returns the methods of this interface.
const MethodRepositorymethods () const
EventServiceevents ()
 The task-local events ( 'signals' ) of this TaskContext.
const EventServiceevents () const
 The task-local events ( 'signals' ) of this TaskContext.
AttributeRepositoryattributes ()
 Returns the attributes of this interface.
const AttributeRepositoryattributes () const
virtual void clear ()
virtual bool addObject (OperationInterface *obj)
 Add a new child interface to this interface.
virtual OperationInterfacegetObject (const std::string &obj_name)
 Get a pointer to a previously added TaskObject.
virtual ObjectList getObjectList () const
 Get a list of all the object names of this interface.
virtual bool removeObject (const std::string &obj_name)
 Remove and delete a previously added TaskObject.

Protected Types

typedef std::vector
< OperationInterface * > 
Objects

Protected Attributes

std::string mname
std::string mdescription
OperationInterfacemparent
CommandRepository mcommands
MethodRepository mmethods
AttributeRepository mattributes
Objects mobjects
 the Child TaskObjects.

Detailed Description

A task object groups a set of commands and methods (operations) which may be invoked.

Definition at line 51 of file TaskObject.hpp.


Constructor & Destructor Documentation

RTT::TaskObject::TaskObject ( OperationInterface parent,
std::string  name,
std::string  description = "A Task Object." 
)

Create a TaskObject with a given name and description and tie it to a parent.

Parameters:
parent The OperationInterface to tie the new TaskObject to. In case a TaskObject with the same name is already present in parent, the TaskObject will not be tied and new->getParent() == 0.

Member Function Documentation

virtual bool RTT::OperationInterface::addObject ( OperationInterface obj  )  [virtual, inherited]

Add a new child interface to this interface.

Parameters:
obj This object becomes owned by this interface.
Returns:
true if it cuold be added, false if such object already exists.

Reimplemented in RTT::TaskContext.

virtual OperationInterface* RTT::OperationInterface::getObject ( const std::string &  obj_name  )  [virtual, inherited]

Get a pointer to a previously added TaskObject.

Parameters:
obj_name The name of the TaskObject
Returns:
the pointer
virtual ObjectList RTT::OperationInterface::getObjectList (  )  const [virtual, inherited]

Get a list of all the object names of this interface.

Returns:
a list of string names.
virtual OperationInterface* RTT::TaskObject::getParent (  )  [inline, virtual]

Returns the parent OperationInterface in which this TaskObject lives.

A TaskObject can have only one parent.

Returns:
null in case no parent is set, the parent otherwise.

Implements RTT::OperationInterface.

Definition at line 76 of file TaskObject.hpp.

virtual bool RTT::OperationInterface::removeObject ( const std::string &  obj_name  )  [virtual, inherited]

Remove and delete a previously added TaskObject.

Deletion will only occur if obj_name's parent is this. You can avoid deletion by first calling

 this->getObject( obj_name )->setParent(0); 
Parameters:
obj_name The name of the TaskObject to remove
Returns:
true if found and removed, false otherwise.
virtual void RTT::TaskObject::setEngine ( ExecutionEngine newengine  )  [virtual]

Set the execution engine of the parent TaskContext.

Do not call this method directly. This function is automatically called when a TaskObject is added to a TaskContext.

Implements RTT::OperationInterface.

virtual void RTT::TaskObject::setParent ( OperationInterface newparent  )  [inline, virtual]

Set a new parent for this interface.

Do not call this method directly. This function is automatically called when a TaskObject is added to another TaskObject.

Implements RTT::OperationInterface.

Definition at line 78 of file TaskObject.hpp.


The documentation for this class was generated from the following file:
Generated on Thu Dec 23 13:22:44 2010 for Orocos Real-Time Toolkit by  doxygen 1.6.3