mFrame
載入中...
搜尋中...
無符合項目
ElapsedTimer.h
1
7#ifndef MFRAME_A0DC59B9_421F_4443_85B2_74AEBA3DD247
8#define MFRAME_A0DC59B9_421F_4443_85B2_74AEBA3DD247
9
10/* ***************************************************************************************
11 * Include
12 */
13
14//----------------------------------------------------------------------------------------
15#include "./../lang/Object.h"
16
17//----------------------------------------------------------------------------------------
18
19/* ***************************************************************************************
20 * Namespace
21 */
22namespace ufm::util {
23 class ElapsedTimer;
24} // namespace ufm::util
25
26/* ***************************************************************************************
27 * Class/Interface/Struct/Enum
28 */
146 /* *************************************************************************************
147 * Variable
148 */
149 private:
151 uint64 vStartTime;
152
153 /* *************************************************************************************
154 * Abstract Method
155 */
156
157 /* *************************************************************************************
158 * Construct Method
159 */
160 public:
166
171 virtual ~ElapsedTimer(void) override;
172
173 /* *************************************************************************************
174 * Operator Method
175 */
176
177 /* *************************************************************************************
178 * Override -
179 */
180
181 /* *************************************************************************************
182 * Public Method
183 */
184 public:
193
202 uint64 restart(void);
203
209 uint64 elapsed(void) const;
210
219 ElapsedTimer& advanceStartTime(uint64 microseconds);
220
228 inline bool hasElapsed(uint64 microseconds) const {
229 return (this->elapsed() >= microseconds);
230 }
231
232 /* *************************************************************************************
233 * Protected Method
234 */
235
236 /* *************************************************************************************
237 * Private Method
238 */
239
240 /* *************************************************************************************
241 * Static Variable
242 */
243
244 /* *************************************************************************************
245 * Static Method
246 */
247};
248
249/* ***************************************************************************************
250 * End of file
251 */
252
253#endif /* MFRAME_A0DC59B9_421F_4443_85B2_74AEBA3DD247 */
物件基底類別
Definition Object.h:63
經過時間計時器,提供高精度的時間測量功能。
Definition ElapsedTimer.h:145
uint64 restart(void)
重設計時器,並回傳重設前的經過時間
uint64 elapsed(void) const
獲取從計時器啟動到現在的經過時間
virtual ~ElapsedTimer(void) override
解構 ElapsedTimer 物件。
ElapsedTimer & advanceStartTime(uint64 microseconds)
將計時器的起始時間往後推進指定微秒數
bool hasElapsed(uint64 microseconds) const
判斷計時器是否已經經過指定的微秒數
Definition ElapsedTimer.h:228
ElapsedTimer & start(void)
重置計時器
ElapsedTimer(void)
建構 ElapsedTimer 物件並自動開始計時。
Definition Iterable.h:28