Equalizer 1.0
|
Base class for referenced objects. More...
#include <referenced.h>
Public Member Functions | |
void | ref (EQ_REFERENCED_ARGS) const |
Increase the reference count. | |
void | unref (EQ_REFERENCED_ARGS) const |
Decrease the reference count. | |
int | getRefCount () const |
void | printHolders (std::ostream &os) const |
Protected Member Functions | |
Referenced () | |
Construct a new reference-counted object. | |
Referenced (const Referenced &) | |
Construct a new copy of a reference-counted object. | |
virtual | ~Referenced () |
Destruct a reference-counted object. | |
COBASE_API void | deleteReferenced (const Referenced *object) const |
Base class for referenced objects.
Implements reference-counted objects which destroy themselves once they are no longer referenced. Uses an Atomic variable to keep the reference count access thread-safe and efficient.
Definition at line 48 of file referenced.h.
co::base::Referenced::Referenced | ( | ) | [inline, protected] |
co::base::Referenced::Referenced | ( | const Referenced & | ) | [inline, protected] |
Construct a new copy of a reference-counted object.
Definition at line 122 of file referenced.h.
virtual co::base::Referenced::~Referenced | ( | ) | [inline, protected, virtual] |
int co::base::Referenced::getRefCount | ( | ) | const [inline] |
void co::base::Referenced::ref | ( | EQ_REFERENCED_ARGS | ) | const [inline] |
Increase the reference count.
Definition at line 52 of file referenced.h.
References co::base::backtrace(), and co::base::className().
void co::base::Referenced::unref | ( | EQ_REFERENCED_ARGS | ) | const [inline] |
Decrease the reference count.
The object is deleted when the reference count reaches 0.
Definition at line 75 of file referenced.h.