cartobase  4.5.0
carto::ReferenceObject< T > Class Template Reference

storage wrapper, derived and instanciable template class More...

#include <cartobase/object/object.h>

Inheritance diagram for carto::ReferenceObject< T >:
Collaboration diagram for carto::ReferenceObject< T >:

Public Member Functions

 ReferenceObject (T &x)
 
virtual ~ReferenceObject ()
 
virtual T & getValue ()
 
virtual Object clone () const
 cloning copy More...
 
- Public Member Functions inherited from carto::TypedObject< T >
 TypedObject ()
 
virtual ~TypedObject ()
 
const T & getValue () const
 
virtual void setValue (Object val)
 
virtual std::string type () const
 type() returns the DataTypeCode::name() of the underlying object type More...
 
virtual bool isScalar () const
 Returns false if the stored object doesn't actually implement the ScalarInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual double getScalar () const
 Obtain a scalar value, possibly after a conversion. More...
 
virtual void setScalar (double)
 The double value will be converted to the actual storage type before it is set in the contained object. More...
 
virtual bool isString () const
 Returns false if the stored object doesn't actually implement the StringInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual std::string getString () const
 Obtain a string value, possibly after a conversion. More...
 
virtual void setString (const std::string &)
 The string value may be converted to the actual storage type before it is set in the contained object. More...
 
virtual bool isArray () const
 Returns false if the stored object doesn't actually implement the ArrayInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual Object getArrayItem (int index) const
 Get the element of index index. More...
 
virtual void setArrayItem (int, Object)
 
virtual size_t size () const
 Number of sub-elements. More...
 
virtual bool isDynArray () const
 Returns false if the stored object doesn't actually implement the DynArrayInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual void reserveArray (size_t)
 like the STL vector::reserve(), memory is reserved but no element is stored More...
 
virtual void resizeArray (size_t)
 resize the array. More...
 
virtual void removeArrayItem (int)
 removes an element from the array. More...
 
virtual void insertArrayItem (int, Object)
 inserts an element into the array. More...
 
virtual bool getProperty (const std::string &, Object &) const
 Access the element ok key key. More...
 
virtual bool isDictionary () const
 Returns false if the stored object doesn't actually implement the DictionaryInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual void setProperty (const std::string &, Object)
 Set (insert or replace) the element of key key with the value object. More...
 
virtual bool removeProperty (const std::string &)
 remove an element. More...
 
virtual bool hasProperty (const std::string &) const
 check if an element exists under the key key More...
 
virtual void clearProperties ()
 clear the dictionary More...
 
virtual bool isIterable () const
 Returns false if the stored object doesn't actually implement the IterableInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual Object objectIterator () const
 returns an object implementing the IteratorIntrerface More...
 
virtual bool isIterator () const
 Returns false if the stored object doesn't actually implement the IteratorInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual bool isValid () const
 true if the iterator points to a valid value, false when the end of the iterable container has been reached More...
 
virtual Object currentValue () const
 Access the value of the element pointed to by the iterator. More...
 
virtual void next ()
 Point to the next element of the iterable container. More...
 
virtual bool isDictionaryIterator () const
 Returns false if the stored object doesn't actually implement the DictionaryIteratorInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual std::string key () const
 Access the key of the current dictionary element. More...
 
virtual bool isNone () const
 Returns false if the stored object doesn't actually implement the NoneInterface API (needed since all GenericObject inherit this interface whatever they actually contain) More...
 
virtual bool operator== (const GenericObject &other) const
 
- Public Member Functions inherited from carto::GenericObject
virtual ~GenericObject ()
 
template<typename T >
const T & value () const
 Retreive value in object, const reference. More...
 
template<typename T >
T & value ()
 Retreive value in object, by non-const reference. More...
 
template<typename T >
bool value (T &) const
 Retreive value in object, and store it in a variable. More...
 
template<typename T >
void setValue (const T &val)
 Store value in object by copying it. More...
 
template<typename T >
T * getInterface ()
 Obtain a specific Interface subclass. More...
 
template<typename T >
const T * getInterface () const
 const access to an interface More...
 
virtual bool operator!= (const GenericObject &other) const
 
- Public Member Functions inherited from carto::RCObject
 RCObject ()
 
 RCObject (const RCObject &)
 
RCObjectoperator= (const RCObject &)
 
- Public Member Functions inherited from carto::StringInterface
virtual ~StringInterface ()
 
virtual bool operator== (const StringInterface &other) const
 equality test More...
 
virtual bool operator!= (const StringInterface &other) const
 
- Public Member Functions inherited from carto::Interface
virtual ~Interface ()
 
- Public Member Functions inherited from carto::ScalarInterface
virtual ~ScalarInterface ()
 
virtual bool operator== (const ScalarInterface &other) const
 equality test More...
 
virtual bool operator!= (const ScalarInterface &other) const
 
- Public Member Functions inherited from carto::DynArrayInterface
virtual ~DynArrayInterface ()
 
- Public Member Functions inherited from carto::ArrayInterface
virtual ~ArrayInterface ()
 
- Public Member Functions inherited from carto::SizeInterface
virtual ~SizeInterface ()
 
- Public Member Functions inherited from carto::IterableInterface
virtual ~IterableInterface ()
 
virtual bool operator== (const IterableInterface &other) const
 equality test More...
 
virtual bool operator!= (const IterableInterface &other) const
 
- Public Member Functions inherited from carto::DictionaryInterface
virtual ~DictionaryInterface ()
 
Object getProperty (const std::string &) const
 same as the other getProperty() functions except that the value object is returned. More...
 
Object getProperty (Object key) const
 same as the other getProperty() functions except that the key is contained in the key argument (which must implement the StringInterface). More...
 
template<typename T >
bool getProperty (const std::string &key, T &value) const
 same as the other getProperty() functions except that the value object must be of exact type T and is copied to the value argument. More...
 
void setProperty (const std::string &, const char *)
 specific specialization: C strings are stored as std::string objects More...
 
template<typename T >
void setProperty (const std::string &, const T &)
 same as the other setProperty() functions except that the value to be set is of the arbitrary type T and will possibly be stored in an Object. More...
 
virtual void copyProperties (Object source)
 copy all properties of the source object to this object. More...
 
virtual bool operator== (const DictionaryInterface &other) const
 equality test More...
 
virtual bool operator!= (const DictionaryInterface &other) const
 
template<>
void setProperty (const std::string &key, Object const &value)
 
template<>
bool getProperty (const std::string &key, Object &value) const
 
- Public Member Functions inherited from carto::IteratorInterface
virtual ~IteratorInterface ()
 
- Public Member Functions inherited from carto::DictionaryIteratorInterface
virtual ~DictionaryIteratorInterface ()
 
- Public Member Functions inherited from carto::NoneInterface
virtual ~NoneInterface ()
 

Additional Inherited Members

- Public Types inherited from carto::RCObject
typedef int RefCounterType
 

Detailed Description

template<typename T>
class carto::ReferenceObject< T >

storage wrapper, derived and instanciable template class

ReferenceObject is a GenericObject that references an external value object. The external object stays at its original location and doesn't belong to the ReferenceObject. So it must not be deleted while any ReferenceObject still uses it.

Definition at line 808 of file object.h.

Constructor & Destructor Documentation

template<typename T >
carto::ReferenceObject< T >::ReferenceObject ( T &  x)
inline

Definition at line 1541 of file object.h.

template<typename T >
carto::ReferenceObject< T >::~ReferenceObject ( )
virtual

Definition at line 698 of file object_d.h.

Member Function Documentation

template<typename T >
Object carto::ReferenceObject< T >::clone ( ) const
virtual

cloning copy

Reimplemented from carto::TypedObject< T >.

Definition at line 712 of file object_d.h.

template<typename T >
T & carto::ReferenceObject< T >::getValue ( )
virtual

Reimplemented from carto::TypedObject< T >.

Definition at line 705 of file object_d.h.


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