Simulant  21.12-194
A portable game engine for Windows, OSX, Linux, Dreamcast, and PSP
updateable.h
1 #pragma once
2 
3 #include "../macros.h"
4 
5 namespace smlt {
6 
13 class Updateable {
14 public:
15  virtual ~Updateable() {}
16 
17  /*
18  * Non-Virtual Interface. Simulant calls these underscore prefixed
19  * functions, and subclasses implement the more nicely named ones
20  */
21  virtual void _update_thunk(float dt) {
22  update(dt);
23  }
24 
25  virtual void _late_update_thunk(float dt) {
26  late_update(dt);
27  }
28 
29  virtual void _fixed_update_thunk(float step) {
30  fixed_update(step);
31  }
32 
33 private:
34  virtual void update(float dt) {
35  _S_UNUSED(dt);
36  }
37  virtual void late_update(float dt) {
38  _S_UNUSED(dt);
39  }
40  virtual void fixed_update(float step) {
41  _S_UNUSED(step);
42  }
43 };
44 
45 }
smlt::Updateable
The Updateable class.
Definition: updateable.h:13
smlt
Definition: animation.cpp:25