aboutsummaryrefslogtreecommitdiff
path: root/src/crepe/api/SceneManager.h
diff options
context:
space:
mode:
authorLoek Le Blansch <loek@pipeframe.xyz>2024-11-06 18:38:45 +0100
committerLoek Le Blansch <loek@pipeframe.xyz>2024-11-06 18:38:45 +0100
commit3a5201961ce31d415042c6273d03e46aed7e6eb8 (patch)
treea7d66c29f69ab73a74e4cda62b7886f08cc961d7 /src/crepe/api/SceneManager.h
parent8b9297c12e47f433b13a45f9a80b2b0de15a3f21 (diff)
fix code standard and merge #19
Diffstat (limited to 'src/crepe/api/SceneManager.h')
-rw-r--r--src/crepe/api/SceneManager.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/crepe/api/SceneManager.h b/src/crepe/api/SceneManager.h
index eaf1ba1..1e0e670 100644
--- a/src/crepe/api/SceneManager.h
+++ b/src/crepe/api/SceneManager.h
@@ -18,13 +18,27 @@ public:
SceneManager & operator=(SceneManager &&) = delete;
public:
+ /**
+ * \brief Add a new concrete scene to the scene manager
+ *
+ * \tparam T Type of concrete scene
+ * \param name Name of new scene
+ */
template <typename T>
void add_scene(const std::string & name);
+ /**
+ * \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:
- SceneManager();
+ SceneManager() = default;
private:
std::vector<std::unique_ptr<Scene>> scenes;