Inheritance diagram for Producer::Referenced:
Public Member Functions | |
Referenced () | |
Referenced (const Referenced &) | |
Referenced & | operator= (Referenced &) |
void | ref () const |
void | unref () const |
void | unref_nodelete () const |
int | getReferenceCount () const |
Protected Member Functions | |
virtual | ~Referenced () |
Protected Attributes | |
int | _refCount |
Producer::Referenced::Referenced | ( | ) | [inline] |
Producer::Referenced::Referenced | ( | const Referenced & | ) | [inline] |
virtual Producer::Referenced::~Referenced | ( | ) | [inline, protected, virtual] |
int Producer::Referenced::getReferenceCount | ( | ) | const [inline] |
return the number pointers currently referencing this object.
Referenced& Producer::Referenced::operator= | ( | Referenced & | ) | [inline] |
void Producer::Referenced::ref | ( | ) | const [inline] |
increment the reference count by one, indicating that this object has another pointer which is referencing it.
void Producer::Referenced::unref | ( | ) | const [inline] |
decrement the reference count by one, indicating that a pointer to this object is referencing it. If the reference count goes to zero, it is assumed that this object is no longer referenced and is automatically deleted.
void Producer::Referenced::unref_nodelete | ( | ) | const [inline] |
decrement the reference count by one, indicating that a pointer to this object is referencing it. However, do not delete it, even if ref count goes to 0. Warning, unref_nodelete() should only be called if the user knows exactly who will be resonsible for, one should prefer unref() over unref_nodelete() as the later can lead to memory leaks.
int Producer::Referenced::_refCount [mutable, protected] |