RTT::OperationInterface Class Reference

The interface for accessing and executing 'operations', being commands, methods, events and attributes. More...

#include <rtt/OperationInterface.hpp>

Inheritance diagram for RTT::OperationInterface:
RTT::TaskContext RTT::TaskObject RTT::Corba::ControlTaskProxy 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

 OperationInterface (ExecutionEngine *ee)
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 const std::string & getName () const =0
 Returns the name of this interface.
virtual const std::string & getDescription () const =0
 Returns the description of this interface.
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.
virtual OperationInterfacegetParent ()=0
 Returns the parent OperationInterface in which this TaskObject lives.
virtual void setParent (OperationInterface *newparent)=0
 Set a new parent for this interface.
virtual void setEngine (ExecutionEngine *newengine)=0
 Set the execution engine of the parent TaskContext.

Protected Types

typedef std::vector
< OperationInterface * > 
Objects

Protected Attributes

CommandRepository mcommands
MethodRepository mmethods
AttributeRepository mattributes
Objects mobjects
 the Child TaskObjects.

Detailed Description

The interface for accessing and executing 'operations', being commands, methods, events and attributes.

OperationInterface objects can be hierarchically nested.

Definition at line 61 of file OperationInterface.hpp.


Member Function Documentation

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

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]

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]

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

Returns:
a list of string names.
virtual OperationInterface* RTT::OperationInterface::getParent (  )  [pure 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.

Implemented in RTT::TaskContext, and RTT::TaskObject.

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

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::OperationInterface::setEngine ( ExecutionEngine newengine  )  [pure 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.

Implemented in RTT::TaskContext, and RTT::TaskObject.

virtual void RTT::OperationInterface::setParent ( OperationInterface newparent  )  [pure 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.

Implemented in RTT::TaskContext, and RTT::TaskObject.


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