CS::Utility::FastRefCount< ActualClass > Class Template Reference
This is a class which provides basic reference-counting semantics. More...
#include <csutil/refcount.h>
Public Member Functions | |
void | DecRef () |
Decrease the number of references to this object. | |
FastRefCount () | |
Initialize object and set reference to 1. | |
int | GetRefCount () const |
Get the reference count (only for debugging). | |
void | IncRef () |
Increase the number of references to this object. |
Detailed Description
template<typename ActualClass>
class CS::Utility::FastRefCount< ActualClass >
This is a class which provides basic reference-counting semantics.
It can be used in conjunction with the smart pointer template class csRef (see <ref.h>). This class itself provides no functionality beyond reference counting. It is intended that you should subclass FastRefCount and add needed functionality.
This class has slightly less overhead than csRefCount, but is also less generally useable:
- Pointers can *not* be passed across plugin boundaries.
- Deriving from a class C derived from ActualClass without using a virtual destructor in C can lead to the wrong destructor being called.
- Using virtual methods eliminates the overhead advantage.
Definition at line 101 of file refcount.h.
Constructor & Destructor Documentation
template<typename ActualClass >
CS::Utility::FastRefCount< ActualClass >::FastRefCount | ( | ) | [inline] |
Member Function Documentation
template<typename ActualClass >
void CS::Utility::FastRefCount< ActualClass >::DecRef | ( | ) | [inline] |
template<typename ActualClass >
int CS::Utility::FastRefCount< ActualClass >::GetRefCount | ( | ) | const [inline] |
template<typename ActualClass >
void CS::Utility::FastRefCount< ActualClass >::IncRef | ( | ) | [inline] |
The documentation for this class was generated from the following file:
- csutil/refcount.h
Generated for Crystal Space 1.4.0 by doxygen 1.5.8