Orocos Real-Time Toolkit  2.5.0
Public Member Functions
RTT::internal::OperationInterfacePartFused< Signature > Class Template Reference

OperationInterfacePart implementation that uses boost::fusion to produce items. More...

#include <rtt/internal/OperationInterfacePartFused.hpp>

Inheritance diagram for RTT::internal::OperationInterfacePartFused< Signature >:
RTT::OperationInterfacePart

List of all members.

Public Member Functions

 OperationInterfacePartFused (Operation< Signature > *o)
virtual std::string getName () const
 Returns the name of this operation.
virtual std::string description () const
 Returns the description of this operation.
virtual std::vector
< ArgumentDescription
getArgumentList () const
 Get a description of the desired arguments in the ArgumentDescription format.
std::string resultType () const
 Return the result (return) type of this operation.
unsigned int arity () const
 Returns the arity (number of arguments) of this operation.
const types::TypeInfogetArgumentType (unsigned int arg) const
 Returns the type information of the n'th argument, with argument zero being the return value.
unsigned int collectArity () const
 Returns the number of collectable arguments of this operation's function.
const types::TypeInfogetCollectType (unsigned int arg) const
 Returns the type information of the n'th collectable argument.
base::DataSourceBase::shared_ptr produce (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
 Create a DataSource for a given callable operation.
virtual
base::DataSourceBase::shared_ptr 
produceSend (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
 Create a DataSource for a given send operation.
virtual
base::DataSourceBase::shared_ptr 
produceHandle () const
 Create an empty SendHandle object for this operation.
virtual
base::DataSourceBase::shared_ptr 
produceCollect (const std::vector< base::DataSourceBase::shared_ptr > &args, DataSource< bool >::shared_ptr blocking) const
 Create a DataSource for collecting the results of a Send.
boost::shared_ptr
< base::DisposableInterface
getLocalOperation () const
 Returns any local operation associated with this operation.

Detailed Description

template<typename Signature>
class RTT::internal::OperationInterfacePartFused< Signature >

OperationInterfacePart implementation that uses boost::fusion to produce items.

Definition at line 95 of file OperationInterfacePartFused.hpp.


Member Function Documentation

template<typename Signature >
unsigned int RTT::internal::OperationInterfacePartFused< Signature >::arity ( ) const [inline, virtual]
template<typename Signature >
unsigned int RTT::internal::OperationInterfacePartFused< Signature >::collectArity ( ) const [inline, virtual]

Returns the number of collectable arguments of this operation's function.

These consist of the return value and the reference arguments.

See also:
produceCollect

Implements RTT::OperationInterfacePart.

Definition at line 139 of file OperationInterfacePartFused.hpp.

References RTT::internal::OperationInterfacePartFused< Signature >::arity().

Referenced by RTT::internal::OperationInterfacePartFused< Signature >::produceCollect().

template<typename Signature >
virtual std::string RTT::internal::OperationInterfacePartFused< Signature >::description ( ) const [inline, virtual]

Returns the description of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 114 of file OperationInterfacePartFused.hpp.

template<typename Signature >
const types::TypeInfo* RTT::internal::OperationInterfacePartFused< Signature >::getArgumentType ( unsigned int  arg) const [inline, virtual]

Returns the type information of the n'th argument, with argument zero being the return value.

Parameters:
arg0: get return value type, 1..arity(): get n'th argument type.
Returns:
A TypeInfo Object or null if
  • is out of range

Implements RTT::OperationInterfacePart.

Definition at line 132 of file OperationInterfacePartFused.hpp.

template<typename Signature >
const types::TypeInfo* RTT::internal::OperationInterfacePartFused< Signature >::getCollectType ( unsigned int  arg) const [inline, virtual]

Returns the type information of the n'th collectable argument.

The numbering of arg starts from 1.

Parameters:
arg1..collectArity(): get n'th argument type.
Returns:
A TypeInfo Object or null if
  • is out of range

Implements RTT::OperationInterfacePart.

Definition at line 141 of file OperationInterfacePartFused.hpp.

template<typename Signature >
boost::shared_ptr<base::DisposableInterface> RTT::internal::OperationInterfacePartFused< Signature >::getLocalOperation ( ) const [inline, virtual]

Returns any local operation associated with this operation.

Returns:
null if no such operation exists, the operation's implementation otherwise.

Reimplemented from RTT::OperationInterfacePart.

Definition at line 196 of file OperationInterfacePartFused.hpp.

template<typename Signature >
virtual std::string RTT::internal::OperationInterfacePartFused< Signature >::getName ( ) const [inline, virtual]

Returns the name of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 110 of file OperationInterfacePartFused.hpp.

template<typename Signature >
base::DataSourceBase::shared_ptr RTT::internal::OperationInterfacePartFused< Signature >::produce ( const std::vector< base::DataSourceBase::shared_ptr > &  args,
ExecutionEngine caller 
) const [inline, virtual]

Create a DataSource for a given callable operation.

Parameters:
argsThe arguments for the target object's function. The number of arguments must be identical to this->arity()
callerThe Engine that will receive notifications when the method has been executed, in case it runs in the owner's thread. Normally, this is the engine of the caller's TaskContext.
Returns:
a DataSource which will return the result of this operation.
Exceptions:
wrong_number_of_args_exception
wrong_types_of_args_exception
name_not_found_exception

Implements RTT::OperationInterfacePart.

Definition at line 146 of file OperationInterfacePartFused.hpp.

References RTT::internal::OperationInterfacePartFused< Signature >::arity().

template<typename Signature >
virtual base::DataSourceBase::shared_ptr RTT::internal::OperationInterfacePartFused< Signature >::produceCollect ( const std::vector< base::DataSourceBase::shared_ptr > &  args,
DataSource< bool >::shared_ptr  blocking 
) const [inline, virtual]

Create a DataSource for collecting the results of a Send.

Parameters:
argsA vector of data sources of which the first element contains a properly initialised sendhandle and the remainder of the elements contains datasources for collecting the return value and reference arguments. The total number of items in args must be collectArity() + 1
blockingSet to true to do a blocking collect, false for a polling version.
Returns:
A DataSource which collects the results when evaluated and which returns the SendStatus.
Exceptions:
wrong_number_of_args_exception
wrong_types_of_args_exception
name_not_found_exception
no_asynchronous_operation_exception

Implements RTT::OperationInterfacePart.

Definition at line 166 of file OperationInterfacePartFused.hpp.

References RTT::internal::OperationInterfacePartFused< Signature >::collectArity().

template<typename Signature >
virtual base::DataSourceBase::shared_ptr RTT::internal::OperationInterfacePartFused< Signature >::produceHandle ( ) const [inline, virtual]

Create an empty SendHandle object for this operation.

Returns:
a DataSource which contains an empty SendHandle.
Exceptions:
wrong_number_of_args_exception
wrong_types_of_args_exception
name_not_found_exception
no_asynchronous_operation_exception

Implements RTT::OperationInterfacePart.

Definition at line 161 of file OperationInterfacePartFused.hpp.

template<typename Signature >
virtual base::DataSourceBase::shared_ptr RTT::internal::OperationInterfacePartFused< Signature >::produceSend ( const std::vector< base::DataSourceBase::shared_ptr > &  args,
ExecutionEngine caller 
) const [inline, virtual]

Create a DataSource for a given send operation.

Parameters:
argsThe arguments for the target object's function. The number of arguments must be identical to this->arity()
callerThe Engine that will receive notifications when the method has been executed. Normally, this is the engine of the caller's TaskContext.
Returns:
a DataSource which contains the SendHandle of this operation.
See also:
produceHandle
Exceptions:
wrong_number_of_args_exception
wrong_types_of_args_exception
name_not_found_exception
no_asynchronous_operation_exception

Implements RTT::OperationInterfacePart.

Definition at line 155 of file OperationInterfacePartFused.hpp.

References RTT::internal::OperationInterfacePartFused< Signature >::arity().


The documentation for this class was generated from the following file: