Orocos Real-Time Toolkit
2.9.0
|
OperationInterfacePart implementation that uses boost::fusion to produce items. More...
#include <rtt/internal/OperationInterfacePartFused.hpp>
Public Member Functions | |
OperationInterfacePartFused (Operation< Signature > *o) | |
virtual std::string | getName () const |
Returns the name of this operation. More... | |
virtual std::string | description () const |
Returns the description of this operation. More... | |
virtual std::vector< ArgumentDescription > | getArgumentList () const |
Get a description of the desired arguments in the ArgumentDescription format. More... | |
std::string | resultType () const |
Return the result (return) type of this operation. More... | |
unsigned int | arity () const |
Returns the arity (number of arguments) of this operation. More... | |
const types::TypeInfo * | getArgumentType (unsigned int arg) const |
Returns the type information of the n'th argument, with argument zero being the return value. More... | |
unsigned int | collectArity () const |
Returns the number of collectable arguments of this operation's function. More... | |
const types::TypeInfo * | getCollectType (unsigned int arg) const |
Returns the type information of the n'th collectable argument. More... | |
base::DataSourceBase::shared_ptr | produce (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const |
Create a DataSource for a given callable operation. More... | |
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. More... | |
virtual base::DataSourceBase::shared_ptr | produceHandle () const |
Create an empty SendHandle object for this operation. More... | |
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. More... | |
boost::shared_ptr< base::DisposableInterface > | getLocalOperation () const |
Returns any local operation associated with this operation. More... | |
Protected Types | |
typedef boost::function_traits< Signature >::result_type | result_type |
typedef create_sequence< typename boost::function_types::parameter_types< Signature >::type > | SequenceFactory |
The factory for converting data sources to C++ types in call() More... | |
typedef create_sequence< typename boost::function_types::parameter_types< typename CollectType< Signature >::type >::type > | CollectSequenceFactory |
The factory for converting data sources to C++ types in collect(). This includes SendHandle. More... | |
Protected Attributes | |
Operation< Signature > * | op |
OperationInterfacePart implementation that uses boost::fusion to produce items.
Definition at line 94 of file OperationInterfacePartFused.hpp.
|
protected |
The factory for converting data sources to C++ types in collect(). This includes SendHandle.
Definition at line 102 of file OperationInterfacePartFused.hpp.
|
protected |
Definition at line 98 of file OperationInterfacePartFused.hpp.
|
protected |
The factory for converting data sources to C++ types in call()
Definition at line 100 of file OperationInterfacePartFused.hpp.
|
inline |
Definition at line 105 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Returns the arity (number of arguments) of this operation.
Implements RTT::OperationInterfacePart.
Definition at line 130 of file OperationInterfacePartFused.hpp.
Referenced by RTT::internal::OperationInterfacePartFused< bool(std::string)>::getArgumentList(), RTT::internal::OperationInterfacePartFused< bool(std::string)>::getLocalOperation(), RTT::internal::OperationInterfacePartFused< bool(std::string)>::produce(), and RTT::internal::OperationInterfacePartFused< bool(std::string)>::produceSend().
|
inlinevirtual |
Returns the number of collectable arguments of this operation's function.
These consist of the return value and the reference arguments.
Implements RTT::OperationInterfacePart.
Definition at line 139 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Returns the description of this operation.
Implements RTT::OperationInterfacePart.
Definition at line 114 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Get a description of the desired arguments in the ArgumentDescription format.
Implements RTT::OperationInterfacePart.
Definition at line 118 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Returns the type information of the n'th argument, with argument zero being the return value.
arg | 0: get return value type, 1..arity(): get n'th argument type. |
Implements RTT::OperationInterfacePart.
Definition at line 132 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Returns the type information of the n'th collectable argument.
The numbering of arg starts from 1.
arg | 1..collectArity(): get n'th argument type. |
Implements RTT::OperationInterfacePart.
Definition at line 141 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Returns any local operation associated with this operation.
Reimplemented from RTT::OperationInterfacePart.
Definition at line 180 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Returns the name of this operation.
Implements RTT::OperationInterfacePart.
Definition at line 110 of file OperationInterfacePartFused.hpp.
Referenced by RTT_corba_COperationInterface_i::getOperations().
|
inlinevirtual |
Create a DataSource for a given callable operation.
args | The arguments for the target object's function. The number of arguments must be identical to this->arity() |
caller | The 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. |
Implements RTT::OperationInterfacePart.
Definition at line 146 of file OperationInterfacePartFused.hpp.
|
inlinevirtual |
Create a DataSource for collecting the results of a Send.
args | A 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 |
blocking | Set to true to do a blocking collect, false for a polling version. |
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.
|
inlinevirtual |
Create an empty SendHandle object for this operation.
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.
|
inlinevirtual |
Create a DataSource for a given send operation.
args | The arguments for the target object's function. The number of arguments must be identical to this->arity() |
caller | The Engine that will receive notifications when the method has been executed. Normally, this is the engine of the caller's TaskContext. |
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.
|
inlinevirtual |
Return the result (return) type of this operation.
Implements RTT::OperationInterfacePart.
Definition at line 125 of file OperationInterfacePartFused.hpp.
|
protected |
Definition at line 103 of file OperationInterfacePartFused.hpp.