diff options
author | Yann Herklotz <ymherklotz@gmail.com> | 2018-02-13 19:14:33 +0000 |
---|---|---|
committer | Yann Herklotz <ymherklotz@gmail.com> | 2018-02-13 19:14:33 +0000 |
commit | 49af8b16ae3f9e6579656ed10f815e9c465557d0 (patch) | |
tree | 1dff4aea6a59c466ea6a6f15ad7f5e2ac69f5b37 /yage/engine/space.h | |
parent | e9bd903761605c7619a235edddf07c3a0b963968 (diff) | |
download | YAGE-49af8b16ae3f9e6579656ed10f815e9c465557d0.tar.gz YAGE-49af8b16ae3f9e6579656ed10f815e9c465557d0.zip |
[entity] Starting work on entity system.
Diffstat (limited to 'yage/engine/space.h')
-rw-r--r-- | yage/engine/space.h | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/yage/engine/space.h b/yage/engine/space.h deleted file mode 100644 index e69df37a..00000000 --- a/yage/engine/space.h +++ /dev/null @@ -1,61 +0,0 @@ -/** --------------------------------------------------------------------------- - * @file: space.h - * - * Copyright (c) 2017 Yann Herklotz Grave <ymherklotz@gmail.com> - * MIT License, see LICENSE file for more details. - * ---------------------------------------------------------------------------- - */ - -#ifndef YAGE_ENGINE_SPACE_H -#define YAGE_ENGINE_SPACE_H - -#include <vector> - -#include "entitymanager.h" - -namespace yage -{ - -class System; - -/** - * Space that keeps track of all the entities, componenets and runs the systems - * on the data to update them. There can be multiple instances of a space, which - * can be used, for example, for different levels in the game that can be loaded - * separately, or a game menu that can be loaded above the other spaces when the - * user presses on pause. - */ -class Space -{ -public: - /** - * Default instance for a space. - */ - Space(); - - /** - * Create an entity that will belong to this space, and return the handle to - * the user. The Entity class itself should not be visible to the user, as - * the user only needs to worry about the handle when referring to the - * Entity and changing it. - */ - unsigned createEntity(); - -private: - /** - * The subspaces of the Space that act on the data and on their respective - * component. These are specific to the Space, as other spaces might have - * different Systems and not act on the same entities. - */ - std::vector<System *> systems_; - - /** - * Manages all the entities in the system, can create them for the current - * space. - */ - EntityManager em_; -}; - -} // namespace yage - -#endif |