Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions
RTT::internal::AssignableDataSource< T > Class Template Reference

#include <DataSource.hpp>

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

List of all members.

Public Types

typedef boost::intrusive_ptr
< const AssignableDataSource
< T > > 
const_ptr
typedef DataSource< T >
::const_reference_t 
const_reference_t
typedef boost::call_traits
< value_t >::param_type 
param_t
typedef boost::call_traits
< value_t >::reference 
reference_t
typedef boost::intrusive_ptr
< AssignableDataSource< T > > 
shared_ptr
typedef DataSource< T >::value_t value_t

Public Member Functions

virtual AssignableDataSource< T > * clone () const =0
virtual AssignableDataSource< T > * copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const =0
void * getRawPointer ()
virtual bool isAssignable () const
virtual void set (param_t t)=0
virtual reference_t set ()=0
virtual bool update (base::DataSourceBase *other)
virtual base::ActionInterfaceupdateAction (base::DataSourceBase *other)

Static Public Member Functions

static AssignableDataSource< T > * narrow (base::DataSourceBase *db)

Protected Member Functions

 ~AssignableDataSource ()

Detailed Description

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

A DataSource which has set() methods.

Parameters:
TSee DataSource for the semantics of T.

Definition at line 184 of file DataSource.hpp.


Member Typedef Documentation

template<typename T>
typedef boost::intrusive_ptr<const AssignableDataSource<T> > RTT::internal::AssignableDataSource< T >::const_ptr

Use this type to store a const pointer to a DataSourceBase.

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

Definition at line 199 of file DataSource.hpp.

template<typename T>
typedef boost::call_traits<value_t>::param_type RTT::internal::AssignableDataSource< T >::param_t

Definition at line 192 of file DataSource.hpp.

template<typename T>
typedef boost::call_traits<value_t>::reference RTT::internal::AssignableDataSource< T >::reference_t
template<typename T>
typedef boost::intrusive_ptr<AssignableDataSource<T> > RTT::internal::AssignableDataSource< T >::shared_ptr
template<typename T>
typedef DataSource<T>::value_t RTT::internal::AssignableDataSource< T >::value_t

Constructor & Destructor Documentation

template<typename T>
RTT::internal::AssignableDataSource< T >::~AssignableDataSource ( ) [protected]

Member Function Documentation

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

Generic implementation of getRawPointer() based on set()

Reimplemented from RTT::base::DataSourceBase.

Definition at line 214 of file DataSource.hpp.

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

Returns true if this object can be cast to an AssignableDataSource. When this method returns true, all update functions below will return as well when valid input is given.

Reimplemented from RTT::base::DataSourceBase.

Definition at line 216 of file DataSource.hpp.

template<typename T>
static AssignableDataSource<T>* RTT::internal::AssignableDataSource< T >::narrow ( base::DataSourceBase db) [static]

This method narrows a base::DataSourceBase to a typeded AssignableDataSource, possibly returning a new object.

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

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

Set this DataSource with a value.

template<typename T>
virtual reference_t RTT::internal::AssignableDataSource< T >::set ( ) [pure virtual]
template<typename T>
virtual bool RTT::internal::AssignableDataSource< T >::update ( base::DataSourceBase other) [virtual]

Update the value of this internal::DataSource with the value of an other DataSource. Update does a full update of the value, adding extra information if necessary.

Precondition:
this->isAssignable() == true
Returns:
false if the DataSources are of different type OR if the contents of this internal::DataSource can not be updated.

Reimplemented from RTT::base::DataSourceBase.

template<typename T>
virtual base::ActionInterface* RTT::internal::AssignableDataSource< T >::updateAction ( base::DataSourceBase other) [virtual]

Generate a ActionInterface object which will update this internal::DataSource with the value of another internal::DataSource when execute()'ed.

Precondition:
this->isAssignable() == true
Returns:
zero if the internal::DataSource types do not match OR if the contents of this internal::DataSource can not be updated.

Reimplemented from RTT::base::DataSourceBase.


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


rtt
Author(s): RTT Developers
autogenerated on Fri Sep 9 2016 04:02:19