cartobase  5.0.5
carto::weak_ptr< T > Class Template Reference

Observer pointer, observing a shfj::WeakObject. More...

#include <>>

Inheritance diagram for carto::weak_ptr< T >:

Public Member Functions

 weak_ptr (T *p=0)
 
void reset (T *r=0)
 
template<typename Y >
 weak_ptr (const weak_ptr< Y > &r)
 
template<typename Y >
 weak_ptr (const rc_ptr< Y > &r)
 
template<typename Y >
 weak_ptr (const std::unique_ptr< Y > &r)
 
template<typename Y >
weak_ptroperator= (const weak_ptr< Y > &r)
 
template<typename Y >
weak_ptroperator= (const rc_ptr< Y > &r)
 
template<typename Y >
weak_ptroperator= (const std::unique_ptr< Y > &r)
 
 weak_ptr (const weak_ptr &r)
 
weak_ptroperator= (const weak_ptr &w)
 
 ~weak_ptr ()
 
 operator InsipidProxyPointer * () const
 
T & operator* () const
 
T * operator-> () const
 
T * get () const
 
T * release ()
 
bool operator== (const weak_ptr< T > &x) const
 
bool operator== (const weak_shared_ptr< T > &x) const
 
bool operator== (const rc_ptr< T > &x) const
 
bool operator== (const shared_ptr< T > &x) const
 
bool operator!= (const weak_ptr< T > &x) const
 
bool operator!= (const weak_shared_ptr< T > &x) const
 
bool operator!= (const rc_ptr< T > &x) const
 
bool operator!= (const shared_ptr< T > &x) const
 
bool operator< (const weak_ptr< T > &x) const
 
bool operator< (const weak_shared_ptr< T > &x) const
 
bool operator< (const shared_ptr< T > &x) const
 
bool operator< (const rc_ptr< T > &x) const
 

Friends

class WeakObject
 
template<typename Y >
class weak_ptr
 
template<typename U , typename V >
weak_ptr< V > weak_cast (const weak_ptr< U > &)
 

Detailed Description

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

Observer pointer, observing a shfj::WeakObject.

When the observed object is destroyed, the weak pointer points to null

Definition at line 61 of file weakptr.h.

Constructor & Destructor Documentation

◆ weak_ptr() [1/5]

template<typename T>
carto::weak_ptr< T >::weak_ptr ( T *  p = 0)
inlineexplicit

Definition at line 97 of file weakptr.h.

◆ weak_ptr() [2/5]

template<typename T>
template<typename Y >
carto::weak_ptr< T >::weak_ptr ( const weak_ptr< Y > &  r)
inline

Definition at line 123 of file weakptr.h.

◆ weak_ptr() [3/5]

template<typename T>
template<typename Y >
carto::weak_ptr< T >::weak_ptr ( const rc_ptr< Y > &  r)
inlineexplicit

Definition at line 130 of file weakptr.h.

◆ weak_ptr() [4/5]

template<typename T>
template<typename Y >
carto::weak_ptr< T >::weak_ptr ( const std::unique_ptr< Y > &  r)
inlineexplicit

Definition at line 137 of file weakptr.h.

◆ weak_ptr() [5/5]

template<typename T>
carto::weak_ptr< T >::weak_ptr ( const weak_ptr< T > &  r)
inline

Definition at line 192 of file weakptr.h.

◆ ~weak_ptr()

template<typename T>
carto::weak_ptr< T >::~weak_ptr ( )
inline

Definition at line 204 of file weakptr.h.

Member Function Documentation

◆ get()

◆ operator InsipidProxyPointer *()

template<typename T>
carto::weak_ptr< T >::operator InsipidProxyPointer * ( ) const
inline

Definition at line 211 of file weakptr.h.

◆ operator!=() [1/4]

template<typename T>
bool carto::weak_ptr< T >::operator!= ( const weak_ptr< T > &  x) const
inline

◆ operator!=() [2/4]

template<typename T>
bool carto::weak_ptr< T >::operator!= ( const weak_shared_ptr< T > &  x) const
inline

Definition at line 251 of file weakptr.h.

References carto::weak_shared_ptr< T >::get().

◆ operator!=() [3/4]

template<typename T>
bool carto::weak_ptr< T >::operator!= ( const rc_ptr< T > &  x) const
inline

Definition at line 253 of file weakptr.h.

References carto::rc_ptr< T >::get().

◆ operator!=() [4/4]

template<typename T>
bool carto::weak_ptr< T >::operator!= ( const shared_ptr< T > &  x) const
inline

Definition at line 255 of file weakptr.h.

References carto::weak_shared_ptr< T >::get().

◆ operator*()

template<typename T>
T& carto::weak_ptr< T >::operator* ( ) const
inline

Definition at line 217 of file weakptr.h.

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

◆ operator->()

template<typename T>
T* carto::weak_ptr< T >::operator-> ( ) const
inline

Definition at line 222 of file weakptr.h.

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

◆ operator<() [1/4]

template<typename T>
bool carto::weak_ptr< T >::operator< ( const weak_ptr< T > &  x) const
inline

◆ operator<() [2/4]

template<typename T>
bool carto::weak_ptr< T >::operator< ( const weak_shared_ptr< T > &  x) const
inline

Definition at line 259 of file weakptr.h.

◆ operator<() [3/4]

template<typename T>
bool carto::weak_ptr< T >::operator< ( const shared_ptr< T > &  x) const
inline

Definition at line 261 of file weakptr.h.

◆ operator<() [4/4]

template<typename T>
bool carto::weak_ptr< T >::operator< ( const rc_ptr< T > &  x) const
inline

Definition at line 263 of file weakptr.h.

References carto::weak_cast().

◆ operator=() [1/4]

template<typename T>
template<typename Y >
weak_ptr& carto::weak_ptr< T >::operator= ( const weak_ptr< Y > &  r)
inline

◆ operator=() [2/4]

template<typename T>
template<typename Y >
weak_ptr& carto::weak_ptr< T >::operator= ( const rc_ptr< Y > &  r)
inline

Definition at line 151 of file weakptr.h.

References carto::rc_ptr< T >::get(), and carto::weak_ptr< T >::reset().

◆ operator=() [3/4]

template<typename T>
template<typename Y >
weak_ptr& carto::weak_ptr< T >::operator= ( const std::unique_ptr< Y > &  r)
inline

◆ operator=() [4/4]

template<typename T>
weak_ptr& carto::weak_ptr< T >::operator= ( const weak_ptr< T > &  w)
inline

Definition at line 198 of file weakptr.h.

References carto::weak_ptr< T >::get(), and carto::weak_ptr< T >::reset().

◆ operator==() [1/4]

template<typename T>
bool carto::weak_ptr< T >::operator== ( const weak_ptr< T > &  x) const
inline

◆ operator==() [2/4]

template<typename T>
bool carto::weak_ptr< T >::operator== ( const weak_shared_ptr< T > &  x) const
inline

Definition at line 243 of file weakptr.h.

References carto::weak_shared_ptr< T >::get().

◆ operator==() [3/4]

template<typename T>
bool carto::weak_ptr< T >::operator== ( const rc_ptr< T > &  x) const
inline

Definition at line 245 of file weakptr.h.

References carto::rc_ptr< T >::get().

◆ operator==() [4/4]

template<typename T>
bool carto::weak_ptr< T >::operator== ( const shared_ptr< T > &  x) const
inline

Definition at line 247 of file weakptr.h.

References carto::weak_shared_ptr< T >::get().

◆ release()

template<typename T>
T* carto::weak_ptr< T >::release ( )
inline

◆ reset()

template<typename T>
void carto::weak_ptr< T >::reset ( T *  r = 0)
inline

Friends And Related Function Documentation

◆ weak_cast

template<typename T>
template<typename U , typename V >
weak_ptr< V > weak_cast ( const weak_ptr< U > &  )
friend

◆ weak_ptr

template<typename T>
template<typename Y >
friend class weak_ptr
friend

Definition at line 75 of file weakptr.h.

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

◆ WeakObject

template<typename T>
friend class WeakObject
friend

Definition at line 71 of file weakptr.h.


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