18#ifndef itkResourceProbe_h
19#define itkResourceProbe_h
29#include "ITKCommonExport.h"
44template <
typename ValueType,
typename MeanType>
145 Report(std::ostream & os = std::cout,
bool printSystemInfo =
true,
bool printReportHead =
true,
bool useTabs =
false);
150 bool printSystemInfo =
true,
151 bool printReportHead =
true,
152 bool useTabs =
false);
176 template <
typename T>
178 PrintJSONvar(std::ostream & os,
const char * varName, T varValue,
unsigned int indent = 4,
bool comma =
true);
185 ValueType m_StartValue{};
186 ValueType m_TotalValue{};
187 ValueType m_MinimumValue{};
188 ValueType m_MaximumValue{};
189 ValueType m_StandardDeviation{};
190 ValueType m_StandardError{};
196 std::vector<ValueType> m_ProbeValueList{};
198 std::string m_NameOfProbe{};
199 std::string m_TypeString{};
200 std::string m_UnitString{};
202 static constexpr unsigned int tabwidth = 15;
206#ifndef ITK_MANUAL_INSTANTIATION
207# include "itkResourceProbe.hxx"
Control indentation during Print() invocation.
Computes the change of a value between two points in code.
virtual void PrintReportHead(std::ostream &os=std::cout, bool useTabs=false)
std::string GetType() const
virtual void SetNameOfProbe(const char *nameOfProbe)
virtual ~ResourceProbe()=default
virtual void PrintExpandedReportHead(std::ostream &os=std::cout, bool useTabs=false)
virtual ValueType GetStandardError()
virtual void UpdateMinimumMaximumMeasuredValue(ValueType value)
CountType GetNumberOfIteration() const
virtual MeanType GetMean() const
std::string GetUnit() const
virtual void PrintJSONSystemInformation(std::ostream &os=std::cout)
virtual void JSONReport(std::ostream &os=std::cout)
ResourceProbe(std::string type, std::string unit)
virtual ValueType GetTotal() const
virtual std::string GetNameOfProbe() const
virtual void PrintSystemInformation(std::ostream &os=std::cout)
virtual ValueType GetMaximum() const
virtual void Print(std::ostream &os, Indent indent) const
virtual void ExpandedReport(std::ostream &os=std::cout, bool printSystemInfo=true, bool printReportHead=true, bool useTabs=false)
void PrintJSONvar(std::ostream &os, const char *varName, T varValue, unsigned int indent=4, bool comma=true)
virtual ValueType GetInstantValue() const =0
CountType GetNumberOfStops() const
virtual ValueType GetMinimum() const
CountType GetNumberOfStarts() const
virtual void Report(std::ostream &os=std::cout, bool printSystemInfo=true, bool printReportHead=true, bool useTabs=false)
virtual ValueType GetStandardDeviation()
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
unsigned long SizeValueType