Version: 8.3.0
YACS::ENGINE::Any Class Referenceabstract

: Interface for management of storage of data formated dynamically in its TypeCode. Warning virtual inheritance on Any daughter classes NOT supported. More...

#include <Any.hxx>

Inheritance diagram for YACS::ENGINE::Any:
Collaboration diagram for YACS::ENGINE::Any:

Public Member Functions

const TypeCodegetType () const
 
virtual Anyclone () const =0
 
virtual AnyPtr operator[] (int i) const =0 throw (Exception)
 
virtual AnyPtr operator[] (const char *key) const =0 throw (Exception)
 
virtual bool operator== (const Any &other) const =0
 
virtual int getIntValue () const =0 throw (Exception)
 
virtual bool getBoolValue () const =0 throw (Exception)
 
virtual double getDoubleValue () const =0 throw (Exception)
 
virtual std::string getStringValue () const =0 throw (Exception)
 
- Public Member Functions inherited from YACS::ENGINE::RefCounter
unsigned int getRefCnt () const
 
void incrRef () const
 
bool decrRef ()
 

Protected Member Functions

virtual ~Any ()
 
 Any (TypeCode *type)
 
 Any (const Any &other)
 
virtual void putMyReprAtPlace (char *data) const =0
 
- Protected Member Functions inherited from YACS::ENGINE::RefCounter
 RefCounter ()
 
 RefCounter (const RefCounter &other)
 
virtual ~RefCounter ()
 

Static Protected Member Functions

static bool IsNull (char *data)
 

Protected Attributes

TypeCode_type
 
- Protected Attributes inherited from YACS::ENGINE::RefCounter
unsigned int _cnt
 

Friends

class SeqAlloc
 
class ArrayAny
 
class StructAny
 
class SequenceAny
 

Additional Inherited Members

- Static Public Attributes inherited from YACS::ENGINE::RefCounter
static unsigned int _totalCnt =0
 

Detailed Description

: Interface for management of storage of data formated dynamically in its TypeCode. Warning virtual inheritance on Any daughter classes NOT supported.

Definition at line 69 of file Any.hxx.

Constructor & Destructor Documentation

Any::~Any ( )
protectedvirtual

Definition at line 85 of file Any.cxx.

References _type, and YACS::ENGINE::RefCounter::decrRef().

86 {
87  _type->decrRef();
88 }
Any::Any ( TypeCode type)
protected

Definition at line 75 of file Any.cxx.

References _type, and YACS::ENGINE::RefCounter::incrRef().

75  :_type(type)
76 {
77  _type->incrRef();
78 }
Any::Any ( const Any other)
protected

Definition at line 80 of file Any.cxx.

References _type, and YACS::ENGINE::RefCounter::incrRef().

80  :_type(other._type)
81 {
82  _type->incrRef();
83 }

Member Function Documentation

bool Any::IsNull ( char *  data)
staticprotected

Definition at line 90 of file Any.cxx.

References YACS::ENGINE::SeqAlloc::DFT_CHAR_VAR, and CORBAEngineTest::i.

Referenced by YACS::ENGINE::AtomAny::destroyReprAtPlace(), and YACS::ENGINE::SequenceAny::destroyReprAtPlace().

91 {
92  if(!data)
93  return true;
94  bool isNull(true);
95  for(std::size_t i=0;i<sizeof(void *) && isNull;i++)
96  isNull=(data[i]==SeqAlloc::DFT_CHAR_VAR);
97  return isNull;
98 }
virtual bool YACS::ENGINE::Any::operator== ( const Any other) const
pure virtual
virtual AnyPtr YACS::ENGINE::Any::operator[] ( int  i) const throw (Exception)
pure virtual
virtual AnyPtr YACS::ENGINE::Any::operator[] ( const char *  key) const throw (Exception)
pure virtual
virtual void YACS::ENGINE::Any::putMyReprAtPlace ( char *  data) const
protectedpure virtual

Friends And Related Function Documentation

friend class ArrayAny
friend

Definition at line 72 of file Any.hxx.

friend class SeqAlloc
friend

Definition at line 71 of file Any.hxx.

friend class SequenceAny
friend

Definition at line 74 of file Any.hxx.

friend class StructAny
friend

Definition at line 73 of file Any.hxx.

Member Data Documentation


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