Adds reference-counting to an object.
More...
#include <juce_ReferenceCountedObject.h>
Adds reference-counting to an object.
This is effectively a version of the ReferenceCountedObject class, but which uses a non-atomic counter, and so is not thread-safe (but which will be more efficient). For more details on how to use it, see the ReferenceCountedObject class notes.
- See also
- ReferenceCountedObject, ReferenceCountedObjectPtr, ReferenceCountedArray
◆ SingleThreadedReferenceCountedObject()
SingleThreadedReferenceCountedObject::SingleThreadedReferenceCountedObject |
( |
| ) |
|
|
inlineprotected |
Creates the reference-counted object (with an initial ref count of zero).
◆ ~SingleThreadedReferenceCountedObject()
virtual SingleThreadedReferenceCountedObject::~SingleThreadedReferenceCountedObject |
( |
| ) |
|
|
inlineprotectedvirtual |
◆ decReferenceCount()
void SingleThreadedReferenceCountedObject::decReferenceCount |
( |
| ) |
|
|
inlinenoexcept |
Decreases the object's reference count.
If the count gets to zero, the object will be deleted.
References jassert.
◆ decReferenceCountWithoutDeleting()
bool SingleThreadedReferenceCountedObject::decReferenceCountWithoutDeleting |
( |
| ) |
|
|
inlinenoexcept |
Decreases the object's reference count.
If the count gets to zero, the object will not be deleted, but this method will return true, allowing the caller to take care of deletion.
References jassert.
◆ getReferenceCount()
int SingleThreadedReferenceCountedObject::getReferenceCount |
( |
| ) |
const |
|
inlinenoexcept |
Returns the object's current reference count.
◆ incReferenceCount()
void SingleThreadedReferenceCountedObject::incReferenceCount |
( |
| ) |
|
|
inlinenoexcept |
Increments the object's reference count.
This is done automatically by the smart pointer, but is public just in case it's needed for nefarious purposes.
◆ ContainerDeletePolicy< ReferenceCountedObject >
◆ refCount
int SingleThreadedReferenceCountedObject::refCount |
|
private |
The documentation for this class was generated from the following file: