1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-02-08 04:20:09 +00:00

Added a reference count getter method to SharedResourcePointer

This commit is contained in:
jules 2017-03-20 12:08:32 +00:00
parent 96dcf64967
commit 86f1b6628f

View file

@ -109,7 +109,7 @@ public:
*/
~SharedResourcePointer()
{
SharedObjectHolder& holder = getSharedObjectHolder();
auto& holder = getSharedObjectHolder();
const SpinLock::ScopedLockType sl (holder.lock);
if (--(holder.refCount) == 0)
@ -127,8 +127,12 @@ public:
*/
SharedObjectType& getObject() const noexcept { return *sharedObject; }
/** Returns the shared object. */
SharedObjectType* operator->() const noexcept { return sharedObject; }
/** Returns the number of SharedResourcePointers that are currently holding the shared object. */
int getReferenceCount() const noexcept { return getSharedObjectHolder().refCount; }
private:
struct SharedObjectHolder : public ReferenceCountedObject
{
@ -147,7 +151,7 @@ private:
void initialise()
{
SharedObjectHolder& holder = getSharedObjectHolder();
auto& holder = getSharedObjectHolder();
const SpinLock::ScopedLockType sl (holder.lock);
if (++(holder.refCount) == 1)