Unravel Engine C++ Reference
Loading...
Searching...
No Matches
id_component.h
Go to the documentation of this file.
1
#pragma once
2
#include <engine/engine_export.h>
3
4
#include <string>
5
#include <
uuid/uuid.h
>
6
7
namespace
unravel
8
{
9
template
<
typename
T>
10
struct
id_component_base
11
{
12
void
regenerate_id
()
13
{
14
id
=
generate_uuid
();
15
}
16
17
void
generate_if_nil
()
18
{
19
if
(
id
.is_nil())
20
{
21
id
=
generate_uuid
();
22
}
23
}
27
hpp::uuid
id
;
28
};
33
struct
id_component
:
public
id_component_base
<id_component>
34
{
35
36
};
37
38
}
// namespace unravel
unravel
Definition
crash.cpp:21
unravel::generate_uuid
auto generate_uuid() -> hpp::uuid
Definition
uuid.cpp:25
unravel::id_component_base
Definition
id_component.h:11
unravel::id_component_base::regenerate_id
void regenerate_id()
Definition
id_component.h:12
unravel::id_component_base::id
hpp::uuid id
The unique identifier for the entity.
Definition
id_component.h:27
unravel::id_component_base::generate_if_nil
void generate_if_nil()
Definition
id_component.h:17
unravel::id_component
Component that provides a unique identifier (UUID) for an entity.
Definition
id_component.h:34
uuid.h
engine
engine
ecs
components
id_component.h
Generated by
1.12.0