Public Member Functions | Private Attributes
RTT::scripting::FunctionFactory Class Reference

#include <FunctionFactory.hpp>

Inheritance diagram for RTT::scripting::FunctionFactory:
Inheritance graph
[legend]

List of all members.

Public Member Functions

unsigned int arity () const
unsigned int collectArity () const
std::string description () const
 FunctionFactory (ProgramInterfacePtr func, ExecutionEngine *procs)
std::vector< ArgumentDescriptiongetArgumentList () const
const types::TypeInfogetArgumentType (unsigned int arg) const
const types::TypeInfogetCollectType (unsigned int arg) const
std::string getName () const
base::DataSourceBase::shared_ptr produce (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
base::DataSourceBase::shared_ptr produceCollect (const std::vector< base::DataSourceBase::shared_ptr > &args, internal::DataSource< bool >::shared_ptr blocking) const
base::DataSourceBase::shared_ptr produceHandle () const
base::DataSourceBase::shared_ptr produceSend (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
std::string resultType () const

Private Attributes

ProgramInterfacePtr func
ExecutionEngineproc

Detailed Description

A Factory which delivers operations which execute a FunctionGraph in an engine..

Definition at line 57 of file FunctionFactory.hpp.


Constructor & Destructor Documentation

Definition at line 65 of file FunctionFactory.cpp.


Member Function Documentation

unsigned int RTT::FunctionFactory::arity ( ) const [virtual]

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

See also:
produce, produceSend

Implements RTT::OperationInterfacePart.

Definition at line 90 of file FunctionFactory.cpp.

unsigned int RTT::FunctionFactory::collectArity ( ) const [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 95 of file FunctionFactory.cpp.

std::string RTT::FunctionFactory::description ( ) const [virtual]

Returns the description of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 76 of file FunctionFactory.cpp.

std::vector< ArgumentDescription > RTT::FunctionFactory::getArgumentList ( ) const [virtual]

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

Implements RTT::OperationInterfacePart.

Definition at line 80 of file FunctionFactory.cpp.

const types::TypeInfo * RTT::FunctionFactory::getArgumentType ( unsigned int  arg) const [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 100 of file FunctionFactory.cpp.

const types::TypeInfo * RTT::FunctionFactory::getCollectType ( unsigned int  arg) const [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 114 of file FunctionFactory.cpp.

std::string RTT::FunctionFactory::getName ( ) const [virtual]

Returns the name of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 72 of file FunctionFactory.cpp.

DataSourceBase::shared_ptr RTT::FunctionFactory::produce ( const std::vector< base::DataSourceBase::shared_ptr > &  args,
ExecutionEngine caller 
) const [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 120 of file FunctionFactory.cpp.

base::DataSourceBase::shared_ptr RTT::FunctionFactory::produceCollect ( const std::vector< base::DataSourceBase::shared_ptr > &  args,
internal::DataSource< bool >::shared_ptr  blocking 
) const [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 189 of file FunctionFactory.cpp.

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 180 of file FunctionFactory.cpp.

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 184 of file FunctionFactory.cpp.

std::string RTT::FunctionFactory::resultType ( ) const [virtual]

Return the result (return) type of this operation.

Implements RTT::OperationInterfacePart.

Definition at line 68 of file FunctionFactory.cpp.


Member Data Documentation

Definition at line 60 of file FunctionFactory.hpp.

Definition at line 61 of file FunctionFactory.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Thu Jan 2 2014 11:35:45