X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fapp%2FState.h;fp=src%2Fapp%2FState.h;h=471b44bd99ff0ba03025560fa95baabc9882039f;hb=59d528aaa84a2210b0a357887853f534cfbea156;hp=0000000000000000000000000000000000000000;hpb=6a3e02e15c1626958540626bf2ccf39f8e365ca5;p=l2e.git diff --git a/src/app/State.h b/src/app/State.h new file mode 100644 index 0000000..471b44b --- /dev/null +++ b/src/app/State.h @@ -0,0 +1,36 @@ +/* + * State.h + * + * Created on: Apr 8, 2012 + * Author: holy + */ + +#ifndef APP_APPLICATIONSTATE_H_ +#define APP_APPLICATIONSTATE_H_ + +#include + +namespace app { + +class Application; + +class State { + +public: + virtual ~State() { }; + +public: + /// do some setup + /// @param ctrl the Application running the state + virtual void EnterState(Application &ctrl, SDL_Surface *screen) = 0; + virtual void ExitState() = 0; + + virtual void HandleEvent(const SDL_Event &) = 0; + virtual void UpdateWorld(float deltaT) = 0; + virtual void Render(SDL_Surface *) = 0; + +}; + +} + +#endif /* APP_STATE_H_ */