diff options
author | Loek Le Blansch <loek@pipeframe.xyz> | 2024-12-10 19:50:26 +0100 |
---|---|---|
committer | Loek Le Blansch <loek@pipeframe.xyz> | 2024-12-10 19:50:26 +0100 |
commit | 770496ee9d0e45480c0e0f8951adb8eee247bfe1 (patch) | |
tree | 98c68b0d37d8a1c0c8b8013ea7884d56f04aaa28 /src/crepe/api/LoopManager.h | |
parent | 0cb7f2f82ca167656b3c5cb9f0cc3b44c59cb0eb (diff) |
big WIP
Diffstat (limited to 'src/crepe/api/LoopManager.h')
-rw-r--r-- | src/crepe/api/LoopManager.h | 51 |
1 files changed, 2 insertions, 49 deletions
diff --git a/src/crepe/api/LoopManager.h b/src/crepe/api/LoopManager.h index 0947f94..1ac6a39 100644 --- a/src/crepe/api/LoopManager.h +++ b/src/crepe/api/LoopManager.h @@ -1,7 +1,5 @@ #pragma once -#include <memory> - #include "../facade/SDLContext.h" #include "../manager/ComponentManager.h" #include "../manager/ResourceManager.h" @@ -45,25 +43,11 @@ private: void loop(); /** - * \brief Function for handling input-related system calls. - * - * Processes user inputs from keyboard and mouse. - */ - void process_input(); - - /** * \brief Per-frame update. * * Updates the game state based on the elapsed time since the last frame. */ - void update(); - - /** - * \brief Late update which is called after update(). - * - * This function can be used for final adjustments before rendering. - */ - void late_update(); + void frame_update(); /** * \brief Fixed update executed at a fixed rate. @@ -72,20 +56,6 @@ private: */ void fixed_update(); - /** - * \brief Set game running variable - * - * \param running running (false = game shutdown, true = game running) - */ - void set_running(bool running); - - /** - * \brief Function for executing render-related systems. - * - * Renders the current state of the game to the screen. - */ - void render(); - bool game_running = false; private: @@ -107,25 +77,8 @@ private: private: /** * \brief Collection of System instances - * - * This map holds System instances indexed by the system's class typeid. It is filled in the - * constructor of \c LoopManager using LoopManager::load_system. - */ - std::unordered_map<std::type_index, std::unique_ptr<System>> systems; - /** - * \brief Initialize a system - * \tparam T System type (must be derivative of \c System) - */ - template <class T> - void load_system(); - /** - * \brief Retrieve a reference to ECS system - * \tparam T System type - * \returns Reference to system instance - * \throws std::runtime_error if the System is not initialized */ - template <class T> - T & get_system(); + std::vector<System> systems; }; } // namespace crepe |