Public Types | Public Member Functions | Protected Types | Protected Attributes
RTT::internal::LocalOperationCallerImpl< FunctionT > Class Template Reference

#include <LocalOperationCaller.hpp>

Inheritance diagram for RTT::internal::LocalOperationCallerImpl< FunctionT >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef boost::function_traits
< Signature >::result_type 
result_reference
typedef boost::function_traits
< Signature >::result_type 
result_type
typedef boost::shared_ptr
< LocalOperationCallerImpl
shared_ptr
typedef FunctionT Signature
typedef boost::function_traits
< Signature
traits

Public Member Functions

result_type call_impl ()
template<class T1 >
result_type call_impl (T1 a1)
template<class T1 , class T2 >
result_type call_impl (T1 a1, T2 a2)
template<class T1 , class T2 , class T3 >
result_type call_impl (T1 a1, T2 a2, T3 a3)
template<class T1 , class T2 , class T3 , class T4 >
result_type call_impl (T1 a1, T2 a2, T3 a3, T4 a4)
template<class T1 , class T2 , class T3 , class T4 , class T5 >
result_type call_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
result_type call_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
result_type call_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7)
virtual shared_ptr cloneRT () const =0
SendStatus collect_impl ()
template<class T1 >
SendStatus collect_impl (T1 &a1)
template<class T1 , class T2 >
SendStatus collect_impl (T1 &a1, T2 &a2)
template<class T1 , class T2 , class T3 >
SendStatus collect_impl (T1 &a1, T2 &a2, T3 &a3)
SendStatus collectIfDone_impl ()
template<class T1 >
SendStatus collectIfDone_impl (T1 &a1)
template<class T1 , class T2 >
SendStatus collectIfDone_impl (T1 &a1, T2 &a2)
template<class T1 , class T2 , class T3 >
SendStatus collectIfDone_impl (T1 &a1, T2 &a2, T3 &a3)
template<class T1 , class T2 , class T3 , class T4 >
SendStatus collectIfDone_impl (T1 &a1, T2 &a2, T3 &a3, T4 &a4)
template<class T1 , class T2 , class T3 , class T4 , class T5 >
SendStatus collectIfDone_impl (T1 &a1, T2 &a2, T3 &a3, T4 &a4, T5 &a5)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
SendStatus collectIfDone_impl (T1 &a1, T2 &a2, T3 &a3, T4 &a4, T5 &a5, T6 &a6)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
SendStatus collectIfDone_impl (T1 &a1, T2 &a2, T3 &a3, T4 &a4, T5 &a5, T6 &a6, T7 &a7)
void dispose ()
SendHandle< Signaturedo_send (shared_ptr cl)
void executeAndDispose ()
ExecutionEnginegetMessageProcessor () const
virtual bool isError () const
 LocalOperationCallerImpl ()
virtual bool ready () const
result_type ret_impl ()
template<class T1 >
result_type ret_impl (T1 a1)
template<class T1 , class T2 >
result_type ret_impl (T1 a1, T2 a2)
template<class T1 , class T2 , class T3 >
result_type ret_impl (T1 a1, T2 a2, T3 a3)
template<class T1 , class T2 , class T3 , class T4 >
result_type ret_impl (T1 a1, T2 a2, T3 a3, T4 a4)
template<class T1 , class T2 , class T3 , class T4 , class T5 >
result_type ret_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
result_type ret_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
result_type ret_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7)
SendHandle< Signaturesend_impl ()
template<class T1 >
SendHandle< Signaturesend_impl (T1 a1)
template<class T1 , class T2 >
SendHandle< Signaturesend_impl (T1 a1, T2 a2)
template<class T1 , class T2 , class T3 >
SendHandle< Signaturesend_impl (T1 a1, T2 a2, T3 a3)
template<class T1 , class T2 , class T3 , class T4 >
SendHandle< Signaturesend_impl (T1 a1, T2 a2, T3 a3, T4 a4)
template<class T1 , class T2 , class T3 , class T4 , class T5 >
SendHandle< Signaturesend_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
SendHandle< Signaturesend_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6)
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
SendHandle< Signaturesend_impl (T1 a1, T2 a2, T3 a3, T4 a4, T5 a5, T6 a6, T7 a7)

Protected Types

typedef BindStorage< FunctionT > Store

Protected Attributes

base::OperationCallerBase
< FunctionT >::shared_ptr 
self

Detailed Description

template<class FunctionT>
class RTT::internal::LocalOperationCallerImpl< FunctionT >

Implements call, send, collect, collectIfDone for all function arities.

You can pass arguments by (const) value and by (const) reference. Passing pointers is 'accidentally' supported in-process, it will not work with out-of-process calls. The send takes all arguments (C++ doesn't know pure out args), the collect() only takes the return value and the 'reference' arguments (if any)

If this object is disposed, the collection of results is no longer possible and this will generate a SendFailure at caller side.

Definition at line 77 of file LocalOperationCaller.hpp.


Member Typedef Documentation

template<class FunctionT>
typedef boost::function_traits<Signature>::result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::result_reference

Definition at line 86 of file LocalOperationCaller.hpp.

template<class FunctionT>
typedef boost::function_traits<Signature>::result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::result_type

Definition at line 85 of file LocalOperationCaller.hpp.

template<class FunctionT>
typedef boost::shared_ptr<LocalOperationCallerImpl> RTT::internal::LocalOperationCallerImpl< FunctionT >::shared_ptr

Use this type for shared pointer storage of an OperationCallerInterface object.

Reimplemented from RTT::base::OperationCallerBase< FunctionT >.

Definition at line 89 of file LocalOperationCaller.hpp.

template<class FunctionT>
typedef FunctionT RTT::internal::LocalOperationCallerImpl< FunctionT >::Signature

Definition at line 84 of file LocalOperationCaller.hpp.

template<class FunctionT>
typedef BindStorage<FunctionT> RTT::internal::LocalOperationCallerImpl< FunctionT >::Store [protected]

Definition at line 585 of file LocalOperationCaller.hpp.

template<class FunctionT>
typedef boost::function_traits<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::traits

Definition at line 87 of file LocalOperationCaller.hpp.


Constructor & Destructor Documentation

template<class FunctionT>
RTT::internal::LocalOperationCallerImpl< FunctionT >::LocalOperationCallerImpl ( ) [inline]

Definition at line 83 of file LocalOperationCaller.hpp.


Member Function Documentation

template<class FunctionT>
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( ) [inline]

Invoke this operator if the method has no arguments.

Definition at line 315 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( T1  a1) [inline]

Invoke this operator if the method has one argument.

Definition at line 340 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( T1  a1,
T2  a2 
) [inline]

Definition at line 364 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( T1  a1,
T2  a2,
T3  a3 
) [inline]

Definition at line 386 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4 
) [inline]

Definition at line 408 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5 
) [inline]

Definition at line 430 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6 
) [inline]

Definition at line 452 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::call_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6,
T7  a7 
) [inline]

Definition at line 474 of file LocalOperationCaller.hpp.

template<class FunctionT>
virtual shared_ptr RTT::internal::LocalOperationCallerImpl< FunctionT >::cloneRT ( ) const [pure virtual]
template<class FunctionT>
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collect_impl ( ) [inline]

Definition at line 290 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collect_impl ( T1 &  a1) [inline]

Definition at line 295 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collect_impl ( T1 &  a1,
T2 &  a2 
) [inline]

Definition at line 301 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collect_impl ( T1 &  a1,
T2 &  a2,
T3 &  a3 
) [inline]

Definition at line 307 of file LocalOperationCaller.hpp.

template<class FunctionT>
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( ) [inline]

Definition at line 210 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( T1 &  a1) [inline]

Definition at line 221 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( T1 &  a1,
T2 &  a2 
) [inline]

Definition at line 231 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( T1 &  a1,
T2 &  a2,
T3 &  a3 
) [inline]

Definition at line 241 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( T1 &  a1,
T2 &  a2,
T3 &  a3,
T4 &  a4 
) [inline]

Definition at line 251 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( T1 &  a1,
T2 &  a2,
T3 &  a3,
T4 &  a4,
T5 &  a5 
) [inline]

Definition at line 261 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( T1 &  a1,
T2 &  a2,
T3 &  a3,
T4 &  a4,
T5 &  a5,
T6 &  a6 
) [inline]

Definition at line 271 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
SendStatus RTT::internal::LocalOperationCallerImpl< FunctionT >::collectIfDone_impl ( T1 &  a1,
T2 &  a2,
T3 &  a3,
T4 &  a4,
T5 &  a5,
T6 &  a6,
T7 &  a7 
) [inline]

Definition at line 281 of file LocalOperationCaller.hpp.

template<class FunctionT>
void RTT::internal::LocalOperationCallerImpl< FunctionT >::dispose ( ) [inline, virtual]

As long as dispose (or executeAndDispose() ) is not called, this object will not be destroyed.

Implements RTT::base::DisposableInterface.

Definition at line 126 of file LocalOperationCaller.hpp.

template<class FunctionT>
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::do_send ( shared_ptr  cl) [inline]

Definition at line 135 of file LocalOperationCaller.hpp.

template<class FunctionT>
void RTT::internal::LocalOperationCallerImpl< FunctionT >::executeAndDispose ( ) [inline, virtual]

Execute functionality and free this object. You may no longer use this object after calling this method.

Implements RTT::base::DisposableInterface.

Definition at line 99 of file LocalOperationCaller.hpp.

template<class FunctionT>
ExecutionEngine* RTT::internal::LocalOperationCallerImpl< FunctionT >::getMessageProcessor ( ) const [inline]

Definition at line 133 of file LocalOperationCaller.hpp.

template<class FunctionT>
virtual bool RTT::internal::LocalOperationCallerImpl< FunctionT >::isError ( ) const [inline, virtual]

Definition at line 95 of file LocalOperationCaller.hpp.

template<class FunctionT>
virtual bool RTT::internal::LocalOperationCallerImpl< FunctionT >::ready ( ) const [inline, virtual]

Available such that implementations have a way to expose their ready-ness, ie being able to do the call.

Implements RTT::base::OperationCallerInterface.

Definition at line 91 of file LocalOperationCaller.hpp.

template<class FunctionT>
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( ) [inline]

Definition at line 495 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( T1  a1) [inline]

This function has the same signature of call() and returns the stored return value, and tries to return all arguments.

Definition at line 507 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( T1  a1,
T2  a2 
) [inline]

Definition at line 518 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( T1  a1,
T2  a2,
T3  a3 
) [inline]

Definition at line 529 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4 
) [inline]

Definition at line 540 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5 
) [inline]

Definition at line 551 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6 
) [inline]

Definition at line 562 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
result_type RTT::internal::LocalOperationCallerImpl< FunctionT >::ret_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6,
T7  a7 
) [inline]

Definition at line 573 of file LocalOperationCaller.hpp.

template<class FunctionT>
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( ) [inline]

Definition at line 149 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 >
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( T1  a1) [inline]

Definition at line 154 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 >
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( T1  a1,
T2  a2 
) [inline]

Definition at line 162 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 >
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( T1  a1,
T2  a2,
T3  a3 
) [inline]

Definition at line 170 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 >
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4 
) [inline]

Definition at line 178 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 >
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5 
) [inline]

Definition at line 186 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 >
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6 
) [inline]

Definition at line 194 of file LocalOperationCaller.hpp.

template<class FunctionT>
template<class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 >
SendHandle<Signature> RTT::internal::LocalOperationCallerImpl< FunctionT >::send_impl ( T1  a1,
T2  a2,
T3  a3,
T4  a4,
T5  a5,
T6  a6,
T7  a7 
) [inline]

Definition at line 202 of file LocalOperationCaller.hpp.


Member Data Documentation

template<class FunctionT>
base::OperationCallerBase<FunctionT>::shared_ptr RTT::internal::LocalOperationCallerImpl< FunctionT >::self [protected]

Used to refcount self as long as dispose() is not called. This refcount is real-time since both shared_ptr and object were allocated with the rt_allocator class.

Definition at line 591 of file LocalOperationCaller.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Mon Oct 6 2014 03:13:59