#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 Types inherited from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type > | |
typedef boost::intrusive_ptr< const DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type > > | const_ptr |
typedef details::GetConstRef< remove_cr< boost::function_traits< Signature >::result_type >::type >::type | const_reference_t |
typedef remove_cr< boost::function_traits< Signature >::result_type >::type | result_t |
typedef boost::intrusive_ptr< DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type > > | shared_ptr |
typedef remove_cr< boost::function_traits< Signature >::result_type >::type | value_t |
Public Types inherited from RTT::base::DataSourceBase | |
typedef boost::intrusive_ptr< const DataSourceBase > | const_ptr |
typedef boost::intrusive_ptr< DataSourceBase > | shared_ptr |
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 Member Functions inherited from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type > | |
BOOST_STATIC_ASSERT (!details::HasConst< remove_cr< boost::function_traits< Signature >::result_type >::type >::value) | |
void const * | getRawConstPointer () |
virtual std::string | getType () const |
virtual const types::TypeInfo * | getTypeInfo () const |
virtual std::string | getTypeName () const |
Public Member Functions inherited from RTT::base::DataSourceBase | |
virtual DataSourceBase * | copy (std::map< const DataSourceBase *, DataSourceBase * > &alreadyCloned) const =0 |
DataSourceBase () | |
void | deref () const |
virtual shared_ptr | getMember (const std::string &member_name) |
virtual shared_ptr | getMember (DataSourceBase::shared_ptr member_id, DataSourceBase::shared_ptr offset) |
virtual std::vector< std::string > | getMemberNames () const |
virtual shared_ptr | getParent () |
virtual void * | getRawPointer () |
virtual bool | isAssignable () const |
void | ref () const |
virtual void | reset () |
std::string | toString () |
virtual bool | update (DataSourceBase *other) |
virtual ActionInterface * | updateAction (DataSourceBase *other) |
virtual void | updated () |
std::ostream & | write (std::ostream &os) |
Public Attributes | |
DataSourceSequence | args |
boost::function< Signature > | ff |
RStore< result_type > | ret |
Additional Inherited Members | |
Static Public Member Functions inherited from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type > | |
static std::string | GetType () |
static const types::TypeInfo * | GetTypeInfo () |
static std::string | GetTypeName () |
static DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type > * | narrow (base::DataSourceBase *db) |
Static Public Member Functions inherited from RTT::base::DataSourceBase | |
static const_ptr | stack_const_ptr (const DataSourceBase *dsb) |
static shared_ptr | stack_shared_ptr (DataSourceBase *dsb) |
Protected Member Functions inherited from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type > | |
virtual | ~DataSource () |
Protected Member Functions inherited from RTT::base::DataSourceBase | |
virtual | ~DataSourceBase () |
Protected Attributes inherited from RTT::base::DataSourceBase | |
os::AtomicInt | refcount |
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 70 of file FusedFunctorDataSource.hpp.
typedef SequenceFactory::data_type RTT::internal::FusedFunctorDataSource< Signature, Enable >::arg_type |
Definition at line 83 of file FusedFunctorDataSource.hpp.
typedef boost::function<Signature> RTT::internal::FusedFunctorDataSource< Signature, Enable >::call_type |
Definition at line 82 of file FusedFunctorDataSource.hpp.
typedef DataSource<value_t>::const_reference_t RTT::internal::FusedFunctorDataSource< Signature, Enable >::const_reference_t |
Definition at line 78 of file FusedFunctorDataSource.hpp.
typedef SequenceFactory::type RTT::internal::FusedFunctorDataSource< Signature, Enable >::DataSourceSequence |
Definition at line 81 of file FusedFunctorDataSource.hpp.
typedef boost::function_traits<Signature>::result_type RTT::internal::FusedFunctorDataSource< Signature, Enable >::result_type |
Definition at line 76 of file FusedFunctorDataSource.hpp.
typedef create_sequence< typename boost::function_types::parameter_types<Signature>::type> RTT::internal::FusedFunctorDataSource< Signature, Enable >::SequenceFactory |
Definition at line 80 of file FusedFunctorDataSource.hpp.
typedef boost::intrusive_ptr<FusedFunctorDataSource<Signature> > RTT::internal::FusedFunctorDataSource< Signature, Enable >::shared_ptr |
Definition at line 89 of file FusedFunctorDataSource.hpp.
typedef remove_cr<result_type>::type RTT::internal::FusedFunctorDataSource< Signature, Enable >::value_t |
Definition at line 77 of file FusedFunctorDataSource.hpp.
|
inline |
Definition at line 92 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
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 131 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
Implements RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 135 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
Force an evaluation of the DataSourceBase.
Reimplemented from RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 113 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
Return the data as type T.
Implements RTT::internal::DataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >.
Definition at line 125 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
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 108 of file FusedFunctorDataSource.hpp.
|
inline |
Definition at line 98 of file FusedFunctorDataSource.hpp.
|
inlinevirtual |
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 103 of file FusedFunctorDataSource.hpp.
DataSourceSequence RTT::internal::FusedFunctorDataSource< Signature, Enable >::args |
Definition at line 85 of file FusedFunctorDataSource.hpp.
boost::function<Signature> RTT::internal::FusedFunctorDataSource< Signature, Enable >::ff |
Definition at line 84 of file FusedFunctorDataSource.hpp.
|
mutable |
Definition at line 86 of file FusedFunctorDataSource.hpp.