Public Types | Public Member Functions | Private Attributes
RTT::corba::CorbaOperationCallerFactory Class Reference

#include <CorbaOperationCallerFactory.hpp>

Inheritance diagram for RTT::corba::CorbaOperationCallerFactory:
Inheritance graph
[legend]

List of all members.

Public Types

typedef std::vector
< base::DataSourceBase::shared_ptr
CArguments
typedef std::vector
< ArgumentDescription
CDescriptions
typedef std::vector< std::string > Members

Public Member Functions

virtual unsigned int arity () const
virtual unsigned int collectArity () const
 CorbaOperationCallerFactory (const std::string &method_name, corba::CService_ptr fact, PortableServer::POA_ptr the_poa)
virtual std::string description () const
virtual std::vector
< ArgumentDescription
getArgumentList () const
virtual const types::TypeInfogetArgumentType (unsigned int i) const
virtual const types::TypeInfogetCollectType (unsigned int i) const
virtual std::string getName () const
corba::CService_ptr getService ()
virtual
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 
produceHandle () const
virtual
base::DataSourceBase::shared_ptr 
produceSend (const std::vector< base::DataSourceBase::shared_ptr > &args, ExecutionEngine *caller) const
virtual std::string resultType () const
virtual ~CorbaOperationCallerFactory ()

Private Attributes

std::string method
corba::CService_var mfact
PortableServer::POA_var mpoa

Detailed Description

A local factory for creating remote Corba methods. It connects to an corba::Service and translates C++ calls to corba idl.

Definition at line 62 of file CorbaOperationCallerFactory.hpp.


Member Typedef Documentation

Definition at line 69 of file CorbaOperationCallerFactory.hpp.

Definition at line 71 of file CorbaOperationCallerFactory.hpp.

typedef std::vector<std::string> RTT::corba::CorbaOperationCallerFactory::Members

Definition at line 70 of file CorbaOperationCallerFactory.hpp.


Constructor & Destructor Documentation

CorbaOperationCallerFactory::CorbaOperationCallerFactory ( const std::string &  method_name,
corba::CService_ptr  fact,
PortableServer::POA_ptr  the_poa 
)

Definition at line 53 of file CorbaOperationCallerFactory.cpp.

Definition at line 60 of file CorbaOperationCallerFactory.cpp.


Member Function Documentation

unsigned int CorbaOperationCallerFactory::arity ( ) const [virtual]

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

See also:
produce, produceSend

Implements RTT::OperationInterfacePart.

Definition at line 62 of file CorbaOperationCallerFactory.cpp.

unsigned int CorbaOperationCallerFactory::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 66 of file CorbaOperationCallerFactory.cpp.

std::string CorbaOperationCallerFactory::description ( ) const [virtual]

Returns the description of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 113 of file CorbaOperationCallerFactory.cpp.

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

Implements RTT::OperationInterfacePart.

Definition at line 123 of file CorbaOperationCallerFactory.cpp.

const TypeInfo * CorbaOperationCallerFactory::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 70 of file CorbaOperationCallerFactory.cpp.

const TypeInfo * CorbaOperationCallerFactory::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 89 of file CorbaOperationCallerFactory.cpp.

std::string CorbaOperationCallerFactory::getName ( ) const [virtual]

Returns the name of this operation.

Returns:

Implements RTT::OperationInterfacePart.

Definition at line 109 of file CorbaOperationCallerFactory.cpp.

corba::CService_ptr RTT::corba::CorbaOperationCallerFactory::getService ( ) [inline]

Returns the remote service that hosts this part.

Returns:
The pointer to a CService object. You need to duplicate it if you want to keep using it.

Definition at line 82 of file CorbaOperationCallerFactory.hpp.

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 224 of file CorbaOperationCallerFactory.cpp.

base::DataSourceBase::shared_ptr CorbaOperationCallerFactory::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 378 of file CorbaOperationCallerFactory.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 298 of file CorbaOperationCallerFactory.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 271 of file CorbaOperationCallerFactory.cpp.

std::string CorbaOperationCallerFactory::resultType ( ) const [virtual]

Return the result (return) type of this operation.

Implements RTT::OperationInterfacePart.

Definition at line 99 of file CorbaOperationCallerFactory.cpp.


Member Data Documentation

Definition at line 67 of file CorbaOperationCallerFactory.hpp.

corba::CService_var RTT::corba::CorbaOperationCallerFactory::mfact [private]

Definition at line 65 of file CorbaOperationCallerFactory.hpp.

PortableServer::POA_var RTT::corba::CorbaOperationCallerFactory::mpoa [private]

Definition at line 66 of file CorbaOperationCallerFactory.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:43