#include <utils.h>
Public Member Functions | |
| void | bind (T *Pointer) |
| T * | get () const |
| T * | getPointer () const |
| bool | isNull () const |
| T & | operator* () const |
| T * | operator-> () const |
| template<class Y> | |
| SharedPtr & | operator= (const SharedPtr< Y > &r) |
| SharedPtr & | operator= (const SharedPtr &r) |
| void | setNull () |
| template<class Y> | |
| SharedPtr (const SharedPtr< Y > &r) | |
| SharedPtr (const SharedPtr &r) | |
| template<class Y> | |
| SharedPtr (Y *Pointer) | |
| SharedPtr () | |
| bool | unique () const |
| unsigned int | useCount () const |
| unsigned int * | useCountPointer () const |
| virtual | ~SharedPtr () |
Protected Member Functions | |
| virtual void | destroy () |
| void | release () |
| virtual void | swap (SharedPtr< T > &other) |
Protected Attributes | |
| T * | mPointer |
| unsigned int * | mUseCount |
Definition at line 56 of file utils.h.
| gpucalc::SharedPtr< T >::SharedPtr | ( | ) | [inline] |
| gpucalc::SharedPtr< T >::SharedPtr | ( | Y * | Pointer | ) | [inline, explicit] |
| gpucalc::SharedPtr< T >::SharedPtr | ( | const SharedPtr< T > & | r | ) | [inline] |
| gpucalc::SharedPtr< T >::SharedPtr | ( | const SharedPtr< Y > & | r | ) | [inline] |
| virtual gpucalc::SharedPtr< T >::~SharedPtr | ( | ) | [inline, virtual] |
| void gpucalc::SharedPtr< T >::bind | ( | T * | Pointer | ) | [inline] |
| virtual void gpucalc::SharedPtr< T >::destroy | ( | ) | [inline, protected, virtual] |
Definition at line 231 of file utils.h.
00232 { 00233 // IF YOU GET A CRASH HERE, YOU FORGOT TO FREE UP POINTERS 00234 // BEFORE SHUTTING gpucalc DOWN 00235 // Use setNull() before shutdown or make sure your pointer goes 00236 // out of scope before gpucalc shuts down to avoid this. 00237 delete mPointer; 00238 delete mUseCount; 00239 }
| T* gpucalc::SharedPtr< T >::get | ( | ) | const [inline] |
| T* gpucalc::SharedPtr< T >::getPointer | ( | ) | const [inline] |
| bool gpucalc::SharedPtr< T >::isNull | ( | ) | const [inline] |
| T& gpucalc::SharedPtr< T >::operator* | ( | ) | const [inline] |
| T* gpucalc::SharedPtr< T >::operator-> | ( | ) | const [inline] |
| SharedPtr& gpucalc::SharedPtr< T >::operator= | ( | const SharedPtr< Y > & | r | ) | [inline] |
Definition at line 113 of file utils.h.
00114 { 00115 if (mPointer == r.mPointer) 00116 { 00117 return * this; 00118 } 00119 // Swap current data into a local copy 00120 // this ensures we deal with rhs and this being dependent 00121 SharedPtr<T> tmp(r); 00122 swap(tmp); 00123 return * this; 00124 }
| SharedPtr& gpucalc::SharedPtr< T >::operator= | ( | const SharedPtr< T > & | r | ) | [inline] |
| void gpucalc::SharedPtr< T >::release | ( | ) | [inline, protected] |
| void gpucalc::SharedPtr< T >::setNull | ( | ) | [inline] |
| virtual void gpucalc::SharedPtr< T >::swap | ( | SharedPtr< T > & | other | ) | [inline, protected, virtual] |
| bool gpucalc::SharedPtr< T >::unique | ( | ) | const [inline] |
| unsigned int gpucalc::SharedPtr< T >::useCount | ( | ) | const [inline] |
| unsigned int* gpucalc::SharedPtr< T >::useCountPointer | ( | ) | const [inline] |
T* gpucalc::SharedPtr< T >::mPointer [protected] |
unsigned int* gpucalc::SharedPtr< T >::mUseCount [protected] |
1.5.6