32 lines
569 B
C++
32 lines
569 B
C++
// director.hpp
|
|
|
|
#pragma once
|
|
|
|
#include <memory>
|
|
|
|
#include "core/rendering/video.hpp"
|
|
#include "core/timer/timer.hpp"
|
|
#include "core/eventmanager.hpp"
|
|
#include "game/scenes/scene.hpp"
|
|
#include "context.hpp"
|
|
#include "subsystems.hpp"
|
|
|
|
class Director {
|
|
public:
|
|
Director();
|
|
~Director();
|
|
|
|
auto iterate() -> int;
|
|
|
|
private:
|
|
Context context_;
|
|
Subsystems subsystems_;
|
|
|
|
// Core
|
|
std::unique_ptr<Video> video_;
|
|
std::unique_ptr<Timer> timer_;
|
|
std::unique_ptr<EventManager> event_manager_;
|
|
|
|
// Game
|
|
std::unique_ptr<Scene> scene_;
|
|
}; |