Homepage Demos Overview Downloads Tutorials Reference
Credits
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members | Related Pages | Search

ReferenceCounter Class Reference

#include <ReferenceCounter.h>

Inheritance diagram for ReferenceCounter:

Inheritance graph
[legend]
List of all members.

Detailed Description

Performs simple reference counting, will delete the object when removing the last reference.

Definition at line 11 of file ReferenceCounter.h.

Public Member Functions

 ReferenceCounter ()
 constructor

virtual ~ReferenceCounter ()
 destructor - will std::cout a warning if still has references

virtual void AddReference ()
 adds one to references

virtual void RemoveReference ()
 subtracts one from references AND DELETES the object IF ZERO

virtual unsigned int GetReferences ()
 returns the number of references

void SetAutoDelete (bool b)
 if true, next time a RemoveReference() causes references to hit 0, the object will delete itself

bool GetAutoDelete ()
 returns RC_autodelete


Protected Attributes

unsigned int references
 the current number of references

bool RC_autodelete
 prevents deletion when counter hits 0


Constructor & Destructor Documentation

ReferenceCounter::ReferenceCounter  )  [inline]
 

constructor

Definition at line 14 of file ReferenceCounter.h.

References RC_autodelete, and references.

virtual ReferenceCounter::~ReferenceCounter  )  [inline, virtual]
 

destructor - will std::cout a warning if still has references

Definition at line 17 of file ReferenceCounter.h.

References references.


Member Function Documentation

virtual void ReferenceCounter::AddReference  )  [inline, virtual]
 

adds one to references

Definition at line 23 of file ReferenceCounter.h.

References references.

bool ReferenceCounter::GetAutoDelete  )  [inline]
 

returns RC_autodelete

Definition at line 39 of file ReferenceCounter.h.

References RC_autodelete.

virtual unsigned int ReferenceCounter::GetReferences  )  [inline, virtual]
 

returns the number of references

Returns:
references

Definition at line 34 of file ReferenceCounter.h.

References references.

virtual void ReferenceCounter::RemoveReference  )  [inline, virtual]
 

subtracts one from references AND DELETES the object IF ZERO

Definition at line 25 of file ReferenceCounter.h.

References RC_autodelete, and references.

void ReferenceCounter::SetAutoDelete bool  b  )  [inline]
 

if true, next time a RemoveReference() causes references to hit 0, the object will delete itself

Definition at line 37 of file ReferenceCounter.h.

References RC_autodelete.


Member Data Documentation

bool ReferenceCounter::RC_autodelete [protected]
 

prevents deletion when counter hits 0

Definition at line 46 of file ReferenceCounter.h.

unsigned int ReferenceCounter::references [protected]
 

the current number of references

Definition at line 43 of file ReferenceCounter.h.


The documentation for this class was generated from the following file:
Tekkotsu v1.4
Generated Sat Jul 19 00:09:08 2003 by Doxygen 1.3.2