]> git.localhorst.tv Git - sdl-test8.git/blob - src/app/State.h
added collision engine, more or less stole gameplay from sdl-test7
[sdl-test8.git] / src / app / State.h
1 /*
2  * State.h
3  *
4  *  Created on: Apr 8, 2012
5  *      Author: holy
6  */
7
8 #ifndef APP_APPLICATIONSTATE_H_
9 #define APP_APPLICATIONSTATE_H_
10
11 #include <SDL/SDL.h>
12
13 namespace app {
14
15 class Control;
16 class Timer;
17
18 class State {
19
20         public:
21                 virtual ~State(void) { };
22
23         public:
24                 virtual void EnterState(Control *ctrl, SDL_Surface *screen) = 0;
25                 virtual void ExitState(void) = 0;
26
27                 virtual void HandleEvent(const SDL_Event &) = 0;
28                 virtual void UpdateWorld(const Timer &) = 0;
29                 virtual void Render(SDL_Surface *) = 0;
30
31 };
32
33 }
34
35 #endif /* APP_STATE_H_ */