2019-05-15 16:52:37 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
class CTimer
|
|
|
|
{
|
|
|
|
static uint32 &m_snTimeInMilliseconds;
|
|
|
|
static uint32 &m_snTimeInMillisecondsPauseMode;
|
|
|
|
static uint32 &m_snTimeInMillisecondsNonClipped;
|
|
|
|
static uint32 &m_snPreviousTimeInMilliseconds;
|
|
|
|
static uint32 &m_FrameCounter;
|
|
|
|
static float &ms_fTimeScale;
|
|
|
|
static float &ms_fTimeStep;
|
|
|
|
static float &ms_fTimeStepNonClipped;
|
|
|
|
static bool &m_UserPause;
|
|
|
|
static bool &m_CodePause;
|
|
|
|
public:
|
|
|
|
static float GetTimeStep(void) { return ms_fTimeStep; }
|
2019-05-19 21:28:10 +02:00
|
|
|
static void SetTimeStep(float ts) { ms_fTimeStep = ts; }
|
2019-05-15 16:52:37 +02:00
|
|
|
static uint32 GetFrameCounter(void) { return m_FrameCounter; }
|
|
|
|
static uint32 GetTimeInMilliseconds(void) { return m_snTimeInMilliseconds; }
|
2019-05-29 20:02:58 +02:00
|
|
|
|
|
|
|
static inline Bool GetIsPaused() { return m_UserPause || m_CodePause; }
|
|
|
|
|
|
|
|
static void Initialise(void);
|
|
|
|
static void Shutdown(void);
|
|
|
|
static void Update(void);
|
|
|
|
static void Suspend(void);
|
|
|
|
static void Resume(void);
|
|
|
|
static UInt32 GetCyclesPerMillisecond(void);
|
|
|
|
static UInt32 GetCurrentTimeInCycles(void);
|
|
|
|
static Bool GetIsSlowMotionActive(void);
|
|
|
|
static void Stop(void);
|
|
|
|
static void StartUserPause(void);
|
|
|
|
static void EndUserPause(void);
|
2019-05-15 16:52:37 +02:00
|
|
|
};
|