#pragma once #include #include #include "core/game.h" #include "core/timeline.h" #include "classicmode/context.h" #include "classicnote.h" #include "classicmode/classicactions.h" class ClassicGraphicsManager; class HoldManager; class ClassicGame final : public kku::Game { public: explicit ClassicGame(const std::shared_ptr>& timeline, const std::shared_ptr& graphics_manager); virtual ~ClassicGame() override; virtual void run() override; virtual void input(kku::GameEvent&& inputdata) override; virtual void update(kku::UpdateData&& updatedata) override; virtual void display() const override; private: const std::shared_ptr> _timeline; const std::shared_ptr _graphics_manager; std::shared_ptr _hold_manager; Context _context; };