Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
RTT::internal::DataSource< T > Class Template Referenceabstract

#include <DataSource.hpp>

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

Public Types

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 DataSourceBaseconst_ptr
 
typedef boost::intrusive_ptr< DataSourceBaseshared_ptr
 

Public Member Functions

 BOOST_STATIC_ASSERT (!details::HasConst< T >::value)
 
virtual DataSource< T > * clone () const =0
 
virtual DataSource< T > * copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const =0
 
virtual bool evaluate () const
 
virtual result_t get () const =0
 
void const * getRawConstPointer ()
 
virtual std::string getType () const
 
virtual const types::TypeInfogetTypeInfo () const
 
virtual std::string getTypeName () const
 
virtual const_reference_t rvalue () const =0
 
virtual result_t value () const =0
 
- Public Member Functions inherited from RTT::base::DataSourceBase
virtual DataSourceBasecopy (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 ()
 
virtual void * getRawPointer ()
 
virtual bool isAssignable () const
 
void ref () const
 
virtual void reset ()
 
std::string toString ()
 
virtual bool update (DataSourceBase *other)
 
virtual ActionInterfaceupdateAction (DataSourceBase *other)
 
virtual void updated ()
 
std::ostream & write (std::ostream &os)
 

Static Public Member Functions

static std::string GetType ()
 
static const types::TypeInfoGetTypeInfo ()
 
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

virtual ~DataSource ()
 
- Protected Member Functions inherited from RTT::base::DataSourceBase
virtual ~DataSourceBase ()
 

Additional Inherited Members

- Protected Attributes inherited from RTT::base::DataSourceBase
os::AtomicInt refcount
 

Detailed Description

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

DataSource is a base class representing a generic way to read data of type T.

See also
base::DataSourceBase for shared_ptr use.
Parameters
TThe type of data returned.

Definition at line 94 of file DataSource.hpp.

Member Typedef Documentation

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

Definition at line 117 of file DataSource.hpp.

template<typename T>
typedef details::GetConstRef<T>::type RTT::internal::DataSource< T >::const_reference_t

Definition at line 107 of file DataSource.hpp.

template<typename T>
typedef T RTT::internal::DataSource< T >::result_t

Definition at line 106 of file DataSource.hpp.

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

Definition at line 115 of file DataSource.hpp.

template<typename T>
typedef T RTT::internal::DataSource< T >::value_t

The bare type of T is extracted into value_t.

Definition at line 105 of file DataSource.hpp.

Constructor & Destructor Documentation

template<typename T>
virtual RTT::internal::DataSource< T >::~DataSource ( )
protectedvirtual

Member Function Documentation

template<typename T>
RTT::internal::DataSource< T >::BOOST_STATIC_ASSERT ( !details::HasConst< T >::value  )

If you get a compile error here, it means T has const or reference qualifiers, which is not allowed for DataSource<T>

template<typename T>
virtual DataSource<T>* RTT::internal::DataSource< T >::clone ( ) const
pure 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::base::DataSourceBase.

Implemented in RTT::internal::NArityDataSource< function >, RTT::internal::UnaryDataSource< function >, RTT::internal::BinaryDataSource< function >, RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::ActionAliasDataSource< T >, RTT::internal::LateConstReferenceDataSource< T >, RTT::internal::LateConstReferenceDataSource< A >, RTT::internal::FusedMCollectDataSource< Signature >, CorbaOperationCallerCollect, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< T >, RTT::internal::FusedMCallDataSource< Signature >, RTT::internal::AliasDataSource< T >, RTT::internal::ReferenceDataSource< T >, RTT::internal::ReferenceDataSource< ds_type >, RTT::internal::AssignableDataSource< T >, RTT::internal::AssignableDataSource< DataSourceType >, RTT::internal::AssignableDataSource< SendHandle< Signature > >, RTT::internal::AssignableDataSource< int >, RTT::internal::AssignableDataSource< types::carray< T > >, RTT::internal::AssignableDataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >, RTT::internal::AssignableDataSource< ds_type >, RTT::internal::AssignableDataSource< value_t >, RTT::internal::AssignableDataSource< bool >, RTT::corba::ValueDataSourceProxy< T >, RTT::internal::FusedFunctorDataSource< Signature, typename boost::enable_if< is_pure_reference< typename boost::function_traits< Signature >::result_type > >::type >, RTT::internal::PartDataSource< types::carray< T > >, RTT::internal::ConstReferenceDataSource< T >, RTT::scripting::CmdFunction, RTT::internal::ConstantDataSource< T >, RTT::internal::ArrayPartDataSource< T >, RTT::internal::FusedFunctorDataSource< Signature, Enable >, RTT::corba::DataSourceProxy< T >, RTT::internal::PartDataSource< T >, RTT::internal::InputPortSource< T >, RTT::internal::ValueDataSource< T >, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, RTT::internal::ValueDataSource< StateMachinePtr >, RTT::CmdFunctionWrapper, RTT::internal::DataObjectDataSource< T >, RTT::corba::AnyDataSource, RTT::scripting::DataSourceTime, RTT::internal::DataSourceCommand, and RTT::scripting::DataSourceCondition.

template<typename T>
virtual DataSource<T>* RTT::internal::DataSource< T >::copy ( std::map< const base::DataSourceBase *, base::DataSourceBase * > &  alreadyCloned) const
pure virtual

Implemented in RTT::internal::NArityDataSource< function >, RTT::internal::UnaryDataSource< function >, RTT::internal::BinaryDataSource< function >, RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::ActionAliasDataSource< T >, RTT::internal::LateConstReferenceDataSource< T >, RTT::internal::LateConstReferenceDataSource< A >, RTT::internal::FusedMCollectDataSource< Signature >, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< T >, RTT::internal::FusedMCallDataSource< Signature >, RTT::internal::AliasDataSource< T >, RTT::internal::ReferenceDataSource< T >, RTT::internal::ReferenceDataSource< ds_type >, RTT::internal::AssignableDataSource< T >, RTT::internal::AssignableDataSource< DataSourceType >, RTT::internal::AssignableDataSource< SendHandle< Signature > >, RTT::internal::AssignableDataSource< int >, RTT::internal::AssignableDataSource< types::carray< T > >, RTT::internal::AssignableDataSource< remove_cr< boost::function_traits< Signature >::result_type >::type >, RTT::internal::AssignableDataSource< ds_type >, RTT::internal::AssignableDataSource< value_t >, RTT::internal::AssignableDataSource< bool >, RTT::corba::ValueDataSourceProxy< T >, RTT::internal::FusedFunctorDataSource< Signature, typename boost::enable_if< is_pure_reference< typename boost::function_traits< Signature >::result_type > >::type >, RTT::internal::PartDataSource< types::carray< T > >, RTT::internal::ConstReferenceDataSource< T >, RTT::scripting::CmdFunction, RTT::internal::ConstantDataSource< T >, RTT::internal::ArrayPartDataSource< T >, RTT::internal::FusedFunctorDataSource< Signature, Enable >, RTT::corba::DataSourceProxy< T >, RTT::internal::PartDataSource< T >, RTT::internal::InputPortSource< T >, RTT::internal::ValueDataSource< T >, RTT::CmdFunctionWrapper, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, RTT::internal::ValueDataSource< StateMachinePtr >, RTT::internal::DataObjectDataSource< T >, RTT::corba::AnyDataSource, RTT::scripting::DataSourceTime, RTT::internal::DataSourceCommand, and RTT::scripting::DataSourceCondition.

template<typename T>
virtual bool RTT::internal::DataSource< T >::evaluate ( ) const
virtual
template<typename T>
virtual result_t RTT::internal::DataSource< T >::get ( ) const
pure virtual

Return the data as type T.

Implemented in RTT::internal::NArityDataSource< function >, RTT::internal::UnaryDataSource< function >, RTT::internal::BinaryDataSource< function >, RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::ActionAliasDataSource< T >, RTT::internal::LateConstReferenceDataSource< T >, RTT::internal::LateConstReferenceDataSource< A >, RTT::internal::FusedMCollectDataSource< Signature >, CorbaOperationCallerCollect, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< T >, RTT::internal::FusedMCallDataSource< Signature >, RTT::internal::AliasDataSource< T >, RTT::internal::ReferenceDataSource< T >, RTT::internal::ReferenceDataSource< ds_type >, RTT::internal::FusedFunctorDataSource< Signature, typename boost::enable_if< is_pure_reference< typename boost::function_traits< Signature >::result_type > >::type >, RTT::corba::ValueDataSourceProxy< T >, RTT::internal::ConstReferenceDataSource< T >, RTT::internal::PartDataSource< types::carray< T > >, RTT::internal::ConstantDataSource< T >, RTT::internal::FusedFunctorDataSource< Signature, Enable >, RTT::corba::DataSourceProxy< T >, RTT::scripting::CmdFunction, RTT::internal::InputPortSource< T >, RTT::internal::ArrayPartDataSource< T >, RTT::internal::PartDataSource< T >, RTT::CmdFunctionWrapper, RTT::corba::AnyDataSource, RTT::internal::ValueDataSource< T >, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, RTT::internal::ValueDataSource< StateMachinePtr >, RTT::internal::DataObjectDataSource< T >, RTT::internal::DataSourceCommand, RTT::scripting::DataSourceCondition, and RTT::scripting::DataSourceTime.

template<typename T>
void const* RTT::internal::DataSource< T >::getRawConstPointer ( )
inlinevirtual

Generic implementation of getRawConstPointer() based on rvalue()

Reimplemented from RTT::base::DataSourceBase.

Definition at line 141 of file DataSource.hpp.

template<typename T>
virtual std::string RTT::internal::DataSource< T >::getType ( ) const
virtual

Return useful type info in a human readable format.

Implements RTT::base::DataSourceBase.

Reimplemented in RTT::corba::DataSourceProxy< T >.

template<typename T>
static std::string RTT::internal::DataSource< T >::GetType ( )
static

Return usefull type info in a human readable format.

template<typename T>
virtual const types::TypeInfo* RTT::internal::DataSource< T >::getTypeInfo ( ) const
virtual

Return the Orocos type info object.

Implements RTT::base::DataSourceBase.

template<typename T>
static const types::TypeInfo* RTT::internal::DataSource< T >::GetTypeInfo ( )
static

Return the Orocos type info.

template<typename T>
static std::string RTT::internal::DataSource< T >::GetTypeName ( )
static

Return the Orocos type name, without const, pointer or reference qualifiers.

template<typename T>
virtual std::string RTT::internal::DataSource< T >::getTypeName ( ) const
virtual

Return the Orocos type name, without const, pointer or reference qualifiers.

Implements RTT::base::DataSourceBase.

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

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

template<typename T>
virtual const_reference_t RTT::internal::DataSource< T >::rvalue ( ) const
pure 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.

Implemented in RTT::internal::NArityDataSource< function >, RTT::internal::UnaryDataSource< function >, RTT::internal::BinaryDataSource< function >, RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::ActionAliasDataSource< T >, RTT::internal::LateConstReferenceDataSource< T >, RTT::internal::LateConstReferenceDataSource< A >, RTT::internal::FusedMCollectDataSource< Signature >, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, CorbaOperationCallerCollect, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< T >, RTT::internal::AliasDataSource< T >, RTT::internal::FusedMCallDataSource< Signature >, RTT::internal::ReferenceDataSource< T >, RTT::internal::ReferenceDataSource< ds_type >, RTT::internal::PartDataSource< types::carray< T > >, RTT::internal::FusedFunctorDataSource< Signature, typename boost::enable_if< is_pure_reference< typename boost::function_traits< Signature >::result_type > >::type >, RTT::internal::ConstReferenceDataSource< T >, RTT::corba::ValueDataSourceProxy< T >, RTT::internal::ConstantDataSource< T >, RTT::scripting::CmdFunction, RTT::internal::ArrayPartDataSource< T >, RTT::internal::FusedFunctorDataSource< Signature, Enable >, RTT::corba::DataSourceProxy< T >, RTT::internal::PartDataSource< T >, RTT::internal::ValueDataSource< T >, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, RTT::internal::ValueDataSource< StateMachinePtr >, RTT::CmdFunctionWrapper, RTT::internal::InputPortSource< T >, RTT::internal::DataObjectDataSource< T >, RTT::corba::AnyDataSource, RTT::scripting::DataSourceTime, RTT::internal::DataSourceCommand, and RTT::scripting::DataSourceCondition.

template<typename T>
virtual result_t RTT::internal::DataSource< T >::value ( ) const
pure 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.

Implemented in RTT::internal::NArityDataSource< function >, RTT::internal::UnaryDataSource< function >, RTT::internal::BinaryDataSource< function >, RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::ActionAliasDataSource< T >, RTT::internal::LateConstReferenceDataSource< T >, RTT::internal::LateConstReferenceDataSource< A >, RTT::internal::FusedMCollectDataSource< Signature >, CorbaOperationCallerCollect, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< T >, RTT::internal::AliasDataSource< T >, RTT::internal::FusedMCallDataSource< Signature >, RTT::internal::ReferenceDataSource< T >, RTT::internal::ReferenceDataSource< ds_type >, RTT::internal::FusedFunctorDataSource< Signature, typename boost::enable_if< is_pure_reference< typename boost::function_traits< Signature >::result_type > >::type >, RTT::internal::ConstReferenceDataSource< T >, RTT::corba::ValueDataSourceProxy< T >, RTT::internal::PartDataSource< types::carray< T > >, RTT::internal::ConstantDataSource< T >, RTT::scripting::CmdFunction, RTT::internal::FusedFunctorDataSource< Signature, Enable >, RTT::corba::DataSourceProxy< T >, RTT::internal::ArrayPartDataSource< T >, RTT::internal::PartDataSource< T >, RTT::CmdFunctionWrapper, RTT::internal::InputPortSource< T >, RTT::internal::ValueDataSource< T >, RTT::corba::AnyDataSource, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, RTT::internal::ValueDataSource< StateMachinePtr >, RTT::internal::DataObjectDataSource< T >, RTT::internal::DataSourceCommand, RTT::scripting::DataSourceCondition, and RTT::scripting::DataSourceTime.


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


rtt
Author(s): RTT Developers
autogenerated on Tue Jun 25 2019 19:33:43