LeviLamina
Loading...
Searching...
No Matches
BasicTimer.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5class BasicTimer {
6public:
7 // member variables
8 // NOLINTBEGIN
9 ::ll::TypedStorage<8, 8, double> mTimeDelay;
10 ::ll::TypedStorage<8, 8, double> mStartTime;
11 ::ll::TypedStorage<8, 64, ::std::function<double()>> mGetCurrentTimeCallback;
12 // NOLINTEND
13
14public:
15 // prevent constructor by default
16 BasicTimer& operator=(BasicTimer const&);
17 BasicTimer(BasicTimer const&);
18 BasicTimer();
19
20public:
21 // member functions
22 // NOLINTBEGIN
23 MCAPI BasicTimer(double timeDelay, ::std::function<double()> getTimeCallback);
24
25 MCAPI_C bool hasExpired() const;
26
27 MCAPI_C ::BasicTimer& operator=(::BasicTimer&&);
28
29 MCAPI_C void resetTime();
30
31 MCAPI ~BasicTimer();
32 // NOLINTEND
33
34public:
35 // static functions
36 // NOLINTBEGIN
37 MCAPI static double getSecondsSinceLaunch();
38 // NOLINTEND
39
40public:
41 // constructor thunks
42 // NOLINTBEGIN
43 MCAPI void* $ctor(double timeDelay, ::std::function<double()> getTimeCallback);
44 // NOLINTEND
45
46public:
47 // destructor thunk
48 // NOLINTBEGIN
49 MCFOLD void $dtor();
50 // NOLINTEND
51};