4#include "MRPch/MRBindingMacros.h"
19 Timer( std::string name ) {
start( std::move( name ) ); }
35 std::chrono::duration<double>
secondsPassed()
const {
return std::chrono::high_resolution_clock::now() - start_; }
38 std::chrono::time_point<std::chrono::high_resolution_clock> start_;
39 bool started_{
false };
58#define MR_TIMER MR::Timer _timer( __PRETTY_FUNCTION__ )
60#define MR_TIMER MR::Timer _timer( __FUNCTION__ )
62#define MR_NAMED_TIMER(name) MR::Timer _named_timer( name )
#define MRMESH_API
Definition MRMeshFwd.h:85
void restart(std::string name)
Timer(const char *name)
Definition MRTimer.h:22
Timer(const Timer &)=delete
~Timer()
Definition MRTimer.h:23
std::chrono::duration< double > secondsPassed() const
Definition MRTimer.h:35
void start(std::string name)
void start(const char *name)
Timer(std::string name)
Definition MRTimer.h:19
void printTimingTree(double minTimeSec=0.1)
void printTimingTreeAtEnd(bool on, double minTimeSec=0.1)
void printCurrentTimerBranch()
prints current timer branch
std::array< Vector3f, 3 > MR_BIND_IGNORE
Definition MRMeshBuilderTypes.h:13
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Definition MRTimeRecord.h:24