Base Framework
Classes | Public Member Functions | Static Public Member Functions | List of all members
InstanceCounter< TYPE > Class Template Reference

#include <base/mem/InstanceCounter.h>

Classes

class  InstanceCountersForType
 

Public Member Functions

 InstanceCounter (const InstanceCounter &) noexcept
 
 InstanceCounter (InstanceCounter &&) noexcept
 
InstanceCounteroperator= (const InstanceCounter &) noexcept
 
InstanceCounteroperator= (InstanceCounter &&) noexcept
 
MemorySize getNumberOfInstances () noexcept
 
MemorySize getNumberOfConstructedInstances () noexcept
 
MemorySize getNumberOfDestructedInstances () noexcept
 

Static Public Member Functions

static InstanceCountersForTypegetInstanceCounters () noexcept
 

Detailed Description

template<class TYPE>
class InstanceCounter< TYPE >

Instance counter for counting number of constructions and destructions for a given type. Use DebugOnlyInstanceCounter if you do not want to impact release builds.

class MyClass : public InstanceCounter<MyClass> {
public:
};
MyObject o;
MemorySize instances = getInstanceCount<MyObject>();
getInstanceCount(o);

Member Function Documentation

◆ getNumberOfConstructedInstances()

template<class TYPE >
MemorySize InstanceCounter< TYPE >::getNumberOfConstructedInstances ( )
inlinenoexcept

Returns the total number of constructed instances.

◆ getNumberOfDestructedInstances()

template<class TYPE >
MemorySize InstanceCounter< TYPE >::getNumberOfDestructedInstances ( )
inlinenoexcept

Returns the total number of destructed instances.

◆ getNumberOfInstances()

template<class TYPE >
MemorySize InstanceCounter< TYPE >::getNumberOfInstances ( )
inlinenoexcept

Returns the current number of instances.

InstanceCounter
Definition: InstanceCounter.h:48