45template<SerializableComponent T>
70template<SerializableComponent T>
#define REGISTER_COMPONENT_COMMANDS(T)
Definition Command.hpp:70
#define COMMAND_ID_T(Name, T)
Definition Command.hpp:49
#define COMMAND_ID(Name)
Definition Command.hpp:40
#define REGISTER_COMMAND(Name)
Definition Command.hpp:58
Definition commands.hpp:46
T m_data
Definition commands.hpp:50
AddComponentCmd(EntityHandle handle, T data)
Definition commands.hpp:52
AddComponentCmd()=default
void deserialize(Serializer &serializer) override
Definition commands.hpp:64
void serialize(Serializer &serializer) const override
Definition commands.hpp:59
EntityHandle m_handle
Definition commands.hpp:49
void execute(EntityManager &em, CommandQueue &queue) override
Definition commands.hpp:54
Definition CommandQueue.hpp:7
Definition Command.hpp:108
Definition commands.hpp:10
void execute(EntityManager &em, CommandQueue &queue) override
Definition commands.hpp:19
Entity m_created_entity
Definition commands.hpp:17
CreateEntityCmd(EntityHandle handle)
Definition commands.hpp:14
void serialize(Serializer &serializer) const override
Definition commands.hpp:23
CreateEntityCmd()=default
void deserialize(Serializer &serializer) override
Definition commands.hpp:24
EntityHandle m_handle
Definition commands.hpp:16
Definition commands.hpp:27
Entity m_entity
Definition commands.hpp:30
DestroyEntityCmd()=default
void execute(EntityManager &em, CommandQueue &) override
Definition commands.hpp:34
void deserialize(Serializer &serializer) override
Definition commands.hpp:39
DestroyEntityCmd(Entity e)
Definition commands.hpp:32
void serialize(Serializer &serializer) const override
Definition commands.hpp:35
Definition EntityManager.hpp:83
Entity create()
Definition EntityManager.inl:192
T * add_component(Entity e, Args &&... args)
bool try_remove_component(Entity e)
void destroy(Entity e)
Definition EntityManager.inl:206
Definition commands.hpp:71
RemoveComponentCmd()=default
void execute(EntityManager &em, CommandQueue &queue) override
Definition commands.hpp:78
EntityHandle m_handle
Definition commands.hpp:74
void deserialize(Serializer &serializer) override
Definition commands.hpp:83
RemoveComponentCmd(EntityHandle handle)
Definition commands.hpp:76
void serialize(Serializer &serializer) const override
Definition commands.hpp:82
Definition serialization.hpp:36
Definition Application.hpp:28
Definition components.hpp:22
static void deserialize(T &component, Serializer &s)=delete
static void serialize(const T &component, Serializer &s)=delete
Definition components.hpp:70
Definition Command.hpp:97
u32 id
Definition Command.hpp:98
u32 index
Definition Entity.hpp:19
u32 generation
Definition Entity.hpp:20
Definition components.hpp:41
std::uint32_t u32
Definition types.hpp:15
constexpr T g_type_max
Definition types.hpp:21