RTT::internal::PartDataSource< T > Class Template Reference

#include <PartDataSource.hpp>

Inheritance diagram for RTT::internal::PartDataSource< T >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef boost::intrusive_ptr
< PartDataSource< T > > 
shared_ptr
typedef boost::intrusive_ptr
< PartDataSource< T > > 
shared_ptr

Public Member Functions

virtual PartDataSource< T > * clone () const
virtual PartDataSource< T > * clone () const
virtual PartDataSource< T > * copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &replace) const
virtual PartDataSource< T > * copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &replace) const
DataSource< T >::result_t get () const
DataSource< T >::result_t get () const
 PartDataSource (typename AssignableDataSource< T >::reference_t ref, base::DataSourceBase::shared_ptr parent)
 PartDataSource (typename AssignableDataSource< T >::reference_t ref, base::DataSourceBase::shared_ptr parent)
AssignableDataSource< T >
::const_reference_t 
rvalue () const
AssignableDataSource< T >
::const_reference_t 
rvalue () const
AssignableDataSource< T >
::reference_t 
set ()
void set (typename AssignableDataSource< T >::param_t t)
AssignableDataSource< T >
::reference_t 
set ()
void set (typename AssignableDataSource< T >::param_t t)
void updated ()
void updated ()
DataSource< T >::result_t value () const
DataSource< T >::result_t value () const
 ~PartDataSource ()
 ~PartDataSource ()

Private Attributes

base::DataSourceBase::shared_ptr mparent
AssignableDataSource< T >
::reference_t 
mref

Detailed Description

template<typename T>
class RTT::internal::PartDataSource< T >

A DataSource which is used to manipulate a reference to a part of a data source.

This data source only works on a fixed reference in memory of a given data sequence (ie an element of a top level struct). In case the part's place in memory varies, you need the OffsetPartDataSource, which can access an element at any offset from a given memory location.

Parameters:
T The data type of an element.

Definition at line 62 of file install/include/rtt/internal/PartDataSource.hpp.


Member Typedef Documentation

template<typename T>
typedef boost::intrusive_ptr<PartDataSource<T> > RTT::internal::PartDataSource< T >::shared_ptr

Use this type to store a pointer to an AssignableDataSource.

Reimplemented from RTT::internal::AssignableDataSource< T >.

Definition at line 72 of file rtt/internal/PartDataSource.hpp.

template<typename T>
typedef boost::intrusive_ptr<PartDataSource<T> > RTT::internal::PartDataSource< T >::shared_ptr

Use this type to store a pointer to an AssignableDataSource.

Reimplemented from RTT::internal::AssignableDataSource< T >.

Definition at line 72 of file install/include/rtt/internal/PartDataSource.hpp.


Constructor & Destructor Documentation

template<typename T>
RTT::internal::PartDataSource< T >::~PartDataSource (  )  [inline]
template<typename T>
RTT::internal::PartDataSource< T >::PartDataSource ( typename AssignableDataSource< T >::reference_t  ref,
base::DataSourceBase::shared_ptr  parent 
) [inline]

The part is constructed from a reference to a member variable of an existing struct.

Parameters:
ref Reference to the struct's variable.
parent A data source holding the struct.

Definition at line 80 of file install/include/rtt/internal/PartDataSource.hpp.

template<typename T>
RTT::internal::PartDataSource< T >::~PartDataSource (  )  [inline]

Definition at line 70 of file rtt/internal/PartDataSource.hpp.

template<typename T>
RTT::internal::PartDataSource< T >::PartDataSource ( typename AssignableDataSource< T >::reference_t  ref,
base::DataSourceBase::shared_ptr  parent 
) [inline]

The part is constructed from a reference to a member variable of an existing struct.

Parameters:
ref Reference to the struct's variable.
parent A data source holding the struct.

Definition at line 80 of file rtt/internal/PartDataSource.hpp.


Member Function Documentation

template<typename T>
virtual PartDataSource<T>* RTT::internal::PartDataSource< T >::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::AssignableDataSource< T >.

Definition at line 116 of file rtt/internal/PartDataSource.hpp.

template<typename T>
virtual PartDataSource<T>* RTT::internal::PartDataSource< T >::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::AssignableDataSource< T >.

Definition at line 116 of file install/include/rtt/internal/PartDataSource.hpp.

template<typename T>
virtual PartDataSource<T>* RTT::internal::PartDataSource< T >::copy ( std::map< const base::DataSourceBase *, base::DataSourceBase * > &  replace  )  const [inline, virtual]
template<typename T>
virtual PartDataSource<T>* RTT::internal::PartDataSource< T >::copy ( std::map< const base::DataSourceBase *, base::DataSourceBase * > &  replace  )  const [inline, virtual]
template<typename T>
DataSource<T>::result_t RTT::internal::PartDataSource< T >::get (  )  const [inline, virtual]

Return the data as type T.

Implements RTT::internal::DataSource< T >.

Definition at line 86 of file rtt/internal/PartDataSource.hpp.

template<typename T>
DataSource<T>::result_t RTT::internal::PartDataSource< T >::get (  )  const [inline, virtual]

Return the data as type T.

Implements RTT::internal::DataSource< T >.

Definition at line 86 of file install/include/rtt/internal/PartDataSource.hpp.

template<typename T>
AssignableDataSource<T>::const_reference_t RTT::internal::PartDataSource< T >::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< T >.

Definition at line 107 of file rtt/internal/PartDataSource.hpp.

template<typename T>
AssignableDataSource<T>::const_reference_t RTT::internal::PartDataSource< T >::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< T >.

Definition at line 107 of file install/include/rtt/internal/PartDataSource.hpp.

template<typename T>
AssignableDataSource<T>::reference_t RTT::internal::PartDataSource< T >::set (  )  [inline, virtual]

Get a reference to the value of this DataSource. Getting a reference to an internal data structure is not thread-safe.

Implements RTT::internal::AssignableDataSource< T >.

Definition at line 102 of file rtt/internal/PartDataSource.hpp.

template<typename T>
void RTT::internal::PartDataSource< T >::set ( typename AssignableDataSource< T >::param_t  t  )  [inline]

Definition at line 96 of file rtt/internal/PartDataSource.hpp.

template<typename T>
AssignableDataSource<T>::reference_t RTT::internal::PartDataSource< T >::set (  )  [inline, virtual]

Get a reference to the value of this DataSource. Getting a reference to an internal data structure is not thread-safe.

Implements RTT::internal::AssignableDataSource< T >.

Definition at line 102 of file install/include/rtt/internal/PartDataSource.hpp.

template<typename T>
void RTT::internal::PartDataSource< T >::set ( typename AssignableDataSource< T >::param_t  t  )  [inline]
template<typename T>
void RTT::internal::PartDataSource< T >::updated (  )  [inline, virtual]

In case the internal::DataSource returns a 'reference' type, call this method to notify it that the data was updated in the course of an invocation of get().

Reimplemented from RTT::base::DataSourceBase.

Definition at line 112 of file rtt/internal/PartDataSource.hpp.

template<typename T>
void RTT::internal::PartDataSource< T >::updated (  )  [inline, virtual]

In case the internal::DataSource returns a 'reference' type, call this method to notify it that the data was updated in the course of an invocation of get().

Reimplemented from RTT::base::DataSourceBase.

Definition at line 112 of file install/include/rtt/internal/PartDataSource.hpp.

template<typename T>
DataSource<T>::result_t RTT::internal::PartDataSource< T >::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< T >.

Definition at line 91 of file rtt/internal/PartDataSource.hpp.

template<typename T>
DataSource<T>::result_t RTT::internal::PartDataSource< T >::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< T >.

Definition at line 91 of file install/include/rtt/internal/PartDataSource.hpp.


Member Data Documentation

template<typename T>
AssignableDataSource< T >::reference_t RTT::internal::PartDataSource< T >::mref [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