|
FreePOOMA
2.4.1
|
RefCountedPtr<T> is a smart-pointer class that provides reference counting for objects of type T. More...
#include <RefCountedPtr.h>

Public Types | |
| typedef RefCountedPtr< T > | This_t |
| typedef T | Pointee_t |
Public Member Functions | |
| RefCountedPtr () | |
| RefCountedPtr (T *const pT) | |
| RefCountedPtr (const This_t &model) | |
| ~RefCountedPtr () | |
| ~RefCountedPtr Destructor. | |
| RefCountedPtr & | operator= (const RefCountedPtr &) |
| RefCountedPtr<T>& operator=(const RefCountedPtr<T>& rhs) Assignment of RefCountedPtr<T> | |
| RefCountedPtr & | operator= (T *) |
| RefCountedPtr<T>& operator=(T *pp) Assignment of pointer to T to a RefCountedPtr<T>. | |
| T * | operator-> () const |
| T & | operator* () const |
| bool | operator== (const This_t &a) const |
| bool | operator!= (const This_t &a) const |
| void | invalidate () |
| void invalidate() Delete reference and set pointer field to NULL | |
| bool | isValid () const |
| bool | isShared () const |
| int | count () const |
| RefCountedPtr< T > & | makeOwnCopy () |
| RefCountedPtr<T>& makeOwnCopy() If we aren't the sole owner of the data, make a private copy. | |
| T * | rawPointer () |
| const T * | rawPointer () const |
Friends | |
| class | RefCountedBlockPtr |
RefCountedPtr<T> is a smart-pointer class that provides reference counting for objects of type T.
T must provide the same interface and semantics as RefCounted, which is usually accomplished by inheriting from RefCounted.
| typedef RefCountedPtr<T> RefCountedPtr< T >::This_t |
| typedef T RefCountedPtr< T >::Pointee_t |
| RefCountedPtr< T >::RefCountedPtr | ( | ) | [inline] |
| RefCountedPtr< T >::RefCountedPtr | ( | T *const | pT | ) | [inline] |
| RefCountedPtr< T >::RefCountedPtr | ( | const This_t & | model | ) | [inline] |
| RefCountedPtr< T >::~RefCountedPtr | ( | ) | [inline] |
~RefCountedPtr Destructor.
Work done by invalidate().
References RefCountedBlockPtr< T, BoundsChecked, Controller >::invalidate().
| RefCountedPtr< T > & RefCountedPtr< T >::operator= | ( | const RefCountedPtr< T > & | rhs | ) | [inline] |
RefCountedPtr<T>& operator=(const RefCountedPtr<T>& rhs) Assignment of RefCountedPtr<T>
References RefCountedBlockPtr< T, BoundsChecked, Controller >::isValid().
| RefCountedPtr< T > & RefCountedPtr< T >::operator= | ( | T * | pp | ) | [inline] |
RefCountedPtr<T>& operator=(T *pp) Assignment of pointer to T to a RefCountedPtr<T>.
References RefCountedBlockPtr< T, BoundsChecked, Controller >::isValid().
| T* RefCountedPtr< T >::operator-> | ( | ) | const [inline] |
| T& RefCountedPtr< T >::operator* | ( | ) | const [inline] |
| bool RefCountedPtr< T >::operator== | ( | const This_t & | a | ) | const [inline] |
| bool RefCountedPtr< T >::operator!= | ( | const This_t & | a | ) | const [inline] |
| void RefCountedPtr< T >::invalidate | ( | ) | [inline] |
void invalidate() Delete reference and set pointer field to NULL
References RefCountedBlockPtr< T, BoundsChecked, Controller >::isValid().
Referenced by CompressibleBlock< T >::invalidate(), and RefCountedBlockPtr< Element_t >::invalidate().
| bool RefCountedPtr< T >::isValid | ( | ) | const [inline] |
Referenced by CompressibleBlock< T >::affinity(), CompressibleBlock< T >::attach(), CompressibleBlock< T >::compressed(), CompressibleBlock< T >::data(), CompressibleBlock< T >::dataBlock(), CompressibleBlock< T >::dataObject(), CompressibleBlock< T >::detach(), CompressibleBlock< T >::isControllerPtrValid(), CompressibleBlock< T >::isControllerValid(), CompressibleBlock< T >::isControllerValidUnlocked(), RefCountedBlockPtr< Element_t >::isValid(), RefCountedPtr< RefBlockController< Element_t > >::RefCountedPtr(), CompressibleBlock< T >::tryCompress(), CompressibleBlock< T >::uncompress(), CompressibleBlock< T >::view(), and CompressibleBlock< T >::~CompressibleBlock().
| bool RefCountedPtr< T >::isShared | ( | ) | const [inline] |
Referenced by CompressibleBlock< T >::isShared(), and RefCountedBlockPtr< Element_t >::isShared().
| int RefCountedPtr< T >::count | ( | ) | const [inline] |
Referenced by RefCountedBlockPtr< Element_t >::count().
| RefCountedPtr< T > & RefCountedPtr< T >::makeOwnCopy | ( | ) | [inline] |
RefCountedPtr<T>& makeOwnCopy() If we aren't the sole owner of the data, make a private copy.
Returns itself for use in chained expressions.
References ElementProperties< T >::clone(), and RefCountedBlockPtr< T, BoundsChecked, Controller >::isValid().
Referenced by CompressibleBlock< T >::makeOwnCopy(), and RefCountedBlockPtr< Element_t >::makeOwnCopy().
| T* RefCountedPtr< T >::rawPointer | ( | ) | [inline] |
| const T* RefCountedPtr< T >::rawPointer | ( | ) | const [inline] |
friend class RefCountedBlockPtr [friend] |
1.7.6.1