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

#include <DataSources.hpp>

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

List of all members.

Public Types

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

Public Member Functions

 AliasDataSource (DataSource< T > *ds)
virtual AliasDataSource< T > * clone () const
virtual AliasDataSource< T > * copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const
bool evaluate () const
DataSource< T >::result_t get () const
virtual void reset ()
DataSource< T >::const_reference_t rvalue () const
DataSource< T >::result_t value () const
 ~AliasDataSource ()

Private Attributes

DataSource< T >::shared_ptr alias

Detailed Description

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

A DataSource which is used to mirror another datasource. Used to strip the 'assignable' property of a data source.

Parameters:
TThe result data type of get().

Definition at line 275 of file DataSources.hpp.


Member Typedef Documentation

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

Use this type to store a pointer to a DataSourceBase.

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

Definition at line 280 of file DataSources.hpp.


Constructor & Destructor Documentation

template<typename T >
RTT::internal::AliasDataSource< T >::AliasDataSource ( DataSource< T > *  ds) [inline]

Definition at line 282 of file DataSources.hpp.

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

Definition at line 286 of file DataSources.hpp.


Member Function Documentation

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

Definition at line 309 of file DataSources.hpp.

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

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

Definition at line 312 of file DataSources.hpp.

template<typename T >
bool RTT::internal::AliasDataSource< T >::evaluate ( ) const [inline, virtual]

Force an evaluation of the DataSourceBase.

Returns:
true on successful evaluation.

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

Definition at line 288 of file DataSources.hpp.

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

Return the data as type T.

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

Definition at line 292 of file DataSources.hpp.

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

Reset the data to initial values.

Reimplemented from RTT::base::DataSourceBase.

Definition at line 307 of file DataSources.hpp.

template<typename T >
DataSource<T>::const_reference_t RTT::internal::AliasDataSource< 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 302 of file DataSources.hpp.

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


Member Data Documentation

template<typename T >
DataSource<T>::shared_ptr RTT::internal::AliasDataSource< T >::alias [private]

Definition at line 278 of file DataSources.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Thu Jan 2 2014 11:35:43