1
0
mirror of https://github.com/ncblakely/GiantsTools synced 2024-11-24 07:05:37 +01:00
GiantsTools/Sdk/Include/ECS/Public/SystemManager.h

23 lines
429 B
C
Raw Normal View History

2021-01-24 00:40:09 +01:00
#pragma once
#include "ECS/Public/ISystem.h"
namespace ECS
{
class SystemManager
{
public:
template<typename TSystem>
void AddSystem()
{
m_systems.push_back(std::make_unique<TSystem>());
}
void StartSystems();
void UpdateSystems(float delta);
void ShutdownSystems();
private:
std::vector<std::unique_ptr<ISystem>> m_systems;
};
}