#include <DataSource.hpp>
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 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 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::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 |
virtual result_t | get () const =0 |
void const * | getRawConstPointer () |
virtual std::string | getType () const |
virtual const types::TypeInfo * | getTypeInfo () 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 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) |
Static Public Member Functions | |
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 | |
~AssignableDataSource () | |
Protected Member Functions inherited from RTT::internal::DataSource< T > | |
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 |
A DataSource which has set() methods.
T | See DataSource for the semantics of T. |
Definition at line 184 of file DataSource.hpp.
typedef boost::intrusive_ptr<const AssignableDataSource<T> > RTT::internal::AssignableDataSource< T >::const_ptr |
Definition at line 199 of file DataSource.hpp.
typedef DataSource<T>::const_reference_t RTT::internal::AssignableDataSource< T >::const_reference_t |
Definition at line 191 of file DataSource.hpp.
typedef boost::call_traits<value_t>::param_type RTT::internal::AssignableDataSource< T >::param_t |
Definition at line 192 of file DataSource.hpp.
typedef boost::call_traits<value_t>::reference RTT::internal::AssignableDataSource< T >::reference_t |
Definition at line 193 of file DataSource.hpp.
typedef boost::intrusive_ptr<AssignableDataSource<T> > RTT::internal::AssignableDataSource< T >::shared_ptr |
Use this type to store a pointer to an AssignableDataSource.
Definition at line 198 of file DataSource.hpp.
typedef DataSource<T>::value_t RTT::internal::AssignableDataSource< T >::value_t |
Definition at line 190 of file DataSource.hpp.
|
protected |
|
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::internal::DataSource< T >.
Implemented in RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< T >, RTT::internal::ReferenceDataSource< T >, RTT::internal::ReferenceDataSource< ds_type >, 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::ArrayPartDataSource< T >, RTT::internal::PartDataSource< T >, RTT::internal::InputPortSource< T >, RTT::internal::ValueDataSource< T >, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, and RTT::internal::ValueDataSource< StateMachinePtr >.
|
pure virtual |
Implements RTT::internal::DataSource< T >.
Implemented in RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< T >, RTT::internal::ReferenceDataSource< T >, RTT::internal::ReferenceDataSource< ds_type >, 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::ArrayPartDataSource< T >, RTT::internal::PartDataSource< T >, RTT::internal::InputPortSource< T >, RTT::internal::ValueDataSource< T >, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, and RTT::internal::ValueDataSource< StateMachinePtr >.
|
inlinevirtual |
Generic implementation of getRawPointer() based on set()
Reimplemented from RTT::base::DataSourceBase.
Definition at line 214 of file DataSource.hpp.
|
inlinevirtual |
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.
|
static |
This method narrows a base::DataSourceBase to a typeded AssignableDataSource, possibly returning a new object.
|
pure virtual |
Set this DataSource with a value.
|
pure virtual |
Get a reference to the value of this DataSource. Getting a reference to an internal data structure is not thread-safe.
Implemented in RTT::internal::ActionAliasAssignableDataSource< T >, RTT::internal::LateReferenceDataSource< T >, RTT::internal::LateReferenceDataSource< ds_type >, RTT::internal::FusedMSendDataSource< Signature >, RTT::internal::ArrayDataSource< 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::PartDataSource< types::carray< T > >, RTT::internal::ArrayPartDataSource< T >, RTT::internal::InputPortSource< T >, RTT::internal::PartDataSource< T >, RTT::internal::ValueDataSource< T >, RTT::internal::ValueDataSource< ProgramInterfacePtr >, RTT::internal::ValueDataSource< ds_type >, and RTT::internal::ValueDataSource< StateMachinePtr >.
|
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.
Reimplemented from RTT::base::DataSourceBase.
|
virtual |
Generate a ActionInterface object which will update this internal::DataSource with the value of another internal::DataSource when execute()'ed.
Reimplemented from RTT::base::DataSourceBase.