12#include "MantidKernel/DllConfig.h"
20using time_point_ns = std::chrono::time_point<std::chrono::high_resolution_clock>;
32 float elapsed(
bool reset =
true);
33 float elapsed_no_reset()
const;
34 std::string str()
const;
41MANTID_KERNEL_DLL std::ostream &
operator<<(std::ostream &,
const Timer &);
52 std::chrono::time_point<std::chrono::system_clock>
m_start;
64 void increment(
const double time_sec);
65 double getElapsed()
const;
66 size_t getNumberOfEntrances()
const;
71 double m_elapsed_sec{0.0};
72 size_t m_number_of_entrances{0};
82 std::chrono::time_point<std::chrono::system_clock>
m_start;
CodeBlockMultipleTimer()=delete
TimeAccumulator & m_accumulator
std::chrono::time_point< std::chrono::system_clock > m_start
std::chrono::time_point< std::chrono::system_clock > m_start
A simple class that provides a wall-clock (not processor time) timer.
time_point_ns m_start
The starting time.
std::chrono::time_point< std::chrono::high_resolution_clock > time_point_ns
MANTID_KERNEL_DLL std::ostream & operator<<(std::ostream &, CPUTimer &)
Convenience function to provide for easier debug printing.
std::string toString(const T &value)
Convert values to strings.
Helper class which provides the Collimation Length for SANS instruments.