#ifndef ENGINE_IMGUI_BACKEND_H #define ENGINE_IMGUI_BACKEND_H #include #include namespace eng { class InputEvent; class Shader; class Renderer; class ImguiBackend { public: ImguiBackend(); ~ImguiBackend(); void Initialize(); void Shutdown(); void CreateRenderResources(Renderer* renderer); std::unique_ptr OnInputEvent(std::unique_ptr event); void NewFrame(float delta_time); void Render(); void Draw(); private: std::vector geometries_; std::unique_ptr shader_; Renderer* renderer_ = nullptr; }; } // namespace eng #endif // ENGINE_IMGUI_BACKEND_H