Cogs.Core
Time.h
1#pragma once
2
3#include "Base.h"
4
5#include "Foundation/Platform/Timer.h"
6
7namespace Cogs
8{
9 namespace Core
10 {
15 class COGSCORE_DLL_API Time
16 {
17 public:
18 Time(class Context * context);
19
25 void setAnimationTime(double value);
26
30 double getAnimationTime();
31
35 double getAnimationTimeDelta() { return animationTimeDelta; }
36
40 uint32_t getFrame() { return frame; }
41
48 void update();
49
55 Timer& refDeltaTime() { return timeDelta; }
56
57 private:
58 Context * context = nullptr;
59
60 double animationTime = 0.0;
61 double animationTimeDelta = 0.0;
62 uint32_t frame = 0;
63
64 Timer timer;
65 Timer timeDelta;
66 };
67 }
68}
A Context instance contains all the services, systems and runtime components needed to use Cogs.
Definition: Context.h:83
Provides time services for components depending on elapsed or system time for animation or other trac...
Definition: Time.h:16
double getAnimationTimeDelta()
Get the time elapsed since the previous frame.
Definition: Time.h:35
uint32_t getFrame()
Get the current frame number.
Definition: Time.h:40
Timer & refDeltaTime()
Return a non-const reference to the delta timer.
Definition: Time.h:55
Old timer class.
Definition: Timer.h:37
Contains all Cogs related functionality.
Definition: FieldSetter.h:23