raSystem  1.0 bata
raTimer.h
Go to the documentation of this file.
1 #pragma once
2 
3  class RAPI raTimer
4  {
5  public:
6  raTimer(void);
7  ~raTimer(void);
8 
9  void Start(void);
10  void Stop(void);
11  void UpDate(void);
12  void Reset(void);
13 
14  float GetTime(void) { return m_runningTime; }
15  float GetElapsed(void) { return m_timeElapsed; }
16 
17  READONLY_PROPERTY(float, fRunTime);
18  GET(fRunTime) { return m_runningTime; }
19 
20  READONLY_PROPERTY(float, fTime);
21  GET(fTime) { return m_timeElapsed; }
22 
23  READONLY_PROPERTY(__int64, CurTime);
24  GET(CurTime) { return m_currentTime; }
25 
26  READONLY_PROPERTY(__int64, TicksPerSecond);
27  GET(TicksPerSecond) { return m_ticksPerSecond; }
28 
29  READONLY_PROPERTY(__int64, LastTime);
30  GET(LastTime) { return m_lastTime; }
31 
32  READONLY_PROPERTY(bool, IsStopped);
33  GET(IsStopped) { return m_timerStopped; }
34 
35  READONLY_PROPERTY(float, FPS);
36  GET(FPS) { return 1.0f / m_timeElapsed; }
37  protected:
38  raTimer(const GUID& raguid);
39 
40  private:
41  __int64 m_ticksPerSecond;
42  __int64 m_currentTime;
43  __int64 m_lastTime;
44  float m_timeElapsed;
45  float m_runningTime;
46  bool m_timerStopped;
47  };
GET(IsStopped)
Definition: raTimer.h:33
GET(TicksPerSecond)
Definition: raTimer.h:27
GET(CurTime)
Definition: raTimer.h:24
GET(FPS)
Definition: raTimer.h:36
#define RAPI
Definition: raMain.h:11
float GetTime(void)
Definition: raTimer.h:14
GET(LastTime)
Definition: raTimer.h:30
float GetElapsed(void)
Definition: raTimer.h:15
GET(fRunTime)
Definition: raTimer.h:18
GET(fTime)
Definition: raTimer.h:21
Definition: raTimer.h:3
#define READONLY_PROPERTY(t, n)