41template <
class OwnerClass>
101 return OwnerClass::getLeakedObjectClassName();
112#if DOXYGEN || ! defined (JUCE_LEAK_DETECTOR)
113 #if (DOXYGEN || JUCE_CHECK_MEMORY_LEAKS)
133 #define JUCE_LEAK_DETECTOR(OwnerClass) \
134 friend class juce::LeakedObjectDetector<OwnerClass>; \
135 static const char* getLeakedObjectClassName() noexcept { return #OwnerClass; } \
136 juce::LeakedObjectDetector<OwnerClass> JUCE_JOIN_MACRO (leakDetector, __LINE__);
138 #define JUCE_LEAK_DETECTOR(OwnerClass)
#define noexcept
Definition DistrhoDefines.h:72
Definition juce_LeakedObjectDetector.h:75
~LeakCounter()
Definition juce_LeakedObjectDetector.h:79
Atomic< int > numObjects
Definition juce_LeakedObjectDetector.h:96
LeakedObjectDetector(const LeakedObjectDetector &) noexcept
Definition juce_LeakedObjectDetector.h:47
LeakedObjectDetector() noexcept
Definition juce_LeakedObjectDetector.h:46
static LeakCounter & getCounter() noexcept
Definition juce_LeakedObjectDetector.h:104
static const char * getLeakedObjectClassName()
Definition juce_LeakedObjectDetector.h:99
~LeakedObjectDetector()
Definition juce_LeakedObjectDetector.h:51
Definition carla_juce.cpp:31
Definition juce_Atomic.h:42