#include <FusedFunctorDataSource.hpp>
Public Types | |
typedef SequenceFactory::atype | DataSourceSequence |
typedef boost::function_traits< Signature >::result_type | result_type |
typedef create_sequence< typename boost::function_types::parameter_types< Signature >::type > | SequenceFactory |
typedef boost::shared_ptr< FusedMSignal< Signature > > | shared_ptr |
typedef result_type | value_t |
Public Types inherited from RTT::base::DisposableInterface | |
typedef boost::shared_ptr< DisposableInterface > | shared_ptr |
Public Member Functions | |
FusedMSignal< Signature >::shared_ptr | cloneRT () const |
void | dispose () |
void | executeAndDispose () |
FusedMSignal (base::ActionInterface *act, const DataSourceSequence &s, ExecutionEngine *subscr) | |
result_type | invoke (const typename SequenceFactory::data_type &seq) const |
void | setArguments (const DataSourceSequence &a1) |
~FusedMSignal () | |
Public Member Functions inherited from RTT::base::DisposableInterface | |
virtual | ~DisposableInterface () |
Public Attributes | |
SequenceFactory::data_store_type | arg_cache |
DataSourceSequence | args |
boost::shared_ptr< base::ActionInterface > | mact |
boost::shared_ptr< FusedMSignal< Signature > > | self |
ExecutionEngine * | subscriber |
A Function object that reacts to a Signal by writing the arguments in data sources and calling an action object.
Implementation note: this class does not require copy/clone semantics because it is re-created for each SM instantiation, so it already gets the copy/cloned Data Sources in its constructor.
Definition at line 511 of file FusedFunctorDataSource.hpp.
typedef SequenceFactory::atype RTT::internal::FusedMSignal< Signature >::DataSourceSequence |
Definition at line 518 of file FusedFunctorDataSource.hpp.
typedef boost::function_traits<Signature>::result_type RTT::internal::FusedMSignal< Signature >::result_type |
Definition at line 514 of file FusedFunctorDataSource.hpp.
typedef create_sequence< typename boost::function_types::parameter_types<Signature>::type> RTT::internal::FusedMSignal< Signature >::SequenceFactory |
Definition at line 517 of file FusedFunctorDataSource.hpp.
typedef boost::shared_ptr<FusedMSignal<Signature> > RTT::internal::FusedMSignal< Signature >::shared_ptr |
Definition at line 532 of file FusedFunctorDataSource.hpp.
typedef result_type RTT::internal::FusedMSignal< Signature >::value_t |
Definition at line 515 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 541 of file FusedFunctorDataSource.hpp.
|
inline |
Definition at line 548 of file FusedFunctorDataSource.hpp.
|
inline |
Definition at line 596 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 586 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 576 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 556 of file FusedFunctorDataSource.hpp.
|
inline |
Definition at line 591 of file FusedFunctorDataSource.hpp.
SequenceFactory::data_store_type RTT::internal::FusedMSignal< Signature >::arg_cache |
Definition at line 522 of file FusedFunctorDataSource.hpp.
DataSourceSequence RTT::internal::FusedMSignal< Signature >::args |
Definition at line 523 of file FusedFunctorDataSource.hpp.
boost::shared_ptr<base::ActionInterface> RTT::internal::FusedMSignal< Signature >::mact |
Definition at line 519 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 530 of file FusedFunctorDataSource.hpp.
ExecutionEngine* RTT::internal::FusedMSignal< Signature >::subscriber |
Definition at line 524 of file FusedFunctorDataSource.hpp.