]> git.tdb.fi Git - libs/game.git/blob - source/game/system.h
Add some useful accessors
[libs/game.git] / source / game / system.h
1 #ifndef MSP_GAME_SYSTEM_H_
2 #define MSP_GAME_SYSTEM_H_
3
4 #include <msp/time/timedelta.h>
5
6 namespace Msp::Game {
7
8 class Stage;
9
10 class System
11 {
12 protected:
13         Stage &stage;
14
15         System(Stage &s): stage(s) { }
16 public:
17         virtual ~System() = default;
18
19         Stage &get_stage() const { return stage; }
20
21         virtual void tick(Time::TimeDelta) = 0;
22 };
23
24 } // namespace Msp::Game
25
26 #endif