19 template<
typename Clock>
25 virtual ~Timer() =
default;
107 std::chrono::time_point<Clock> mStart;
139 template<
typename Clock>
142 mStart = Clock::now();
146 template<
typename Clock>
154 template<
typename Clock>
157 mStart = std::chrono::time_point<Clock>(
Milliseconds(0));
162 template<
typename Clock>
170 template<
typename Clock>
173 return getMillis().count();
177 template<
typename Clock>
181 return std::chrono::duration_cast<T>(Clock::now() - mStart);
186 template<
typename Clock>
189 return std::chrono::duration<double>(Clock::now() - mStart).count();
194 template<
typename Clock>
197 return std::chrono::duration<float>(Clock::now() - mStart).count();
void stop()
Definition: timer.h:155
std::chrono::milliseconds Milliseconds
Milliseconds type definition.
Definition: datetime.h:22
uint32_t getTicks() const
Definition: timer.h:171
std::chrono::minutes Minutes
Minutes type definition.
Definition: datetime.h:26
std::chrono::seconds Seconds
Seconds type definition.
Definition: datetime.h:25
NanoSeconds getNanos() const
Definition: timer.h:70
Hours getHours() const
Definition: timer.h:95
T get() const
Definition: timer.h:179
Minutes getMinutes() const
Definition: timer.h:90
double getElapsedTime() const
Definition: timer.h:187
std::chrono::nanoseconds NanoSeconds
Nanoseconds type definition.
Definition: datetime.h:24
MicroSeconds getMicros() const
Definition: timer.h:75
std::chrono::time_point< Clock > getStartTime() const
Definition: timer.h:147
Seconds getSeconds() const
Definition: timer.h:85
std::chrono::microseconds MicroSeconds
Microseconds type definition.
Definition: datetime.h:23
Milliseconds getMillis() const
Definition: timer.h:80
Definition: templateapp.h:17
std::chrono::hours Hours
Hours type definition.
Definition: datetime.h:27
float getElapsedTimeFloat() const
Definition: timer.h:195
void reset()
Definition: timer.h:163
void start()
Definition: timer.h:140