Value source template base class for any data and sample structures. More...
#include <kanzi/core/profiling/value_profiler_source.hpp>
Public Member Functions | |
ValueProfilerSource (string_view name, string_view category, const FieldNameContainer &fields, const FieldNameContainer &sampleFields, size_t sampleBufferSize) | |
Constructor. More... | |
Public Member Functions inherited from kanzi::AbstractProfilerSource | |
virtual | ~AbstractProfilerSource () |
string_view | getName () const |
Returns name of this profiler source. More... | |
string_view | getCategory () const |
Returns category of this profiler source. More... | |
FieldNameConstIterator | beginFieldNames () const |
Returns iterator to the beginning of the container that stores field names for the profiling data. More... | |
FieldNameConstIterator | endFieldNames () const |
Returns iterator to the end of the container that stores field names for the profiling data. More... | |
Value | getValue (string_view fieldName) const |
Returns value for given profiling data field. More... | |
FieldNameConstIterator | beginSampleFieldNames () const |
Returns iterator to the beginning of the container that stores field names for the profiling sample (per invocation) data. More... | |
FieldNameConstIterator | endSampleFieldNames () const |
Returns iterator to the end of the container that stores field names for the profiling sample (per invocation) data. More... | |
size_t | getSampleCount () const |
Returns the amount of samples that have been collected. More... | |
Value | getSampleValue (size_t sampleIndex, string_view fieldName) const |
Returns value for given sample. More... | |
Protected Member Functions | |
const SampleData & | getSample (size_t index) const |
Returns sample data in given index. More... | |
void | addSample (SampleData sample) |
Stores sample to sample buffer. More... | |
virtual size_t | getSampleCountOverride () const KZ_OVERRIDE |
Returns the amount of samples that have been collected, needs to be implemented by derived class. More... | |
Protected Member Functions inherited from kanzi::AbstractProfilerSource | |
AbstractProfilerSource (string_view name, string_view category, const FieldNameContainer &fields, const FieldNameContainer &sampleFields) | |
Constructor for derived classes. More... | |
virtual Value | getValueOverride (string_view fieldName) const =0 |
Returns value for given profiling data field, needs to be implemented by derived class. More... | |
virtual Value | getSampleValueOverride (size_t sampleIndex, string_view fieldName) const =0 |
Returns value for given sample, needs to be implemented by derived class. More... | |
Protected Attributes | |
Data | m_data |
Data structure for primary data, exposed for derived classes for quick access. More... | |
Additional Inherited Members | |
Public Types inherited from kanzi::AbstractProfilerSource | |
enum | DataType { DataTypeNotDefined, DataTypeBoolean, DataTypeUint64, DataTypeFloat, DataTypeString } |
Supported profiling value types. More... | |
typedef variant< monostate, bool, uint64_t, float, string > | Value |
Container for profiling value. More... | |
typedef vector< string > | FieldNameContainer |
Container for data structure field names. More... | |
typedef FieldNameContainer::const_iterator | FieldNameConstIterator |
Iterator for field names. More... | |
Static Public Member Functions inherited from kanzi::AbstractProfilerSource | |
static DataType | getDataType (const Value &value) |
Allows to query the data type of the data value. More... | |
Value source template base class for any data and sample structures.
|
inlineexplicit |
Constructor.
name | Name of this source. |
name | Category of this source. |
fields | Field names that reflect and describe the inner data structure for profiling data. |
fields | Field names that reflect and describe the inner data structure for sample (per invocation) data. |
sampleBufferSize | Size of the ring buffer that is used to store the sample (per invocation) data. |
|
inlineprotected |
Returns sample data in given index.
index | Index of the sample, 0 being the oldest sample present in the buffer. |
|
inlineprotected |
Stores sample to sample buffer.
sample | Sample data to store. |
|
inlineprotectedvirtual |
Returns the amount of samples that have been collected, needs to be implemented by derived class.
Implements kanzi::AbstractProfilerSource.
|
protected |
Data structure for primary data, exposed for derived classes for quick access.