#include <FusedFunctorDataSource.hpp>
Public Types | |
typedef SequenceFactory::data_type | arg_type |
typedef boost::function < Signature > | call_type |
typedef DataSource< value_t > ::const_reference_t | const_reference_t |
typedef SequenceFactory::type | DataSourceSequence |
typedef boost::function_traits < Signature >::result_type | result_type |
typedef create_sequence < typename boost::function_types::parameter_types < Signature >::type > | SequenceFactory |
typedef boost::intrusive_ptr < FusedFunctorDataSource < Signature > > | shared_ptr |
typedef remove_cr< result_type > ::type | value_t |
Public Member Functions | |
virtual FusedFunctorDataSource < Signature > * | clone () const |
virtual FusedFunctorDataSource < Signature > * | copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const |
bool | evaluate () const |
template<class Func > | |
FusedFunctorDataSource (Func g, const DataSourceSequence &s=DataSourceSequence()) | |
value_t | get () const |
const_reference_t | rvalue () const |
void | setArguments (const DataSourceSequence &a1) |
value_t | value () const |
Public Attributes | |
DataSourceSequence | args |
boost::function< Signature > | ff |
RStore< result_type > | ret |
A DataSource that calls a functor of signature Signature which gets its arguments from other data sources. The result type of this data source is the result type of the called function.
Definition at line 69 of file FusedFunctorDataSource.hpp.
typedef SequenceFactory::data_type RTT::internal::FusedFunctorDataSource< Signature, Enable >::arg_type |
Definition at line 82 of file FusedFunctorDataSource.hpp.
typedef boost::function<Signature> RTT::internal::FusedFunctorDataSource< Signature, Enable >::call_type |
Definition at line 81 of file FusedFunctorDataSource.hpp.
typedef DataSource<value_t>::const_reference_t RTT::internal::FusedFunctorDataSource< Signature, Enable >::const_reference_t |
Reimplemented from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 77 of file FusedFunctorDataSource.hpp.
typedef SequenceFactory::type RTT::internal::FusedFunctorDataSource< Signature, Enable >::DataSourceSequence |
Definition at line 80 of file FusedFunctorDataSource.hpp.
typedef boost::function_traits<Signature>::result_type RTT::internal::FusedFunctorDataSource< Signature, Enable >::result_type |
Definition at line 75 of file FusedFunctorDataSource.hpp.
typedef create_sequence< typename boost::function_types::parameter_types<Signature>::type> RTT::internal::FusedFunctorDataSource< Signature, Enable >::SequenceFactory |
Definition at line 79 of file FusedFunctorDataSource.hpp.
typedef boost::intrusive_ptr<FusedFunctorDataSource<Signature> > RTT::internal::FusedFunctorDataSource< Signature, Enable >::shared_ptr |
Use this type to store a pointer to a DataSourceBase.
Reimplemented from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 88 of file FusedFunctorDataSource.hpp.
typedef remove_cr<result_type>::type RTT::internal::FusedFunctorDataSource< Signature, Enable >::value_t |
The bare type of T is extracted into value_t.
Reimplemented from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 76 of file FusedFunctorDataSource.hpp.
RTT::internal::FusedFunctorDataSource< Signature, Enable >::FusedFunctorDataSource | ( | Func | g, |
const DataSourceSequence & | s = DataSourceSequence() |
||
) | [inline] |
Definition at line 91 of file FusedFunctorDataSource.hpp.
virtual FusedFunctorDataSource<Signature>* RTT::internal::FusedFunctorDataSource< Signature, Enable >::clone | ( | ) | const [inline, virtual] |
Return a shallow clone of this DataSource. This method returns a duplicate of this instance which re-uses the DataSources this internal::DataSource holds reference to. The clone() function is thus a non-deep copy.
Implements RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 130 of file FusedFunctorDataSource.hpp.
virtual FusedFunctorDataSource<Signature>* RTT::internal::FusedFunctorDataSource< Signature, Enable >::copy | ( | std::map< const base::DataSourceBase *, base::DataSourceBase * > & | alreadyCloned | ) | const [inline, virtual] |
Implements RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 134 of file FusedFunctorDataSource.hpp.
bool RTT::internal::FusedFunctorDataSource< Signature, Enable >::evaluate | ( | ) | const [inline, virtual] |
Force an evaluation of the DataSourceBase.
Reimplemented from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 112 of file FusedFunctorDataSource.hpp.
value_t RTT::internal::FusedFunctorDataSource< Signature, Enable >::get | ( | ) | const [inline, virtual] |
Return the data as type T.
Implements RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 124 of file FusedFunctorDataSource.hpp.
const_reference_t RTT::internal::FusedFunctorDataSource< Signature, Enable >::rvalue | ( | ) | const [inline, virtual] |
Get a const reference to the value of this DataSource. You must call evaluate() prior to calling this function in order to get the most recent value of this attribute.
Implements RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 107 of file FusedFunctorDataSource.hpp.
void RTT::internal::FusedFunctorDataSource< Signature, Enable >::setArguments | ( | const DataSourceSequence & | a1 | ) | [inline] |
Definition at line 97 of file FusedFunctorDataSource.hpp.
value_t RTT::internal::FusedFunctorDataSource< Signature, Enable >::value | ( | ) | const [inline, virtual] |
Return the result of the last evaluate() function. You must call evaluate() prior to calling this function in order to get the most recent value of this attribute.
Implements RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 102 of file FusedFunctorDataSource.hpp.
DataSourceSequence RTT::internal::FusedFunctorDataSource< Signature, Enable >::args |
Definition at line 84 of file FusedFunctorDataSource.hpp.
boost::function<Signature> RTT::internal::FusedFunctorDataSource< Signature, Enable >::ff |
Definition at line 83 of file FusedFunctorDataSource.hpp.
RStore<result_type> RTT::internal::FusedFunctorDataSource< Signature, Enable >::ret [mutable] |
Definition at line 85 of file FusedFunctorDataSource.hpp.