#pragma once #include struct AppState; class Page { public: virtual ~Page() = default; virtual void onPush(AppState& state) = 0; virtual void onResume(AppState& state) = 0; virtual void onPause(AppState& state) = 0; virtual void onPop(AppState& state) = 0; virtual void handleEvent(const SDL_Event& event) = 0; virtual void update(float dt) = 0; virtual void render(SDL_Renderer* renderer) = 0; };