18 #ifndef itkResourceProbe_h
19 #define itkResourceProbe_h
27 #include "ITKCommonExport.h"
42 template<
typename ValueType,
typename MeanType >
60 std::string GetType()
const;
63 std::string GetUnit()
const;
86 virtual ValueType GetInstantValue()
const = 0;
90 virtual ValueType GetTotal()
const;
95 virtual MeanType GetMean()
const;
102 virtual ValueType GetMinimum()
const;
106 virtual ValueType GetMaximum()
const;
110 virtual ValueType GetStandardDeviation();
114 virtual ValueType GetStandardError();
117 virtual void SetNameOfProbe(
const char* nameOfProbe);
120 virtual std::string GetNameOfProbe()
const;
123 virtual void PrintSystemInformation(std::ostream & os = std::cout);
126 virtual void Report(std::ostream & os = std::cout,
bool printSystemInfo =
true,
127 bool printReportHead =
true,
bool useTabs =
false);
130 virtual void ExpandedReport(std::ostream & os = std::cout,
bool printSystemInfo =
true,
131 bool printReportHead =
true,
bool useTabs =
false);
134 virtual void JSONReport(std::ostream & os = std::cout);
137 virtual void PrintJSONSystemInformation(std::ostream & os = std::cout);
141 virtual void UpdateMinimumMaximumMeasuredValue(ValueType value);
144 virtual void PrintReportHead(std::ostream & os = std::cout,
bool useTabs =
false);
147 virtual void PrintExpandedReportHead(std::ostream & os = std::cout,
bool useTabs =
false);
151 void PrintJSONvar(std::ostream & os,
const char* varName, T varValue,
152 unsigned indent = 4,
bool comma =
true);
155 itkLegacyMacro(
virtual void GetSystemInformation());
176 static constexpr
unsigned int tabwidth = 15;
180 #ifndef ITK_MANUAL_INSTANTIATION
181 #include "itkResourceProbe.hxx"
184 #endif //itkResourceProbe_h
unsigned long SizeValueType
ValueType m_StandardDeviation
ValueType m_StandardError
CountType m_NumberOfStops
std::string m_NameOfProbe
CountType m_NumberOfIteration
CountType m_NumberOfStarts
std::vector< ValueType > m_ProbeValueList
Computes the change of a value between two points in code.