Lunchbox  1.4.0
Public Member Functions | Protected Member Functions
lunchbox::Referenced Class Reference

Base class for referenced objects. More...

#include <referenced.h>

List of all members.

Public Member Functions

void ref (const void *holder=0) const
 Increase the reference count.
void unref (const void *holder=0) 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.
Referencedoperator= (const Referenced &rhs)
 Assign another object to this object.
void deleteReferenced (const Referenced *object) const

Detailed Description

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.

See also:
RefPtr

Definition at line 44 of file referenced.h.


Constructor & Destructor Documentation

lunchbox::Referenced::Referenced ( ) [inline, protected]

Construct a new reference-counted object.

Version:
1.0

Definition at line 115 of file referenced.h.

lunchbox::Referenced::Referenced ( const Referenced ) [inline, protected]

Construct a new copy of a reference-counted object.

Version:
1.0

Definition at line 121 of file referenced.h.

virtual lunchbox::Referenced::~Referenced ( ) [inline, protected, virtual]

Destruct a reference-counted object.

Version:
1.0

Definition at line 127 of file referenced.h.


Member Function Documentation

int lunchbox::Referenced::getRefCount ( ) const [inline]
Returns:
the current reference count.
Version:
1.0

Definition at line 95 of file referenced.h.

Referenced& lunchbox::Referenced::operator= ( const Referenced rhs) [inline, protected]

Assign another object to this object.

Version:
1.1.3

Definition at line 138 of file referenced.h.

void lunchbox::Referenced::ref ( const void *  holder = 0) const [inline]

Increase the reference count.

Version:
1.0 .

Definition at line 48 of file referenced.h.

References lunchbox::backtrace().

+ Here is the call graph for this function:

void lunchbox::Referenced::unref ( const void *  holder = 0) const [inline]

Decrease the reference count.

The object is deleted when the reference count reaches 0.

Version:
1.0

Definition at line 74 of file referenced.h.


The documentation for this class was generated from the following file: