RTT::internal::NArityDataSource< function > Class Template Reference

#include <DataSources.hpp>

Inheritance diagram for RTT::internal::NArityDataSource< function >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef boost::intrusive_ptr
< NArityDataSource< function > > 
shared_ptr
typedef boost::intrusive_ptr
< NArityDataSource< function > > 
shared_ptr

Public Member Functions

void add (typename DataSource< arg_t >::shared_ptr ds)
void add (typename DataSource< arg_t >::shared_ptr ds)
virtual NArityDataSource
< function > * 
clone () const
virtual NArityDataSource
< function > * 
clone () const
virtual NArityDataSource
< function > * 
copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const
virtual NArityDataSource
< function > * 
copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const
virtual value_t get () const
virtual value_t get () const
 NArityDataSource (function f, const std::vector< typename DataSource< arg_t >::shared_ptr > &dsargs)
 NArityDataSource (function f=function())
 NArityDataSource (function f, const std::vector< typename DataSource< arg_t >::shared_ptr > &dsargs)
 NArityDataSource (function f=function())
virtual void reset ()
virtual void reset ()
DataSource< value_t >
::const_reference_t 
rvalue () const
DataSource< value_t >
::const_reference_t 
rvalue () const
virtual value_t value () const
virtual value_t value () const

Private Types

typedef remove_cr< typename
function::argument_type >
::type 
arg_t
typedef remove_cr< typename
function::argument_type >
::type 
arg_t
typedef remove_cr< typename
function::result_type >::type 
value_t
typedef remove_cr< typename
function::result_type >::type 
value_t

Private Attributes

function fun
std::vector< arg_tmargs
value_t mdata
std::vector< typename
DataSource< arg_t >
::shared_ptr
mdsargs

Detailed Description

template<typename function>
class RTT::internal::NArityDataSource< function >

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.

Parameters:
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 722 of file install/include/rtt/internal/DataSources.hpp.


Member Typedef Documentation

template<typename function>
typedef remove_cr<typename function::argument_type>::type RTT::internal::NArityDataSource< function >::arg_t [private]

Definition at line 726 of file rtt/internal/DataSources.hpp.

template<typename function>
typedef remove_cr<typename function::argument_type>::type RTT::internal::NArityDataSource< function >::arg_t [private]
template<typename function>
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 732 of file rtt/internal/DataSources.hpp.

template<typename function>
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 732 of file install/include/rtt/internal/DataSources.hpp.

template<typename function>
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 725 of file rtt/internal/DataSources.hpp.

template<typename function>
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 725 of file install/include/rtt/internal/DataSources.hpp.


Constructor & Destructor Documentation

template<typename function>
RTT::internal::NArityDataSource< function >::NArityDataSource ( function  f = function()  )  [inline]

Create a DataSource which returns the return value of a function f.

Definition at line 738 of file install/include/rtt/internal/DataSources.hpp.

template<typename function>
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 747 of file install/include/rtt/internal/DataSources.hpp.

template<typename function>
RTT::internal::NArityDataSource< function >::NArityDataSource ( function  f = function()  )  [inline]

Create a DataSource which returns the return value of a function f.

Definition at line 738 of file rtt/internal/DataSources.hpp.

template<typename function>
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 747 of file rtt/internal/DataSources.hpp.


Member Function Documentation

template<typename function>
void RTT::internal::NArityDataSource< function >::add ( typename DataSource< arg_t >::shared_ptr  ds  )  [inline]

Definition at line 752 of file rtt/internal/DataSources.hpp.

template<typename function>
void RTT::internal::NArityDataSource< function >::add ( typename DataSource< arg_t >::shared_ptr  ds  )  [inline]
template<typename function>
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 781 of file rtt/internal/DataSources.hpp.

template<typename function>
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 781 of file install/include/rtt/internal/DataSources.hpp.

template<typename function>
virtual NArityDataSource<function>* RTT::internal::NArityDataSource< function >::copy ( std::map< const base::DataSourceBase *, base::DataSourceBase * > &  alreadyCloned  )  const [inline, virtual]
template<typename function>
virtual NArityDataSource<function>* RTT::internal::NArityDataSource< function >::copy ( std::map< const base::DataSourceBase *, base::DataSourceBase * > &  alreadyCloned  )  const [inline, virtual]
template<typename function>
virtual value_t RTT::internal::NArityDataSource< function >::get (  )  const [inline, virtual]
template<typename function>
virtual value_t RTT::internal::NArityDataSource< function >::get (  )  const [inline, virtual]
template<typename function>
virtual void RTT::internal::NArityDataSource< function >::reset (  )  [inline, virtual]

Reset the data to initial values.

Reimplemented from RTT::base::DataSourceBase.

Definition at line 775 of file rtt/internal/DataSources.hpp.

template<typename function>
virtual void RTT::internal::NArityDataSource< function >::reset (  )  [inline, virtual]

Reset the data to initial values.

Reimplemented from RTT::base::DataSourceBase.

Definition at line 775 of file install/include/rtt/internal/DataSources.hpp.

template<typename function>
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.

Note:
Getting a reference to an internal data structure is not thread-safe.

Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.

Definition at line 770 of file rtt/internal/DataSources.hpp.

template<typename function>
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.

Note:
Getting a reference to an internal data structure is not thread-safe.

Implements RTT::internal::DataSource< remove_cr< function::result_type >::type >.

Definition at line 770 of file install/include/rtt/internal/DataSources.hpp.

template<typename function>
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 765 of file rtt/internal/DataSources.hpp.

template<typename function>
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 765 of file install/include/rtt/internal/DataSources.hpp.


Member Data Documentation

template<typename function>
function RTT::internal::NArityDataSource< function >::fun [private]
template<typename function>
std::vector< arg_t > RTT::internal::NArityDataSource< function >::margs [mutable, private]
template<typename function>
value_t RTT::internal::NArityDataSource< function >::mdata [mutable, private]
template<typename function>
std::vector< typename DataSource< arg_t >::shared_ptr > RTT::internal::NArityDataSource< function >::mdsargs [private]

The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


rtt
Author(s): RTT Developers
autogenerated on Fri Jan 11 09:50:04 2013