#include <DataSources.hpp>
Public Types | |
typedef boost::intrusive_ptr< ReferenceDataSource< T > > | shared_ptr |
Public Types inherited from RTT::internal::AssignableDataSource< T > | |
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 Types inherited from RTT::internal::DataSource< T > | |
typedef boost::intrusive_ptr< const DataSource< T > > | const_ptr |
typedef details::GetConstRef< T >::type | const_reference_t |
typedef T | result_t |
typedef boost::intrusive_ptr< DataSource< T > > | shared_ptr |
typedef T | value_t |
Public Types inherited from RTT::base::DataSourceBase | |
typedef boost::intrusive_ptr< const DataSourceBase > | const_ptr |
typedef boost::intrusive_ptr< DataSourceBase > | shared_ptr |
Public Member Functions | |
virtual ReferenceDataSource< T > * | clone () const |
virtual ReferenceDataSource< T > * | copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const |
DataSource< T >::result_t | get () const |
ReferenceDataSource (typename AssignableDataSource< T >::reference_t ref) | |
AssignableDataSource< T >::const_reference_t | rvalue () const |
void | set (typename AssignableDataSource< T >::param_t t) |
AssignableDataSource< T >::reference_t | set () |
void | setReference (void *ref) |
bool | setReference (base::DataSourceBase::shared_ptr dsb) |
DataSource< T >::result_t | value () const |
~ReferenceDataSource () | |
Public Member Functions inherited from RTT::internal::AssignableDataSource< T > | |
void * | getRawPointer () |
virtual bool | isAssignable () const |
virtual void | set (param_t t)=0 |
virtual bool | update (base::DataSourceBase *other) |
virtual base::ActionInterface * | updateAction (base::DataSourceBase *other) |
Public Member Functions inherited from RTT::internal::DataSource< T > | |
BOOST_STATIC_ASSERT (!details::HasConst< T >::value) | |
virtual bool | evaluate () const |
void const * | getRawConstPointer () |
virtual std::string | getType () const |
virtual const types::TypeInfo * | getTypeInfo () const |
virtual std::string | getTypeName () const |
Public Member Functions inherited from RTT::base::DataSourceBase | |
virtual DataSourceBase * | copy (std::map< const DataSourceBase *, DataSourceBase * > &alreadyCloned) const =0 |
DataSourceBase () | |
void | deref () const |
virtual shared_ptr | getMember (const std::string &member_name) |
virtual shared_ptr | getMember (DataSourceBase::shared_ptr member_id, DataSourceBase::shared_ptr offset) |
virtual std::vector< std::string > | getMemberNames () const |
virtual shared_ptr | getParent () |
void | ref () const |
virtual void | reset () |
std::string | toString () |
virtual void | updated () |
std::ostream & | write (std::ostream &os) |
Public Member Functions inherited from RTT::internal::Reference | |
virtual | ~Reference () |
Private Attributes | |
T * | mptr |
Additional Inherited Members | |
Static Public Member Functions inherited from RTT::internal::AssignableDataSource< T > | |
static AssignableDataSource< T > * | narrow (base::DataSourceBase *db) |
Static Public Member Functions inherited from RTT::internal::DataSource< T > | |
static std::string | GetType () |
static const types::TypeInfo * | GetTypeInfo () |
static std::string | GetTypeName () |
static DataSource< T > * | narrow (base::DataSourceBase *db) |
Static Public Member Functions inherited from RTT::base::DataSourceBase | |
static const_ptr | stack_const_ptr (const DataSourceBase *dsb) |
static shared_ptr | stack_shared_ptr (DataSourceBase *dsb) |
Protected Member Functions inherited from RTT::internal::AssignableDataSource< T > | |
~AssignableDataSource () | |
Protected Member Functions inherited from RTT::internal::DataSource< T > | |
virtual | ~DataSource () |
Protected Member Functions inherited from RTT::base::DataSourceBase | |
virtual | ~DataSourceBase () |
Protected Attributes inherited from RTT::base::DataSourceBase | |
os::AtomicInt | refcount |
A DataSource which is used to manipulate a reference to an external value.
T | The result data type of get(). |
Definition at line 198 of file DataSources.hpp.
typedef boost::intrusive_ptr<ReferenceDataSource<T> > RTT::internal::ReferenceDataSource< T >::shared_ptr |
Definition at line 209 of file DataSources.hpp.
RTT::internal::ReferenceDataSource< T >::~ReferenceDataSource | ( | ) |
Use shared_ptr.
RTT::internal::ReferenceDataSource< T >::ReferenceDataSource | ( | typename AssignableDataSource< T >::reference_t | ref | ) |
|
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 >.
|
virtual |
Implements RTT::internal::AssignableDataSource< T >.
|
inlinevirtual |
Return the data as type T.
Implements RTT::internal::DataSource< T >.
Definition at line 229 of file DataSources.hpp.
|
inlinevirtual |
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.
Implements RTT::internal::DataSource< T >.
Definition at line 246 of file DataSources.hpp.
void RTT::internal::ReferenceDataSource< T >::set | ( | typename AssignableDataSource< T >::param_t | t | ) |
|
inlinevirtual |
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 241 of file DataSources.hpp.
|
inlinevirtual |
Sets the reference to a given pointer. The pointer must have the same type as the data referenced. No type checking is done, so make sure you get this right.
Implements RTT::internal::Reference.
Definition at line 213 of file DataSources.hpp.
|
inlinevirtual |
Sets the reference to the data contained in the data source.
dsb | Must be an assignable data source of the same type of the data. The shared pointer is not necessarily stored, so keep track of the lifetime of dsb, that it lives longer than this object. |
Implements RTT::internal::Reference.
Definition at line 217 of file DataSources.hpp.
|
inlinevirtual |
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 234 of file DataSources.hpp.
|
private |
Definition at line 202 of file DataSources.hpp.