Public Member Functions | |
RefCountedPtr () | |
RefCountedPtr (T *obj) | |
RefCountedPtr (const RefCountedPtr< T > &other) | |
~RefCountedPtr () | |
void | operator= (const RefCountedPtr< T > &other) |
T & | operator* () |
const T & | operator* () const |
T * | operator-> () |
const T * | operator-> () const |
int | refcount () const |
operator bool () const | |
void | allocate () |
template<class P1 > | |
void | allocate (const P1 &p1) |
template<class P1 , class P2 > | |
void | allocate (const P1 &p1, const P2 &p2) |
template<class P1 , class P2 , class P3 > | |
void | allocate (const P1 &p1, const P2 &p2, const P3 &p3) |
void | clear () |
Static Public Member Functions | |
template<class U > | |
static RefCountedPtr< T > | downCast (RefCountedPtr< U > other) |
Template for a reference counted ptr. Template argument T should be a subclass of RefCountedObject, or provide a similar interface.
DD::Image::RefCountedPtr< T >::RefCountedPtr | ( | ) | [inline] |
Create a NULL pointer.
DD::Image::RefCountedPtr< T >::RefCountedPtr | ( | T * | obj | ) | [inline, explicit] |
Create a new RefCountedPtr around an existing object, and increment its reference count.
DD::Image::RefCountedPtr< T >::RefCountedPtr | ( | const RefCountedPtr< T > & | other | ) | [inline] |
Copy an existing RefCountedPtr and increment the reference
DD::Image::RefCountedPtr< T >::~RefCountedPtr | ( | ) | [inline] |
Destroy the RefCountedPtr and if needed delete the underlying object
void DD::Image::RefCountedPtr< T >::operator= | ( | const RefCountedPtr< T > & | other | ) | [inline] |
Copy an existing RefCountedPtr, incrementing and decrementing references as appropriate.
T& DD::Image::RefCountedPtr< T >::operator* | ( | ) | [inline] |
Get the underlying object
const T& DD::Image::RefCountedPtr< T >::operator* | ( | ) | const [inline] |
Get the underlying object
T* DD::Image::RefCountedPtr< T >::operator-> | ( | ) | [inline] |
Get the underlying object
const T* DD::Image::RefCountedPtr< T >::operator-> | ( | ) | const [inline] |
Get the underlying object
int DD::Image::RefCountedPtr< T >::refcount | ( | ) | const [inline] |
Return the reference count of the underlying object
static RefCountedPtr<T> DD::Image::RefCountedPtr< T >::downCast | ( | RefCountedPtr< U > | other | ) | [inline, static] |
Use dynamic_cast to downcast to another, more specific, RefCountedPtr type
DD::Image::RefCountedPtr< T >::operator bool | ( | ) | const [inline] |
Test whether the pointer is pointing at an object right now. True if it is.
void DD::Image::RefCountedPtr< T >::allocate | ( | ) | [inline] |
Allocate a new object and make this pointer be a reference to it.
Referenced by DD::Image::GeometryList::add_primitive().
void DD::Image::RefCountedPtr< T >::allocate | ( | const P1 & | p1 | ) | [inline] |
Allocate a new object and make this pointer be a reference to it.
void DD::Image::RefCountedPtr< T >::allocate | ( | const P1 & | p1, |
const P2 & | p2 | ||
) | [inline] |
Allocate a new object and make this pointer be a reference to it.
void DD::Image::RefCountedPtr< T >::allocate | ( | const P1 & | p1, |
const P2 & | p2, | ||
const P3 & | p3 | ||
) | [inline] |
Allocate a new object and make this pointer be a reference to it.
void DD::Image::RefCountedPtr< T >::clear | ( | ) | [inline] |
Unreference the existing object (possibly deleting it)
Referenced by DD::Image::ReadGeo::create_geometry(), DD::Image::GeoOp::delete_allocations(), and DD::Image::GeoOp::get_geometry().