ChannelRef Class Reference

The ChannelRef class is a reference to a channel on an Observer. It is used to access data directly from a channel or to be passed to function as an identifier for a channel. More...

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

+ Inheritance diagram for ChannelRef:

Public Member Functions

 ChannelRef (Observer *observer, std::string channelName)
 
 ChannelRef (ObserverInterfacePrx observerPrx, std::string channelName)
 
VariantDataClassPtr clone (const Ice::Current &c=Ice::emptyCurrent) const override
 
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 std::string &key)
 
template<typename T >
std::enable_if_t< !std::is_base_of_v< VariantDataClass, T >, Tget (const std::string &key)
 
const std::string & getChannelName () const
 
TimedVariantPtr getDataField (const std::string &datafieldName)
 
DataFieldIdentifierPtr getDataFieldIdentifier (const std::string &datafieldName)
 
const Ice::StringSeq & getDataFieldNames () const
 
bool getInitialized ()
 
const std::string & getObserverName () const
 
const ObserverInterfacePrx & getObserverProxy ()
 
VariantTypeId getType (const Ice::Current &c=Ice::emptyCurrent) const override
 
bool hasDatafield (const std::string &datafieldName) const
 
Ice::ObjectPtr ice_clone () const override
 
void ice_postUnmarshal () override
 
std::string output (const Ice::Current &c=Ice::emptyCurrent) const override
 
void refetchChannel ()
 
void serialize (const ObjectSerializerBasePtr &serializer, const ::Ice::Current &=Ice::emptyCurrent) const override
 
bool validate (const Ice::Current &c=Ice::emptyCurrent) override
 
 ~ChannelRef () override
 

Protected Member Functions

 ChannelRef ()
 

Friends

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

Detailed Description

The ChannelRef class is a reference to a channel on an Observer. It is used to access data directly from a channel or to be passed to function as an identifier for a channel.

Definition at line 51 of file ChannelRef.h.

Constructor & Destructor Documentation

◆ ChannelRef() [1/3]

ChannelRef ( )
inlineprotected

Definition at line 57 of file ChannelRef.h.

+ Here is the caller graph for this function:

◆ ChannelRef() [2/3]

ChannelRef ( Observer observer,
std::string  channelName 
)

Definition at line 48 of file ChannelRef.cpp.

+ Here is the call graph for this function:

◆ ChannelRef() [3/3]

ChannelRef ( ObserverInterfacePrx  observerPrx,
std::string  channelName 
)

Definition at line 67 of file ChannelRef.cpp.

◆ ~ChannelRef()

~ChannelRef ( )
inlineoverride

Definition at line 68 of file ChannelRef.h.

Member Function Documentation

◆ clone()

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

Definition at line 203 of file ChannelRef.cpp.

+ Here is the call graph for this function:

◆ deserialize()

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

Definition at line 322 of file ChannelRef.cpp.

◆ get() [1/2]

std::enable_if_t<std::is_base_of_v<VariantDataClass, T>, IceInternal::Handle<T> > get ( const std::string &  key)
inline

Definition at line 91 of file ChannelRef.h.

◆ get() [2/2]

std::enable_if_t< !std::is_base_of_v<VariantDataClass, T>, T > get ( const std::string &  key)
inline

Definition at line 105 of file ChannelRef.h.

◆ getChannelName()

const std::string & getChannelName ( ) const

Definition at line 152 of file ChannelRef.cpp.

+ Here is the caller graph for this function:

◆ getDataField()

TimedVariantPtr getDataField ( const std::string &  datafieldName)

Definition at line 108 of file ChannelRef.cpp.

+ Here is the call graph for this function:

◆ getDataFieldIdentifier()

DataFieldIdentifierPtr getDataFieldIdentifier ( const std::string &  datafieldName)

Definition at line 88 of file ChannelRef.cpp.

+ Here is the call graph for this function:

◆ getDataFieldNames()

const Ice::StringSeq & getDataFieldNames ( ) const

Definition at line 157 of file ChannelRef.cpp.

◆ getInitialized()

bool getInitialized ( )

Definition at line 175 of file ChannelRef.cpp.

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

◆ getObserverName()

const std::string & getObserverName ( ) const

Definition at line 147 of file ChannelRef.cpp.

+ Here is the caller graph for this function:

◆ getObserverProxy()

const ObserverInterfacePrx & getObserverProxy ( )

Definition at line 137 of file ChannelRef.cpp.

◆ getType()

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

Definition at line 226 of file ChannelRef.cpp.

◆ hasDatafield()

bool hasDatafield ( const std::string &  datafieldName) const

Definition at line 162 of file ChannelRef.cpp.

◆ ice_clone()

Ice::ObjectPtr ice_clone ( ) const
inlineoverride

Definition at line 71 of file ChannelRef.h.

◆ ice_postUnmarshal()

void ice_postUnmarshal ( )
override

Definition at line 306 of file ChannelRef.cpp.

◆ output()

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

Definition at line 218 of file ChannelRef.cpp.

+ Here is the call graph for this function:

◆ refetchChannel()

void refetchChannel ( )

Definition at line 194 of file ChannelRef.cpp.

+ Here is the caller graph for this function:

◆ serialize()

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

Definition at line 314 of file ChannelRef.cpp.

◆ validate()

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

Definition at line 231 of file ChannelRef.cpp.

+ Here is the call graph for this function:

Friends And Related Function Documentation

◆ GenericFactory

friend class GenericFactory
friend

Definition at line 55 of file ChannelRef.h.

◆ operator<< [1/2]

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

stream operator for DataFieldIdentifier

Definition at line 127 of file ChannelRef.h.

◆ operator<< [2/2]

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

stream operator for Ice shared pointer of DataFieldIdentifier

Definition at line 136 of file ChannelRef.h.


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