Public Member Functions | Private Attributes | List of all members
RTT::corba::DataSourceProxy< T > Class Template Reference

#include <DataSourceProxy.hpp>

Inheritance diagram for RTT::corba::DataSourceProxy< T >:
Inheritance graph
[legend]

Public Member Functions

virtual internal::DataSource< T > * clone () const
 
virtual internal::DataSource< T > * copy (std::map< const base::DataSourceBase *, base::DataSourceBase * > &alreadyCloned) const
 
 DataSourceProxy (corba::CService_ptr s, const std::string &name, bool isproperty)
 
virtual internal::DataSource< T >::result_t get () const
 
virtual std::string getType () const
 
internal::AssignableDataSource< T >::const_reference_t rvalue () const
 
internal::DataSource< T >::result_t value () const
 
- Public Member Functions inherited from RTT::internal::DataSource< T >
 BOOST_STATIC_ASSERT (!details::HasConst< T >::value)
 
virtual bool evaluate () const
 
void const * getRawConstPointer ()
 
virtual const types::TypeInfogetTypeInfo () const
 
virtual std::string getTypeName () const
 
- 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)
 

Private Attributes

CorbaTypeTransporterctp
 
internal::DataSource< T >::value_t last_value
 
bool misproperty
 
const std::string mname
 
corba::CService_var mserv
 

Additional Inherited Members

- 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 DataSourceBaseconst_ptr
 
typedef boost::intrusive_ptr< DataSourceBaseshared_ptr
 
- Static Public Member Functions inherited from RTT::internal::DataSource< T >
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 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
 

Detailed Description

template<class T>
class RTT::corba::DataSourceProxy< T >

Mirrors a remote DataSource.

Definition at line 66 of file DataSourceProxy.hpp.

Constructor & Destructor Documentation

template<class T >
RTT::corba::DataSourceProxy< T >::DataSourceProxy ( corba::CService_ptr  s,
const std::string &  name,
bool  isproperty 
)
inline

Creates a new DataSource proxy for an attribute or property.

Parameters
sThe service to use
nameThe name of attribute or property
ispropertyset to true if name refers to a property, to false if it referes to an attribute.
Exceptions
NonExistingDataSourcewhen name does not exist in s as a property (isproperty==true) or attribute (isproperty==false).

Definition at line 85 of file DataSourceProxy.hpp.

Member Function Documentation

template<class T >
virtual internal::DataSource<T>* RTT::corba::DataSourceProxy< T >::clone ( ) const
inlinevirtual

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 122 of file DataSourceProxy.hpp.

template<class T >
virtual internal::DataSource<T>* RTT::corba::DataSourceProxy< T >::copy ( std::map< const base::DataSourceBase *, base::DataSourceBase * > &  alreadyCloned) const
inlinevirtual

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

Definition at line 126 of file DataSourceProxy.hpp.

template<class T >
virtual internal::DataSource<T>::result_t RTT::corba::DataSourceProxy< T >::get ( ) const
inlinevirtual

Return the data as type T.

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

Definition at line 108 of file DataSourceProxy.hpp.

template<class T >
virtual std::string RTT::corba::DataSourceProxy< T >::getType ( ) const
inlinevirtual

Return useful type info in a human readable format.

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

Definition at line 131 of file DataSourceProxy.hpp.

template<class T >
internal::AssignableDataSource<T>::const_reference_t RTT::corba::DataSourceProxy< T >::rvalue ( ) const
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.

Note
Getting a reference to an internal data structure is not thread-safe.

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

Definition at line 104 of file DataSourceProxy.hpp.

template<class T >
internal::DataSource<T>::result_t RTT::corba::DataSourceProxy< T >::value ( ) const
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 100 of file DataSourceProxy.hpp.

Member Data Documentation

template<class T >
CorbaTypeTransporter* RTT::corba::DataSourceProxy< T >::ctp
private

Definition at line 73 of file DataSourceProxy.hpp.

template<class T >
internal::DataSource<T>::value_t RTT::corba::DataSourceProxy< T >::last_value
mutableprivate

Definition at line 72 of file DataSourceProxy.hpp.

template<class T >
bool RTT::corba::DataSourceProxy< T >::misproperty
private

Definition at line 71 of file DataSourceProxy.hpp.

template<class T >
const std::string RTT::corba::DataSourceProxy< T >::mname
private

Definition at line 70 of file DataSourceProxy.hpp.

template<class T >
corba::CService_var RTT::corba::DataSourceProxy< T >::mserv
private

Definition at line 69 of file DataSourceProxy.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Fri Oct 25 2019 03:59:46