Orocos Real-Time Toolkit
2.8.3
|
A Function object that reacts to a Signal by writing the arguments in data sources and calling an action object. More...
#include <rtt/internal/FusedFunctorDataSource.hpp>
Public Types | |
typedef boost::function_traits< Signature >::result_type | result_type |
typedef result_type | value_t |
typedef create_sequence< typename boost::function_types::parameter_types< Signature >::type > | SequenceFactory |
typedef SequenceFactory::atype | DataSourceSequence |
typedef boost::shared_ptr< FusedMSignal< Signature > > | shared_ptr |
Public Member Functions | |
FusedMSignal (base::ActionInterface *act, const DataSourceSequence &s, ExecutionEngine *subscr) | |
Create a new object which takes ownership of the action to be executed upon signal. More... | |
~FusedMSignal () | |
result_type | invoke (const typename SequenceFactory::data_type &seq) const |
A Fused function that takes the arguments of the signal, puts them into the assignable data sources and executes the associated action. More... | |
void | executeAndDispose () |
Execute functionality and free this object. More... | |
void | dispose () |
As long as dispose (or executeAndDispose() ) is not called, this object will not be destroyed. More... | |
void | setArguments (const DataSourceSequence &a1) |
FusedMSignal< Signature >::shared_ptr | cloneRT () const |
Public Attributes | |
boost::shared_ptr< base::ActionInterface > | mact |
DataSourceSequence | args |
ExecutionEngine * | subscriber |
boost::shared_ptr< FusedMSignal< Signature > > | self |
Used to refcount self as long as dispose() is not called. More... | |
A Function object that reacts to a Signal by writing the arguments in data sources and calling an action object.
Definition at line 469 of file FusedFunctorDataSource.hpp.
typedef SequenceFactory::atype RTT::internal::FusedMSignal< Signature >::DataSourceSequence |
Definition at line 476 of file FusedFunctorDataSource.hpp.
typedef boost::function_traits<Signature>::result_type RTT::internal::FusedMSignal< Signature >::result_type |
Definition at line 472 of file FusedFunctorDataSource.hpp.
typedef create_sequence< typename boost::function_types::parameter_types<Signature>::type> RTT::internal::FusedMSignal< Signature >::SequenceFactory |
Definition at line 475 of file FusedFunctorDataSource.hpp.
typedef boost::shared_ptr<FusedMSignal<Signature> > RTT::internal::FusedMSignal< Signature >::shared_ptr |
Definition at line 487 of file FusedFunctorDataSource.hpp.
typedef result_type RTT::internal::FusedMSignal< Signature >::value_t |
Definition at line 473 of file FusedFunctorDataSource.hpp.
|
inline |
Create a new object which takes ownership of the action to be executed upon signal.
act | The action to be executed upon invoke() |
s | The data sources we have to fill in before executing the action |
subscr | The ExecutionEngine that will execute the action in it's thread. If null is given, the action is executed synchronously within invoke() |
Definition at line 496 of file FusedFunctorDataSource.hpp.
|
inline |
Definition at line 503 of file FusedFunctorDataSource.hpp.
|
inline |
Definition at line 551 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
As long as dispose (or executeAndDispose() ) is not called, this object will not be destroyed.
Implements RTT::base::DisposableInterface.
Definition at line 541 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
Execute functionality and free this object.
You may no longer use this object after calling this method.
Implements RTT::base::DisposableInterface.
Definition at line 532 of file FusedFunctorDataSource.hpp.
|
inline |
A Fused function that takes the arguments of the signal, puts them into the assignable data sources and executes the associated action.
Definition at line 511 of file FusedFunctorDataSource.hpp.
References RTT::internal::NA< T >::na(), RTT::ExecutionEngine::process(), and RTT::internal::create_sequence_impl< List, mpl::size< List >::value >::set().
|
inline |
Definition at line 546 of file FusedFunctorDataSource.hpp.
DataSourceSequence RTT::internal::FusedMSignal< Signature >::args |
Definition at line 478 of file FusedFunctorDataSource.hpp.
boost::shared_ptr<base::ActionInterface> RTT::internal::FusedMSignal< Signature >::mact |
Definition at line 477 of file FusedFunctorDataSource.hpp.
boost::shared_ptr<FusedMSignal<Signature> > RTT::internal::FusedMSignal< Signature >::self |
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 485 of file FusedFunctorDataSource.hpp.
ExecutionEngine* RTT::internal::FusedMSignal< Signature >::subscriber |
Definition at line 479 of file FusedFunctorDataSource.hpp.