Urho3D::RefCounted Class Reference

Base class for intrusively reference-counted objects. These are noncopyable and non-assignable. More...

#include <Urho3D/Container/RefCounted.h>

Inheritance diagram for Urho3D::RefCounted:
[legend]
Collaboration diagram for Urho3D::RefCounted:
[legend]

Public Member Functions

 RefCounted ()
 Construct. Allocate the reference count structure and set an initial self weak reference.
 
virtual ~RefCounted ()
 Destruct. Mark as expired and also delete the reference count structure if no outside weak references exist.
 
 RefCounted (const RefCounted &rhs)=delete
 Prevent copy construction.
 
RefCountedoperator= (const RefCounted &rhs)=delete
 Prevent assignment.
 
void AddRef ()
 Increment reference count. Can also be called outside of a SharedPtr for traditional reference counting.
 
void ReleaseRef ()
 Decrement reference count and delete self if no more references. Can also be called outside of a SharedPtr for traditional reference counting.
 
int Refs () const
 
int WeakRefs () const
 
RefCountRefCountPtr ()
 Return pointer to the reference count structure.
 

Private Attributes

RefCountrefCount_
 Pointer to the reference count structure.
 

Detailed Description

Base class for intrusively reference-counted objects. These are noncopyable and non-assignable.

Member Function Documentation

◆ Refs()

int Urho3D::RefCounted::Refs ( ) const

Return reference count.

Here is the caller graph for this function:

◆ WeakRefs()

int Urho3D::RefCounted::WeakRefs ( ) const

Return weak reference count.


The documentation for this class was generated from the following files:
  • Source/Urho3D/Container/RefCounted.h
  • Source/Urho3D/Container/RefCounted.cpp