20 #if !defined(__MITSUBA_CORE_TIMER_H_)
21 #define __MITSUBA_CORE_TIMER_H_
23 #include <mitsuba/mitsuba.h>
43 Timer(
bool start =
true);
52 void reset(
bool restart =
true);
58 uint64_t getNanoseconds()
const;
61 unsigned int getMicroseconds()
const;
64 unsigned int getMilliseconds()
const;
67 Float getSeconds()
const;
70 uint64_t getNanosecondsSinceStart()
const;
73 unsigned int getMicrosecondsSinceStart()
const;
76 unsigned int getMillisecondsSinceStart()
const;
79 Float getSecondsSinceStart()
const;
100 double timeSinceStart() const;
#define MTS_EXPORT_CORE
Definition: getopt.h:29
#define MTS_DECLARE_CLASS()
This macro must be used in the initial definition in classes that derive from Object.
Definition: class.h:158
Platform independent milli/micro/nanosecond timerThis class implements a simple cross-platform timer ...
Definition: timer.h:37
Parent of all Mitsuba classes.
Definition: object.h:38
virtual std::string toString() const
Return a human-readable string representation of the object's contents.