aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/SceneManager.h
diff options
context:
space:
mode:
authorheavydemon21 <nielsstunnebrink1@gmail.com>2024-12-06 10:44:42 +0100
committerheavydemon21 <nielsstunnebrink1@gmail.com>2024-12-06 10:44:42 +0100
commitd5f63024ebed7df2fff8e016bd1c7c26f8fdfa27 (patch)
treeb26e35cb0482d04a33cc96d97ba21c21d0012229 /src/crepe/api/SceneManager.h
parent9cde6875186b335c75eafa6402f0957cd4252c76 (diff)
parent1f4e961d7f9d6887c807cac1a362f2d178b0860b (diff)
Merge branch 'master' into decoupling
Diffstat (limited to 'src/crepe/api/SceneManager.h')
-rw-r--r--src/crepe/api/SceneManager.h53
1 files changed, 0 insertions, 53 deletions
diff --git a/src/crepe/api/SceneManager.h b/src/crepe/api/SceneManager.h
deleted file mode 100644
index f6f62cd..0000000
--- a/src/crepe/api/SceneManager.h
+++ /dev/null
@@ -1,53 +0,0 @@
-#pragma once
-
-#include <memory>
-#include <vector>
-
-#include "Scene.h"
-
-namespace crepe {
-
-class ComponentManager;
-
-/**
- * \brief Manages scenes
- *
- * This class manages scenes. It can add new scenes and load them. It also manages the current scene
- * and the next scene.
- */
-class SceneManager {
-public:
- //! \param mgr Reference to the ComponentManager
- SceneManager(ComponentManager & mgr);
-
-public:
- /**
- * \brief Add a new concrete scene to the scene manager
- *
- * \tparam T Type of concrete scene
- */
- template <typename T, typename... Args>
- void add_scene(Args &&... args);
- /**
- * \brief Set the next scene
- *
- * This scene will be loaded at the end of the frame
- *
- * \param name Name of the next scene
- */
- void set_next_scene(const std::string & name);
- //! Load a new scene (if there is one)
- void load_next_scene();
-
-private:
- //! Vector of concrete scenes (added by add_scene())
- std::vector<std::unique_ptr<Scene>> scenes;
- //! Next scene to load
- std::string next_scene;
- //! Reference to the ComponentManager
- ComponentManager & component_manager;
-};
-
-} // namespace crepe
-
-#include "SceneManager.hpp"