Celero
include
celero
UserDefinedMeasurement.h
1
#pragma once
2
20
21
#include <celero/Export.h>
22
23
#include <functional>
24
#include <memory>
25
#include <string>
26
#include <unordered_map>
27
#include <vector>
28
29
namespace
celero
30
{
31
class
UserDefinedMeasurement;
32
39
using
UDMAggregationTable
= std::vector<std::pair<std::string, std::function<double(void)>>>;
40
48
class
CELERO_EXPORT
UserDefinedMeasurement
49
{
50
public
:
54
virtual
~
UserDefinedMeasurement
() =
default
;
55
59
virtual
UDMAggregationTable
getAggregationInfo()
const
= 0;
60
64
virtual
std::string getName()
const
= 0;
65
72
virtual
void
merge(
const
UserDefinedMeasurement
*
const
x) = 0;
73
74
protected
:
75
// Class may never be directly instantiated
76
UserDefinedMeasurement
() =
default
;
77
};
78
79
}
// namespace celero
80
celero
Definition:
Archive.h:25
celero::UDMAggregationTable
std::vector< std::pair< std::string, std::function< double(void)> >> UDMAggregationTable
Describes, which aggregations should be computed on a user-defined measurement.
Definition:
UserDefinedMeasurement.h:39
celero::UserDefinedMeasurement
Base class that the user must derive user-defined measurements from.
Definition:
UserDefinedMeasurement.h:48
Generated by
1.8.13