QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
Tools::PoolPointer< X > Class Template Reference

#include <PoolPointer.h>

Public Member Functions

X * get () const throw ()
 
X & operator* () const throw ()
 
X * operator-> () const throw ()
 
PoolPointeroperator= (const PoolPointer &p)
 
 PoolPointer (const PoolPointer &p) throw ()
 
 PoolPointer (X *p, PointerPool< X > *pPool) throw ()
 
 PoolPointer (X *p=0)
 
void relinquish () throw ()
 
bool unique () const throw ()
 
 ~PoolPointer ()
 

Private Member Functions

void acquire (const PoolPointer &p) throw ()
 
void release ()
 

Private Attributes

const PoolPointerm_next
 
X * m_pointer
 
PointerPool< X > * m_pPool
 
const PoolPointerm_prev
 

Constructor & Destructor Documentation

◆ PoolPointer() [1/3]

template<class X >
Tools::PoolPointer< X >::PoolPointer ( X * p = 0)
inlineexplicit

◆ PoolPointer() [2/3]

template<class X >
Tools::PoolPointer< X >::PoolPointer ( X * p,
PointerPool< X > * pPool )
throw ( )
inlineexplicit

◆ ~PoolPointer()

template<class X >
Tools::PoolPointer< X >::~PoolPointer ( )
inline

◆ PoolPointer() [3/3]

template<class X >
Tools::PoolPointer< X >::PoolPointer ( const PoolPointer< X > & p)
throw ( )
inline

Member Function Documentation

◆ acquire()

template<class X >
void Tools::PoolPointer< X >::acquire ( const PoolPointer< X > & p)
throw ( )
inlineprivate

◆ get()

template<class X >
X * Tools::PoolPointer< X >::get ( ) const
throw ( )
inline

◆ operator*()

template<class X >
X & Tools::PoolPointer< X >::operator* ( ) const
throw ( )
inline

◆ operator->()

template<class X >
X * Tools::PoolPointer< X >::operator-> ( ) const
throw ( )
inline

◆ operator=()

template<class X >
PoolPointer & Tools::PoolPointer< X >::operator= ( const PoolPointer< X > & p)
inline

◆ release()

template<class X >
void Tools::PoolPointer< X >::release ( )
inlineprivate

◆ relinquish()

template<class X >
void Tools::PoolPointer< X >::relinquish ( )
throw ( )
inline

◆ unique()

template<class X >
bool Tools::PoolPointer< X >::unique ( ) const
throw ( )
inline

Member Data Documentation

◆ m_next

template<class X >
const PoolPointer* Tools::PoolPointer< X >::m_next
mutableprivate

◆ m_pointer

template<class X >
X* Tools::PoolPointer< X >::m_pointer
private

◆ m_pPool

template<class X >
PointerPool<X>* Tools::PoolPointer< X >::m_pPool
private

◆ m_prev

template<class X >
const PoolPointer* Tools::PoolPointer< X >::m_prev
mutableprivate

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