aboutsummaryrefslogtreecommitdiffstats
path: root/yage
diff options
context:
space:
mode:
authorYann Herklotz <ymherklotz@gmail.com>2018-02-13 19:14:33 +0000
committerYann Herklotz <ymherklotz@gmail.com>2018-02-13 19:14:33 +0000
commit49af8b16ae3f9e6579656ed10f815e9c465557d0 (patch)
tree1dff4aea6a59c466ea6a6f15ad7f5e2ac69f5b37 /yage
parente9bd903761605c7619a235edddf07c3a0b963968 (diff)
downloadYAGE-49af8b16ae3f9e6579656ed10f815e9c465557d0.tar.gz
YAGE-49af8b16ae3f9e6579656ed10f815e9c465557d0.zip
[entity] Starting work on entity system.
Diffstat (limited to 'yage')
-rw-r--r--yage/engine/component.h21
-rw-r--r--yage/entity/engine.cpp (renamed from yage/engine/engine.cpp)0
-rw-r--r--yage/entity/engine.h (renamed from yage/engine/engine.h)0
-rw-r--r--yage/entity/entity.cpp (renamed from yage/engine/entity.cpp)0
-rw-r--r--yage/entity/entity.h (renamed from yage/engine/entity.h)8
-rw-r--r--yage/entity/entitymanager.cpp (renamed from yage/engine/entitymanager.cpp)0
-rw-r--r--yage/entity/entitymanager.h (renamed from yage/engine/entitymanager.h)0
-rw-r--r--yage/entity/space.cpp (renamed from yage/engine/space.cpp)0
-rw-r--r--yage/entity/space.h (renamed from yage/engine/space.h)0
-rw-r--r--yage/entity/system.h (renamed from yage/engine/system.h)0
-rw-r--r--yage/util/noncopyable.h19
-rw-r--r--yage/yage.h3
12 files changed, 25 insertions, 26 deletions
diff --git a/yage/engine/component.h b/yage/engine/component.h
deleted file mode 100644
index 9fd85d82..00000000
--- a/yage/engine/component.h
+++ /dev/null
@@ -1,21 +0,0 @@
-/** ---------------------------------------------------------------------------
- * @file: component.h
- *
- * Copyright (c) 2017 Yann Herklotz Grave <ymherklotz@gmail.com>
- * MIT License, see LICENSE file for more details.
- * ----------------------------------------------------------------------------
- */
-
-#ifndef YAGE_ENGINE_COMPONENT_H
-#define YAGE_ENGINE_COMPONENT_H
-
-class Component
-{
-};
-
-enum class ComponentEnum {
- POSITION,
- NAX_COMPONENTS,
-};
-
-#endif
diff --git a/yage/engine/engine.cpp b/yage/entity/engine.cpp
index cf6f73b7..cf6f73b7 100644
--- a/yage/engine/engine.cpp
+++ b/yage/entity/engine.cpp
diff --git a/yage/engine/engine.h b/yage/entity/engine.h
index 147769e5..147769e5 100644
--- a/yage/engine/engine.h
+++ b/yage/entity/engine.h
diff --git a/yage/engine/entity.cpp b/yage/entity/entity.cpp
index 4d9a4b0a..4d9a4b0a 100644
--- a/yage/engine/entity.cpp
+++ b/yage/entity/entity.cpp
diff --git a/yage/engine/entity.h b/yage/entity/entity.h
index c31490e5..e6742893 100644
--- a/yage/engine/entity.h
+++ b/yage/entity/entity.h
@@ -14,6 +14,8 @@
namespace yage
{
+typedef unsigned EntityHandle;
+
class Space;
/**
@@ -32,20 +34,20 @@ public:
* This handle refers to the position of he Entity in the list that is held
* by the EntityManager, and therefore the id is enough to refer to it.
*/
- Entity(unsigned handle);
+ Entity(EntityHandle handle);
/**
* Handle getter, as the user will only interact with the id itself. The
* handle is the unique identifier that the user can use to refer to the
* entity.
*/
- unsigned getHandle() const;
+ EntityHandle getHandle() const;
private:
/**
* Entity handle for the entity manager.
*/
- unsigned handle_;
+ EntityHandle handle_;
};
} // namespace yage
diff --git a/yage/engine/entitymanager.cpp b/yage/entity/entitymanager.cpp
index 332ed9b8..332ed9b8 100644
--- a/yage/engine/entitymanager.cpp
+++ b/yage/entity/entitymanager.cpp
diff --git a/yage/engine/entitymanager.h b/yage/entity/entitymanager.h
index da125d94..da125d94 100644
--- a/yage/engine/entitymanager.h
+++ b/yage/entity/entitymanager.h
diff --git a/yage/engine/space.cpp b/yage/entity/space.cpp
index f3e343b5..f3e343b5 100644
--- a/yage/engine/space.cpp
+++ b/yage/entity/space.cpp
diff --git a/yage/engine/space.h b/yage/entity/space.h
index e69df37a..e69df37a 100644
--- a/yage/engine/space.h
+++ b/yage/entity/space.h
diff --git a/yage/engine/system.h b/yage/entity/system.h
index 9100fa17..9100fa17 100644
--- a/yage/engine/system.h
+++ b/yage/entity/system.h
diff --git a/yage/util/noncopyable.h b/yage/util/noncopyable.h
new file mode 100644
index 00000000..f1325ed1
--- /dev/null
+++ b/yage/util/noncopyable.h
@@ -0,0 +1,19 @@
+#ifndef YAGE_UTIL_NONCOPYABLE_H
+#define YAGE_UTIL_NONCOPYABLE_H
+
+namespace yage
+{
+
+class NonCopyable
+{
+protected:
+ NonCopyable() = default;
+ ~NonCopyable() = default;
+
+ NonCopyable(const NonCopyable &) = delete;
+ NonCopyable &operator=(const NonCopyable &) = delete;
+};
+
+} // namespace yage
+
+#endif
diff --git a/yage/yage.h b/yage/yage.h
index ed21d245..d5b34603 100644
--- a/yage/yage.h
+++ b/yage/yage.h
@@ -50,8 +50,7 @@
* Engine that includes a Entity Component System to organize the data and make
* it more flexible and efficient.
*/
-#include "engine/engine.h"
-
+#include "entity/engine.h"
/**
* Project namespace.
*