Public Types | Public Member Functions | Private Attributes
RTT::internal::ArrayPartDataSource< T > Class Template Reference

#include <ArrayPartDataSource.hpp>

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

List of all members.

Public Types

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

Public Member Functions

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

Private Attributes

DataSource< unsigned int >
::shared_ptr 
mindex
unsigned int mmax
base::DataSourceBase::shared_ptr mparent
AssignableDataSource< T >
::value_t
mref

Detailed Description

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

A DataSource which is used to manipulate a reference to a part of a data source holding a C-style array of elements.

This data source only works on a fixed reference in memory of a given array. In case the array's place in memory varies, you need the OffsetPartDataSource, which can access an element at any offset from a given memory location.

Parameters:
TThe data type of an element.

Definition at line 61 of file ArrayPartDataSource.hpp.


Member Typedef Documentation

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

Use this type to store a pointer to an AssignableDataSource.

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

Definition at line 75 of file ArrayPartDataSource.hpp.


Constructor & Destructor Documentation

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

Definition at line 73 of file ArrayPartDataSource.hpp.

template<typename T>
RTT::internal::ArrayPartDataSource< T >::ArrayPartDataSource ( typename AssignableDataSource< T >::reference_t  ref,
DataSource< unsigned int >::shared_ptr  index,
base::DataSourceBase::shared_ptr  parent,
unsigned int  max 
) [inline]

The part is constructed from a reference to an existing array of elements and an index for accessing the n'th element.

Parameters:
refReference to the first element of the array
indexDatasource pointing to the index for use in operator[]
parentParent data source for sending updated() messages. May be null.

Definition at line 84 of file ArrayPartDataSource.hpp.


Member Function Documentation

template<typename T>
virtual ArrayPartDataSource<T>* RTT::internal::ArrayPartDataSource< 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 136 of file ArrayPartDataSource.hpp.

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

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

Definition at line 140 of file ArrayPartDataSource.hpp.

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

Return the data as type T.

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

Definition at line 91 of file ArrayPartDataSource.hpp.

template<typename T>
AssignableDataSource<T>::const_reference_t RTT::internal::ArrayPartDataSource< 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 124 of file ArrayPartDataSource.hpp.

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

Definition at line 107 of file ArrayPartDataSource.hpp.

template<typename T>
AssignableDataSource<T>::reference_t RTT::internal::ArrayPartDataSource< 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 116 of file ArrayPartDataSource.hpp.

template<typename T>
void RTT::internal::ArrayPartDataSource< 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 132 of file ArrayPartDataSource.hpp.

template<typename T>
DataSource<T>::result_t RTT::internal::ArrayPartDataSource< 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 99 of file ArrayPartDataSource.hpp.


Member Data Documentation

template<typename T>
DataSource<unsigned int>::shared_ptr RTT::internal::ArrayPartDataSource< T >::mindex [private]

Definition at line 67 of file ArrayPartDataSource.hpp.

template<typename T>
unsigned int RTT::internal::ArrayPartDataSource< T >::mmax [private]

Definition at line 71 of file ArrayPartDataSource.hpp.

Definition at line 69 of file ArrayPartDataSource.hpp.

template<typename T>
AssignableDataSource<T>::value_t* RTT::internal::ArrayPartDataSource< T >::mref [private]

Definition at line 65 of file ArrayPartDataSource.hpp.


The documentation for this class was generated from the following file:


rtt
Author(s): RTT Developers
autogenerated on Mon Oct 6 2014 03:13:58