3#include <Engine/RaEngine.hpp>
10#include <Core/Utils/IndexMap.hpp>
11#include <Core/Utils/Singleton.hpp>
19class RA_ENGINE_API EntityManager
26 EntityManager(
const EntityManager& ) =
delete;
27 EntityManager& operator=(
const EntityManager& ) =
delete;
30 virtual ~EntityManager();
38 Entity* createEntity(
const std::string& name =
"" );
51 void removeEntity( Core::Utils::Index idx );
57 void removeEntity( Entity* entity );
64 Entity* getEntity( Core::Utils::Index idx )
const;
86 void deleteEntities();
89 Core::Utils::IndexMap<std::unique_ptr<Entity>> m_entities;
hepler function to manage enum as underlying types in VariableSet