RTT::internal::SynchronousOperationInterfacePartFused< Signature > Class Template Reference

#include <OperationInterfacePartFused.hpp>

Inheritance diagram for RTT::internal::SynchronousOperationInterfacePartFused< Signature >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

unsigned int arity () const
unsigned int arity () const
unsigned int collectArity () const
unsigned int collectArity () const
virtual std::string description () const
virtual std::string description () const
virtual std::vector
< ArgumentDescription
getArgumentList () const
virtual std::vector
< ArgumentDescription
getArgumentList () const
const types::TypeInfogetArgumentType (unsigned int arg) const
const types::TypeInfogetArgumentType (unsigned int arg) const
const types::TypeInfogetCollectType (unsigned int arg) const
const types::TypeInfogetCollectType (unsigned int arg) const
boost::shared_ptr
< base::DisposableInterface
getLocalOperation () const
boost::shared_ptr
< base::DisposableInterface
getLocalOperation () const
virtual std::string getName () const
virtual std::string getName () const
base::DataSourceBase::shared_ptr produce (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
base::DataSourceBase::shared_ptr produce (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
virtual
base::DataSourceBase::shared_ptr 
produceCollect (const std::vector< base::DataSourceBase::shared_ptr > &args, internal::DataSource< bool >::shared_ptr blocking) const
virtual
base::DataSourceBase::shared_ptr 
produceCollect (const std::vector< base::DataSourceBase::shared_ptr > &args, internal::DataSource< bool >::shared_ptr blocking) const
virtual
base::DataSourceBase::shared_ptr 
produceHandle () const
virtual
base::DataSourceBase::shared_ptr 
produceHandle () const
virtual
base::DataSourceBase::shared_ptr 
produceSend (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
virtual
base::DataSourceBase::shared_ptr 
produceSend (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
virtual Handle produceSignal (base::ActionInterface *func, const std::vector< base::DataSourceBase::shared_ptr > &args) const
virtual Handle produceSignal (base::ActionInterface *func, const std::vector< base::DataSourceBase::shared_ptr > &args) const
std::string resultType () const
std::string resultType () const
 SynchronousOperationInterfacePartFused (Operation< Signature > *o)
 SynchronousOperationInterfacePartFused (Operation< Signature > *o)

Private Types

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.
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.
typedef boost::function_traits
< Signature >::result_type 
result_type
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().
typedef create_sequence
< typename
boost::function_types::parameter_types
< Signature >::type
SequenceFactory
 The factory for converting data sources to C++ types in call().

Private Attributes

Operation< Signature > * op

Detailed Description

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

OperationInterfacePart implementation that only provides synchronous access to an operation. Only produce() can be called, the others will throw a no_asynchronous_operation_exception.

Definition at line 206 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.


Member Typedef Documentation

template<typename Signature >
typedef create_sequence<typename boost::function_types::parameter_types<typename CollectType<Signature>::type>::type > RTT::internal::SynchronousOperationInterfacePartFused< Signature >::CollectSequenceFactory [private]

The factory for converting data sources to C++ types in collect(). This includes SendHandle.

Definition at line 213 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
typedef create_sequence<typename boost::function_types::parameter_types<typename CollectType<Signature>::type>::type > RTT::internal::SynchronousOperationInterfacePartFused< Signature >::CollectSequenceFactory [private]

The factory for converting data sources to C++ types in collect(). This includes SendHandle.

Definition at line 213 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
typedef boost::function_traits<Signature>::result_type RTT::internal::SynchronousOperationInterfacePartFused< Signature >::result_type [private]
template<typename Signature >
typedef boost::function_traits<Signature>::result_type RTT::internal::SynchronousOperationInterfacePartFused< Signature >::result_type [private]
template<typename Signature >
typedef create_sequence<typename boost::function_types::parameter_types<Signature>::type> RTT::internal::SynchronousOperationInterfacePartFused< Signature >::SequenceFactory [private]

The factory for converting data sources to C++ types in call().

Definition at line 211 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
typedef create_sequence<typename boost::function_types::parameter_types<Signature>::type> RTT::internal::SynchronousOperationInterfacePartFused< Signature >::SequenceFactory [private]

The factory for converting data sources to C++ types in call().

Definition at line 211 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.


Constructor & Destructor Documentation

template<typename Signature >
RTT::internal::SynchronousOperationInterfacePartFused< Signature >::SynchronousOperationInterfacePartFused ( Operation< Signature > *  o  )  [inline]
template<typename Signature >
RTT::internal::SynchronousOperationInterfacePartFused< Signature >::SynchronousOperationInterfacePartFused ( Operation< Signature > *  o  )  [inline]

Member Function Documentation

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

Returns the arity (number of arguments) of this operation.

See also:
produce, produceSend

Implements RTT::OperationInterfacePart.

Definition at line 250 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Returns the arity (number of arguments) of this operation.

See also:
produce, produceSend

Implements RTT::OperationInterfacePart.

Definition at line 250 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
unsigned int RTT::internal::SynchronousOperationInterfacePartFused< 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 259 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
unsigned int RTT::internal::SynchronousOperationInterfacePartFused< 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 259 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

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

Returns the description of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 234 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Returns the description of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 234 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
virtual std::vector<ArgumentDescription> RTT::internal::SynchronousOperationInterfacePartFused< Signature >::getArgumentList (  )  const [inline, virtual]

Get a description of the desired arguments in the ArgumentDescription format.

Implements RTT::OperationInterfacePart.

Definition at line 238 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
virtual std::vector<ArgumentDescription> RTT::internal::SynchronousOperationInterfacePartFused< Signature >::getArgumentList (  )  const [inline, virtual]

Get a description of the desired arguments in the ArgumentDescription format.

Implements RTT::OperationInterfacePart.

Definition at line 238 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
const types::TypeInfo* RTT::internal::SynchronousOperationInterfacePartFused< 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:
arg 0: 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 252 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
const types::TypeInfo* RTT::internal::SynchronousOperationInterfacePartFused< 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:
arg 0: 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 252 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
const types::TypeInfo* RTT::internal::SynchronousOperationInterfacePartFused< 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:
arg 1..collectArity(): get n'th argument type.
Returns:
A TypeInfo Object or null if
  • is out of range

Implements RTT::OperationInterfacePart.

Definition at line 261 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
const types::TypeInfo* RTT::internal::SynchronousOperationInterfacePartFused< 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:
arg 1..collectArity(): get n'th argument type.
Returns:
A TypeInfo Object or null if
  • is out of range

Implements RTT::OperationInterfacePart.

Definition at line 261 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
boost::shared_ptr<base::DisposableInterface> RTT::internal::SynchronousOperationInterfacePartFused< 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 275 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
boost::shared_ptr<base::DisposableInterface> RTT::internal::SynchronousOperationInterfacePartFused< 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 275 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

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

Returns the name of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 230 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Returns the name of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 230 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

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

Create a DataSource for a given callable operation.

Parameters:
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.
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 266 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Create a DataSource for a given callable operation.

Parameters:
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.
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 266 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

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

Create a DataSource for collecting the results of a Send.

Parameters:
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.
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 223 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Create a DataSource for collecting the results of a Send.

Parameters:
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.
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 223 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
virtual base::DataSourceBase::shared_ptr RTT::internal::SynchronousOperationInterfacePartFused< 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 227 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Create a DataSource for a given send operation.

Parameters:
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.
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 221 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Create a DataSource for a given send operation.

Parameters:
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.
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 221 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
virtual Handle RTT::internal::SynchronousOperationInterfacePartFused< Signature >::produceSignal ( base::ActionInterface func,
const std::vector< base::DataSourceBase::shared_ptr > &  args 
) const [inline, virtual]

Attach a Signal Handle to this operation which fills in the given data sources and executes a given function.

Parameters:
func The function to execute
args The data sources to fill in with the arguments the operation was given. The number of elements and their type must match the signature of the operation.
Returns:
A valid Signal Handle if the arguments were valid.
Exceptions:
no_asynchronous_operation_exception 

Implements RTT::OperationInterfacePart.

Definition at line 225 of file rtt/internal/OperationInterfacePartFused.hpp.

template<typename Signature >
virtual Handle RTT::internal::SynchronousOperationInterfacePartFused< Signature >::produceSignal ( base::ActionInterface func,
const std::vector< base::DataSourceBase::shared_ptr > &  args 
) const [inline, virtual]

Attach a Signal Handle to this operation which fills in the given data sources and executes a given function.

Parameters:
func The function to execute
args The data sources to fill in with the arguments the operation was given. The number of elements and their type must match the signature of the operation.
Returns:
A valid Signal Handle if the arguments were valid.
Exceptions:
no_asynchronous_operation_exception 

Implements RTT::OperationInterfacePart.

Definition at line 225 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.

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

Return the result (return) type of this operation.

Implements RTT::OperationInterfacePart.

Definition at line 245 of file rtt/internal/OperationInterfacePartFused.hpp.

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

Return the result (return) type of this operation.

Implements RTT::OperationInterfacePart.

Definition at line 245 of file install/include/rtt/internal/OperationInterfacePartFused.hpp.


Member Data Documentation

template<typename Signature >
Operation< Signature > * RTT::internal::SynchronousOperationInterfacePartFused< Signature >::op [private]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rtt
Author(s): RTT Developers
autogenerated on Fri Jan 11 09:50:06 2013