struct Core::IProfilingData

Overview

Interface to store profiling data. More…

#include <coreprofiler.h>

struct IProfilingData
{
    // enums

    enum Key;

    // methods

    virtual int getNumberOfCounters() const = 0;
    virtual int addCounter(CStringPtr label) = 0;
    virtual void setCounterLabel(int counter, CStringPtr label) = 0;
    virtual CStringPtr getCounterLabel(int counter) const = 0;
    virtual bool setField(int counter, Key key, uint32 value) = 0;
    virtual bool getField(uint32& value, int counter, Key key) const = 0;
};

// direct descendants

class ProfilingData;

Detailed Documentation

Interface to store profiling data.

Methods

virtual int getNumberOfCounters() const = 0

Get number of profiling counters.

virtual int addCounter(CStringPtr label) = 0

Add profiling counter with label.

virtual void setCounterLabel(int counter, CStringPtr label) = 0

Change profiling counter label.

virtual CStringPtr getCounterLabel(int counter) const = 0

Get profiling counter label.

virtual bool setField(int counter, Key key, uint32 value) = 0

Set value for counter, see @Key enum (CPU usage, microsecond intervals).

virtual bool getField(uint32& value, int counter, Key key) const = 0

Get value from counter, see @Key enum (CPU usage, microsecond intervals).