etl/docs/utilities/instance_count.md
2026-04-21 09:31:04 +02:00

954 B

title
instance_count

{{< callout type="info">}} Header: instance_count.h
Since: TBC
{{< /callout >}}

Inherit from this class to count instances of a class.

Before: 20.25.0

etl::instance_count<typename T>

This class is not thread safe.

From: 20.25.0

etl::instance_count<typename T, typename TCounter = uint32_t>

This class is not thread safe unless TCounter is an atomic type.

Types

type The type being counted. counter_type The type used for the counter.

Member functions

static const counter_type& get_instance_count()

Returns a const reference to the current count.


static void reset_instance_count()

Resets the count to zero.

Example

Instances of My_Class will be counted and can be accessed by the inherited member function get_instance_count().

class My_Class : public etl::instance_count<My_Class, std::atomic_uint8_t>
{
};