X-Git-Url: http://git.localhorst.tv/?a=blobdiff_plain;f=src%2Fapp%2FState.hpp;h=f79bc60f03d7c96e6c0668b73ad62688fc0c44c2;hb=9da6ac5e93d79e79658a95d5f6efe42146873583;hp=2bdd41b238f87518cd56d649add03d0fd11c39c1;hpb=afd253b2dd10fdf2d4655d3d4a5766e6aa8c1a2c;p=blank.git diff --git a/src/app/State.hpp b/src/app/State.hpp index 2bdd41b..f79bc60 100644 --- a/src/app/State.hpp +++ b/src/app/State.hpp @@ -6,16 +6,28 @@ namespace blank { +class HeadlessApplication; class Viewport; struct State { + friend class HeadlessApplication; + virtual void Handle(const SDL_Event &) = 0; virtual void Update(int dt) = 0; virtual void Render(Viewport &) = 0; + +private: + int ref_count = 0; + + virtual void OnEnter() { } + virtual void OnResume() { } + virtual void OnPause() { } + virtual void OnExit() { } + }; };