17 desc.
add[0] = ecs_pair(flecs::ChildOf, m_id);
19 ecs_assert(eid != 0, ECS_INTERNAL_ERROR, NULL);
26 m.offset =
static_cast<int32_t
>(offset);
33untyped_component&
member(flecs::entity_t type_id, flecs::entity_t unit,
const char *name, int32_t count = 0,
size_t offset = 0) {
36 desc.
add[0] = ecs_pair(flecs::ChildOf, m_id);
38 ecs_assert(eid != 0, ECS_INTERNAL_ERROR, NULL);
46 m.offset =
static_cast<int32_t
>(offset);
53template <
typename MemberType>
56 return member(
type_id, name, count, offset);
60template <
typename MemberType>
63 return member(
type_id, unit, name, count, offset);
67template <
typename MemberType,
typename UnitType>
71 return member(
type_id, unit_id, name, count, offset);
80 desc.
add[0] = ecs_pair(flecs::ChildOf, m_id);
82 ecs_assert(eid != 0, ECS_INTERNAL_ERROR, NULL);
85 ecs_pair(flecs::Constant, flecs::I32),
sizeof(int32_t),
97 desc.
add[0] = ecs_pair(flecs::ChildOf, m_id);
99 ecs_assert(eid != 0, ECS_INTERNAL_ERROR, NULL);
102 ecs_pair(flecs::Constant, flecs::U32),
sizeof(uint32_t),
flecs::entity_t type_id()
Get id currently assigned to component.
void ecs_add_id(ecs_world_t *world, ecs_entity_t entity, ecs_id_t id)
Add a (component) id to an entity.
#define ecs_assert(condition, error_code,...)
Assert.
ecs_id_t ecs_entity_t
An entity identifier.
ecs_entity_t ecs_entity_init(ecs_world_t *world, const ecs_entity_desc_t *desc)
Find or create an entity.
ecs_entity_t ecs_set_id(ecs_world_t *world, ecs_entity_t entity, ecs_id_t id, size_t size, const void *ptr)
Set the value of a component.
Used with ecs_entity_init.
const char * name
Name of the entity.
ecs_id_t add[(32)]
Array of ids to add to the new or existing entity.