#include <DataSources.hpp>
Public Types | |
typedef boost::intrusive_ptr < NArityDataSource< function > > | shared_ptr |
Public Member Functions | |
void | add (typename DataSource< arg_t >::shared_ptr ds) |
virtual NArityDataSource < function > * | clone () const |
virtual NArityDataSource < function > * | copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const |
virtual value_t | get () const |
NArityDataSource (function f=function()) | |
NArityDataSource (function f, const std::vector< typename DataSource< arg_t >::shared_ptr > &dsargs) | |
virtual void | reset () |
DataSource< value_t > ::const_reference_t | rvalue () const |
virtual value_t | value () const |
Private Types | |
typedef remove_cr< typename function::argument_type > ::type | arg_t |
typedef remove_cr< typename function::result_type >::type | value_t |
Private Attributes | |
function | fun |
std::vector< arg_t > | margs |
value_t | mdata |
std::vector< typename DataSource< arg_t > ::shared_ptr > | mdsargs |
A generic N-arity composite DataSource. It collects data sources of the same type and passes the values found on to function by means of a std::vector.
function | Is a struct which defines value_t operator()(const std::vector<arg_t>&), where value_t is defined as function::result_type and arg_t is defined as function::argument_type. |
Definition at line 809 of file DataSources.hpp.
typedef remove_cr<typename function::argument_type>::type RTT::internal::NArityDataSource< function >::arg_t [private] |
Definition at line 813 of file DataSources.hpp.
typedef boost::intrusive_ptr<NArityDataSource<function> > RTT::internal::NArityDataSource< function >::shared_ptr |
Use this type to store a pointer to a DataSourceBase.
Reimplemented from RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 819 of file DataSources.hpp.
typedef remove_cr<typename function::result_type>::type RTT::internal::NArityDataSource< function >::value_t [private] |
The bare type of T is extracted into value_t.
Reimplemented from RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 812 of file DataSources.hpp.
RTT::internal::NArityDataSource< function >::NArityDataSource | ( | function | f = function() | ) | [inline] |
Create a DataSource which returns the return value of a function f.
Definition at line 825 of file DataSources.hpp.
RTT::internal::NArityDataSource< function >::NArityDataSource | ( | function | f, |
const std::vector< typename DataSource< arg_t >::shared_ptr > & | dsargs | ||
) | [inline] |
Create a DataSource which returns the return value of a function f.
Definition at line 834 of file DataSources.hpp.
void RTT::internal::NArityDataSource< function >::add | ( | typename DataSource< arg_t >::shared_ptr | ds | ) | [inline] |
Definition at line 839 of file DataSources.hpp.
virtual NArityDataSource<function>* RTT::internal::NArityDataSource< function >::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< function::result_type >::type >.
Definition at line 868 of file DataSources.hpp.
virtual NArityDataSource<function>* RTT::internal::NArityDataSource< function >::copy | ( | std::map< const base::DataSourceBase *, base::DataSourceBase * > & | alreadyCloned | ) | const [inline, virtual] |
Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 873 of file DataSources.hpp.
virtual value_t RTT::internal::NArityDataSource< function >::get | ( | ) | const [inline, virtual] |
Return the data as type T.
Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.
Definition at line 844 of file DataSources.hpp.
virtual void RTT::internal::NArityDataSource< function >::reset | ( | ) | [inline, virtual] |
Reset the data to initial values.
Reimplemented from RTT::base::DataSourceBase.
Definition at line 862 of file DataSources.hpp.
DataSource<value_t>::const_reference_t RTT::internal::NArityDataSource< function >::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< function::result_type >::type >.
Definition at line 857 of file DataSources.hpp.
virtual value_t RTT::internal::NArityDataSource< function >::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< function::result_type >::type >.
Definition at line 852 of file DataSources.hpp.
function RTT::internal::NArityDataSource< function >::fun [private] |
Definition at line 816 of file DataSources.hpp.
std::vector<arg_t> RTT::internal::NArityDataSource< function >::margs [mutable, private] |
Definition at line 814 of file DataSources.hpp.
value_t RTT::internal::NArityDataSource< function >::mdata [mutable, private] |
Definition at line 817 of file DataSources.hpp.
std::vector<typename DataSource<arg_t>::shared_ptr > RTT::internal::NArityDataSource< function >::mdsargs [private] |
Definition at line 815 of file DataSources.hpp.