18 #ifndef itkResourceProbe_h
19 #define itkResourceProbe_h
28 #include "ITKCommonExport.h"
43 template <
typename ValueType,
typename MeanType>
80 GetNumberOfStarts()
const;
84 GetNumberOfStops()
const;
88 GetNumberOfIteration()
const;
93 GetInstantValue()
const = 0;
123 GetStandardDeviation();
132 SetNameOfProbe(
const char * nameOfProbe);
136 GetNameOfProbe()
const;
140 PrintSystemInformation(std::ostream & os = std::cout);
144 Report(std::ostream & os = std::cout,
bool printSystemInfo =
true,
bool printReportHead =
true,
bool useTabs =
false);
148 ExpandedReport(std::ostream & os = std::cout,
149 bool printSystemInfo =
true,
150 bool printReportHead =
true,
151 bool useTabs =
false);
155 JSONReport(std::ostream & os = std::cout);
159 PrintJSONSystemInformation(std::ostream & os = std::cout);
164 UpdateMinimumMaximumMeasuredValue(ValueType value);
168 PrintReportHead(std::ostream & os = std::cout,
bool useTabs =
false);
172 PrintExpandedReportHead(std::ostream & os = std::cout,
bool useTabs =
false);
175 template <
typename T>
177 PrintJSONvar(std::ostream & os,
const char * varName, T varValue,
unsigned indent = 4,
bool comma =
true);
180 itkLegacyMacro(
virtual void GetSystemInformation());
200 static constexpr
unsigned int tabwidth = 15;
204 #ifndef ITK_MANUAL_INSTANTIATION
205 # include "itkResourceProbe.hxx"
208 #endif // itkResourceProbe_h