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

A ref is a const_ref which can reference non constant objects. More...

#include <cartobase/smart/rcptr.h>

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

Public Types

typedef T referenced_type
 
- Public Types inherited from carto::const_ref< T >
typedef T referenced_type
 

Public Member Functions

 ref ()
 
 ref (T *pObject)
 
 ref (T *pObject, bool externalowner)
 
 ref (const ref< T > &other)
 
template<class R >
 ref (const ref< R > &other)
 
 ~ref ()
 
T * release ()
 
ref< T > & operator= (const ref< T > &other)
 
T * operator-> () const
 
T & operator* () const
 
T * pointer () const
 
- Public Member Functions inherited from carto::const_ref< T >
 const_ref ()
 
 const_ref (const T *pObject)
 
 const_ref (const T *pObject, bool externalowner)
 
 const_ref (const ref< T > &other)
 
 const_ref (const const_ref< T > &other)
 
template<class R >
 const_ref (const ref< R > &o)
 
template<class R >
 const_ref (const const_ref< R > &other)
 
 ~const_ref ()
 
const_ref< T > & operator= (const ref< T > &other)
 
const_ref< T > & operator= (const const_ref< T > &other)
 
bool isNull () const
 
bool operator== (const ref< T > &other) const
 
bool operator== (const T *pointer) const
 
bool operator== (const const_ref< T > &other) const
 
bool operator!= (const ref< T > &other) const
 
bool operator!= (const const_ref< T > &other) const
 
bool operator!= (const T *pointer) const
 
const T * operator-> () const
 
const T & operator* () const
 
const T * pointer () const
 
int refCount () const
 
- Public Member Functions inherited from carto::RefData< T >
int count () const
 

Friends

template<class R >
class const_ref
 

Detailed Description

template<class T>
class carto::ref< T >

A ref is a const_ref which can reference non constant objects.

Definition at line 78 of file rcptr.h.

Member Typedef Documentation

template<class T>
typedef T carto::ref< T >::referenced_type

Definition at line 447 of file rcptr.h.

Constructor & Destructor Documentation

template<class T>
carto::ref< T >::ref ( )
inline

Definition at line 449 of file rcptr.h.

template<class T>
carto::ref< T >::ref ( T *  pObject)
inlineexplicit

Definition at line 455 of file rcptr.h.

template<class T>
carto::ref< T >::ref ( T *  pObject,
bool  externalowner 
)
inlineexplicit

Definition at line 456 of file rcptr.h.

template<class T>
carto::ref< T >::ref ( const ref< T > &  other)
inline

Definition at line 459 of file rcptr.h.

template<class T>
template<class R >
carto::ref< T >::ref ( const ref< R > &  other)
inline

Definition at line 462 of file rcptr.h.

template<class T>
carto::ref< T >::~ref ( )
inline

Definition at line 464 of file rcptr.h.

Member Function Documentation

template<class T>
T& carto::ref< T >::operator* ( ) const
inline

Definition at line 479 of file rcptr.h.

template<class T>
T* carto::ref< T >::operator-> ( ) const
inline

Definition at line 475 of file rcptr.h.

template<class T>
ref<T>& carto::ref< T >::operator= ( const ref< T > &  other)
inline

Definition at line 470 of file rcptr.h.

Referenced by carto::weak_shared_ptr< T >::operator=().

template<class T>
T* carto::ref< T >::release ( )
inline

Definition at line 466 of file rcptr.h.

Referenced by carto::weak_shared_ptr< T >::release().

Friends And Related Function Documentation

template<class T>
template<class R >
friend class const_ref
friend

Definition at line 443 of file rcptr.h.


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