#ifndef __STATES__BASE_STATE_H__ #define __STATES__BASE_STATE_H__ #include class Engine; // Forward declaration class BaseState { public: virtual ~BaseState() = default; virtual void Enter(Engine& engine) {}; virtual void Exit(Engine& engine) {}; virtual void HandleEvents(Engine& engine, SDL_Event& e) = 0; virtual void Update(Engine& engine, float dt) = 0; virtual void Render(Engine& engine) = 0; virtual void RenderImGui(Engine& engine) {}; private: }; #endif