From aaf7c1662abb78228b774f728061b092e4467b07 Mon Sep 17 00:00:00 2001 From: Yann Herklotz Date: Wed, 20 Jun 2018 23:20:05 +0100 Subject: Adding entity implementation and changing API --- yage/entity/entity.h | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'yage/entity/entity.h') diff --git a/yage/entity/entity.h b/yage/entity/entity.h index 01a47f5c..d9a221b9 100644 --- a/yage/entity/entity.h +++ b/yage/entity/entity.h @@ -1,6 +1,8 @@ #include #include +namespace yage { + /** * The entity is currently just an unsigned integer, which may change to a * class in the future. @@ -38,13 +40,19 @@ class ComponentGroup; class EntityManager { public: - Entity createEntity(); - EntityManager &deleteEntity(Entity entity); - void addComponent(Entity entity, BaseComponent *component); + Entity create_entity(); + EntityManager &delete_entity(Entity entity); + bool is_valid(Entity entity) const; + void add_component(Entity entity, BaseComponent *component); private: + Entity update_next_entity(); + Entity next_entity_; std::vector component_group_; std::vector component_masks_; + std::vector deleted_; }; + +} // namespace yage -- cgit