84 jassert (getReferenceCount() > 0);
96 jassert (getReferenceCount() > 0);
97 return --refCount == 0;
122 jassert (getReferenceCount() == 0);
136 friend struct ContainerDeletePolicy<ReferenceCountedObject>;
172 jassert (getReferenceCount() > 0);
184 jassert (getReferenceCount() > 0);
185 return --refCount == 0;
210 jassert (getReferenceCount() == 0);
245template <
class ObjectType>
290 other.referencedObject =
nullptr;
296 template <
typename Convertible>
316 template <
typename Convertible>
417 #if JUCE_STRICT_REFCOUNTEDPOINTER
442 o->incReferenceCount();
447 if (o !=
nullptr && o->decReferenceCountWithoutDeleting())
448 ContainerDeletePolicy<ReferencedType>::destroy (o);
455template <
typename Type>
456bool operator== (
const Type* object1,
const ReferenceCountedObjectPtr<Type>& object2)
noexcept
458 return object1 == object2.get();
462template <
typename Type>
463bool operator!= (
const Type* object1,
const ReferenceCountedObjectPtr<Type>& object2)
noexcept
465 return object1 != object2.get();
~ReferenceCountedObjectPtr()
ReferenceCountedObjectPtr & operator=(const ReferenceCountedObjectPtr &other)
ObjectType ReferencedType
bool operator!=(decltype(nullptr)) const noexcept
ReferenceCountedObjectPtr(ReferenceCountedObjectPtr &&other) noexcept
bool operator==(decltype(nullptr)) const noexcept
ReferenceCountedObjectPtr(ReferencedType *refCountedObject) noexcept
ReferenceCountedObjectPtr(ReferencedType &refCountedObject) noexcept
ReferenceCountedObjectPtr()=default
ReferenceCountedObjectPtr(const ReferenceCountedObjectPtr< Convertible > &other) noexcept
ReferenceCountedObjectPtr(decltype(nullptr)) noexcept
ReferencedType & operator*() const noexcept
ReferenceCountedObjectPtr(const ReferenceCountedObjectPtr &other) noexcept
ReferencedType * get() const noexcept
ReferenceCountedObject(const ReferenceCountedObject &) noexcept
ReferenceCountedObject(ReferenceCountedObject &&) noexcept
void resetReferenceCount() noexcept
bool decReferenceCountWithoutDeleting() noexcept
ReferenceCountedObject()=default
void incReferenceCount() noexcept
int getReferenceCount() const noexcept
void decReferenceCount() noexcept
virtual ~ReferenceCountedObject()
virtual ~SingleThreadedReferenceCountedObject()
SingleThreadedReferenceCountedObject(SingleThreadedReferenceCountedObject &&)
SingleThreadedReferenceCountedObject(const SingleThreadedReferenceCountedObject &)
SingleThreadedReferenceCountedObject()=default
void decReferenceCount() noexcept
void incReferenceCount() noexcept
int getReferenceCount() const noexcept
bool decReferenceCountWithoutDeleting() noexcept