summaryrefslogtreecommitdiff
path: root/src/components.hpp
diff options
context:
space:
mode:
authorJonathan Bradley <jcb@pikum.xyz>2023-12-11 14:46:50 -0500
committerJonathan Bradley <jcb@pikum.xyz>2023-12-11 18:56:57 -0500
commitba250cc496b2e617823ff8111ef463b6adea27f4 (patch)
treedc926851da01b970aca827d6c6ca84b87a7432fa /src/components.hpp
parent8047197b62894cb1f7bb6a6871870e4b91fde992 (diff)
replace handles with union struct
Diffstat (limited to 'src/components.hpp')
-rw-r--r--src/components.hpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/components.hpp b/src/components.hpp
index 4223845..e99481e 100644
--- a/src/components.hpp
+++ b/src/components.hpp
@@ -11,9 +11,13 @@
const uint64_t ECS_UNSET_VAL = 0xFFFFFFFFFFFFFFFF;
-TypeSafeInt_H(EntityHandle, uint64_t, ECS_UNSET_VAL);
-TypeSafeInt_H(GrBindsHandle, uint64_t, ECS_UNSET_VAL);
-TypeSafeInt_H(InstanceHandle, uint64_t, ECS_UNSET_VAL);
+struct EntityHandle : public PkeHandle { };
+struct GrBindsHandle : public PkeHandle { };
+struct InstanceHandle : public PkeHandle { };
+
+constexpr EntityHandle EntityHandle_MAX = EntityHandle{};
+constexpr GrBindsHandle GrBindsHandle_MAX = GrBindsHandle{};
+constexpr InstanceHandle InstanceHandle_MAX = InstanceHandle{};
struct Entity {
EntityHandle handle = EntityHandle_MAX;