DatafieldRef Class Reference

The DatafieldRef class is similar to the ChannelRef, but points to a specific Datafield instead of to a complete channel. More...

#include <ArmarXCore/observers/variant/DatafieldRef.h>

+ Inheritance diagram for DatafieldRef:

Public Member Functions

VariantDataClassPtr clone (const Ice::Current &c=Ice::emptyCurrent) const override
 
 DatafieldRef (ChannelRefPtr channelRef, const std::string &datafieldName, bool performValidation=true)
 
 DatafieldRef (Observer *observer, const std::string &channelName, const std::string &datafieldName, bool performValidation=true)
 
 DatafieldRef (ObserverInterfacePrx observerPrx, const std::string &channelName, const std::string &datafieldName, bool performValidation=true)
 
void deserialize (const ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) override
 
template<typename T>
std::enable_if_t< std::is_base_of_v< VariantDataClass, T >, IceInternal::Handle< T > > get () const
 
template<typename T>
std::enable_if_t<!std::is_base_of_v< VariantDataClass, T >, Tget () const
 
bool getBool (const Ice::Current &c=Ice::emptyCurrent) const override
 
ChannelRefPtr getChannelRef () const
 
TimedVariantPtr getDataField () const
 Retrieves the value of the datafield from the Observer.
 
DataFieldIdentifierPtr getDataFieldIdentifier () const
 
double getDouble (const Ice::Current &c=Ice::emptyCurrent) const override
 
float getFloat (const Ice::Current &c=Ice::emptyCurrent) const override
 
int getInt (const Ice::Current &c=Ice::emptyCurrent) const override
 
long getLong (const Ice::Current &c=Ice::emptyCurrent) const override
 
std::string getString (const Ice::Current &c=Ice::emptyCurrent) const override
 
VariantTypeId getType (const Ice::Current &c=Ice::emptyCurrent) const override
 
Ice::ObjectPtr ice_clone () const override
 
std::string output (const Ice::Current &c=Ice::emptyCurrent) const override
 
void serialize (const ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) const override
 
bool validate (const Ice::Current &c=Ice::emptyCurrent) override
 
 ~DatafieldRef () override
 

Protected Member Functions

 DatafieldRef ()
 

Friends

template<class BaseClass, class VariantClass>
class GenericFactory
 
std::ostream & operator<< (std::ostream &stream, const DatafieldRef &rhs)
 stream operator for DataFieldIdentifier
 
std::ostream & operator<< (std::ostream &stream, const DatafieldRefPtr &rhs)
 stream operator for Ice shared pointer of DataFieldIdentifier
 

Detailed Description

The DatafieldRef class is similar to the ChannelRef, but points to a specific Datafield instead of to a complete channel.

It can be used to query (getDataField()) the data of the datafield from the Observer.

Definition at line 51 of file DatafieldRef.h.

Constructor & Destructor Documentation

◆ DatafieldRef() [1/4]

DatafieldRef ( )
protected

Definition at line 46 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DatafieldRef() [2/4]

DatafieldRef ( Observer * observer,
const std::string & channelName,
const std::string & datafieldName,
bool performValidation = true )

Definition at line 50 of file DatafieldRef.cpp.

+ Here is the call graph for this function:

◆ DatafieldRef() [3/4]

DatafieldRef ( ObserverInterfacePrx observerPrx,
const std::string & channelName,
const std::string & datafieldName,
bool performValidation = true )

Definition at line 66 of file DatafieldRef.cpp.

+ Here is the call graph for this function:

◆ DatafieldRef() [4/4]

DatafieldRef ( ChannelRefPtr channelRef,
const std::string & datafieldName,
bool performValidation = true )

Definition at line 82 of file DatafieldRef.cpp.

+ Here is the call graph for this function:

◆ ~DatafieldRef()

~DatafieldRef ( )
inlineoverride

Definition at line 73 of file DatafieldRef.h.

Member Function Documentation

◆ clone()

VariantDataClassPtr clone ( const Ice::Current & c = Ice::emptyCurrent) const
override

Definition at line 138 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ deserialize()

void deserialize ( const ObjectSerializerBasePtr & serializer,
const ::Ice::Current & c = Ice::emptyCurrent )
override

Definition at line 193 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get() [1/2]

template<typename T>
std::enable_if_t< std::is_base_of_v< VariantDataClass, T >, IceInternal::Handle< T > > get ( ) const
inline

Definition at line 98 of file DatafieldRef.h.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ get() [2/2]

template<typename T>
std::enable_if_t<!std::is_base_of_v< VariantDataClass, T >, T > get ( ) const
inline

Definition at line 113 of file DatafieldRef.h.

+ Here is the call graph for this function:

◆ getBool()

bool getBool ( const Ice::Current & c = Ice::emptyCurrent) const
inlineoverride

Definition at line 127 of file DatafieldRef.h.

+ Here is the call graph for this function:

◆ getChannelRef()

ChannelRefPtr getChannelRef ( ) const

Definition at line 129 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDataField()

TimedVariantPtr getDataField ( ) const

Retrieves the value of the datafield from the Observer.

Returns
Variant with the type and value of the datafield.

Definition at line 123 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDataFieldIdentifier()

DataFieldIdentifierPtr getDataFieldIdentifier ( ) const

Definition at line 112 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDouble()

double getDouble ( const Ice::Current & c = Ice::emptyCurrent) const
inlineoverride

Definition at line 151 of file DatafieldRef.h.

+ Here is the call graph for this function:

◆ getFloat()

float getFloat ( const Ice::Current & c = Ice::emptyCurrent) const
inlineoverride

Definition at line 145 of file DatafieldRef.h.

+ Here is the call graph for this function:

◆ getInt()

int getInt ( const Ice::Current & c = Ice::emptyCurrent) const
inlineoverride

Definition at line 133 of file DatafieldRef.h.

+ Here is the call graph for this function:

◆ getLong()

long getLong ( const Ice::Current & c = Ice::emptyCurrent) const
inlineoverride

Definition at line 139 of file DatafieldRef.h.

+ Here is the call graph for this function:

◆ getString()

std::string getString ( const Ice::Current & c = Ice::emptyCurrent) const
inlineoverride

Definition at line 157 of file DatafieldRef.h.

+ Here is the call graph for this function:

◆ getType()

VariantTypeId getType ( const Ice::Current & c = Ice::emptyCurrent) const
override

Definition at line 156 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ice_clone()

Ice::ObjectPtr ice_clone ( ) const
override

Definition at line 103 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ output()

std::string output ( const Ice::Current & c = Ice::emptyCurrent) const
override

Definition at line 146 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ serialize()

void serialize ( const ObjectSerializerBasePtr & serializer,
const ::Ice::Current & = Ice::emptyCurrent ) const
override

Definition at line 184 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ validate()

bool validate ( const Ice::Current & c = Ice::emptyCurrent)
override

Definition at line 162 of file DatafieldRef.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ GenericFactory

template<class BaseClass, class VariantClass>
friend class GenericFactory
friend

Definition at line 54 of file DatafieldRef.h.

◆ operator<< [1/2]

std::ostream & operator<< ( std::ostream & stream,
const DatafieldRef & rhs )
friend

stream operator for DataFieldIdentifier

Definition at line 167 of file DatafieldRef.h.

◆ operator<< [2/2]

std::ostream & operator<< ( std::ostream & stream,
const DatafieldRefPtr & rhs )
friend

stream operator for Ice shared pointer of DataFieldIdentifier

Definition at line 177 of file DatafieldRef.h.


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