5 #ifndef MERCURYDPM_PRINTWALLTIMEMIXIN_H
6 #define MERCURYDPM_PRINTWALLTIMEMIXIN_H
The DPMBase header includes quite a few header files, defining all the handlers, which are essential....
Definition: DPMBase.h:56
A mixin class for printing wall time during simulations.
Definition: PrintWallTimeMixin.h:20
PrintWallTimeMixin()
Default constructor.
Definition: PrintWallTimeMixin.cc:12
std::chrono::system_clock::time_point getCurrentWallTime() const
Gets the current wall time.
Definition: PrintWallTimeMixin.cc:105
std::chrono::system_clock::time_point lastWallTime
Last wall time. Mutable so it can be modified in the const method printTime.
Definition: PrintWallTimeMixin.h:54
std::chrono::system_clock::duration deadReckoningEstimateRemainingWallTime() const
Estimates the remaining wall time for the simulation using dead reckoning.
Definition: PrintWallTimeMixin.cc:132
Mdouble initialSimulationTime
Initial simulation time.
Definition: PrintWallTimeMixin.h:39
Mdouble lastSimulationTime
Last simulation time. Mutable so it can be modified in the const method printTime.
Definition: PrintWallTimeMixin.h:49
std::chrono::system_clock::time_point initialWallTime
wall time (imagine a clock on the wall)
Definition: PrintWallTimeMixin.h:44
static std::string formatDuration(const std::chrono::system_clock::duration duration)
Formats a duration for display.
Definition: PrintWallTimeMixin.cc:72
std::chrono::system_clock::duration estimateRemainingWallTime() const
Estimates the remaining wall time for the simulation.
Definition: PrintWallTimeMixin.cc:116
static std::string formatTime(const std::chrono::system_clock::time_point tp)
Formats a time point for display.
Definition: PrintWallTimeMixin.cc:57
void printTime() const override
Prints the current wall time.
Definition: PrintWallTimeMixin.cc:24
std::string string(const unsigned &i)
Definition: oomph_definitions.cc:286