#pragma once #include "DI/auto_wirable.hpp" #include "interfaces/cursor.hpp" #include "interfaces/game.hpp" #include "interfaces/scene.hpp" #include "interfaces/window.hpp" #include class Game : public IGame, public AutoWirable { public: Game() noexcept = default; void run() noexcept override; [[nodiscard]] std::unordered_map> get_input_config(const std::shared_ptr &window, const std::shared_ptr &scene, const std::shared_ptr &cursor_controller) const noexcept override; };