Flecs: ecs_type_hooks_t Struct Reference
Description: A fast entity component system (ECS) for C & C++

| Flecs v4.1 A fast entity component system (ECS) for C & C++

Loading...
Searching...
No Matches
ecs_type_hooks_t Struct Reference
C API » Core » API types

## Public Attributes
ecs_xtor_t | ctor
| ctor.
ecs_xtor_t | dtor
| dtor.
ecs_copy_t | copy
| copy assignment.
ecs_move_t | move
| move assignment.
ecs_copy_t | copy_ctor
| Ctor + copy.
ecs_move_t | move_ctor
| Ctor + move.
ecs_move_t | ctor_move_dtor
| Ctor + move + dtor (or move_ctor + dtor).
ecs_move_t | move_dtor
| Move + dtor.
ecs_cmp_t | cmp
| Compare hook.
ecs_equals_t | equals
| Equals hook.
ecs_flags32_t | flags
| Hook flags.
ecs_iter_action_t | on_add
| Callback that is invoked when an instance of a component is added.
ecs_iter_action_t | on_set
| Callback that is invoked when an instance of the component is set.
ecs_iter_action_t | on_remove
| Callback that is invoked when an instance of the component is removed.
ecs_iter_action_t | on_replace
| Callback that is invoked with the existing and new value before the value is assigned.
void * | ctx
| User-defined context.
void * | binding_ctx
| Language binding context.
void * | lifecycle_ctx
| Component lifecycle context (see meta addon).
ecs_ctx_free_t | ctx_free
| Callback to free ctx.
ecs_ctx_free_t | binding_ctx_free
| Callback to free binding_ctx.
ecs_ctx_free_t | lifecycle_ctx_free
| Callback to free lifecycle_ctx.

## Detailed Description

Definition at line 954 of file flecs.h.

## Member Data Documentation

## ◆ binding_ctx

void* ecs_type_hooks_t::binding_ctx

Language binding context.

Definition at line 1011 of file flecs.h.

## ◆ binding_ctx_free

ecs_ctx_free_t ecs_type_hooks_t::binding_ctx_free

Callback to free binding_ctx.

Definition at line 1015 of file flecs.h.

## ◆ cmp

ecs_cmp_t ecs_type_hooks_t::cmp

Compare hook.

Definition at line 979 of file flecs.h.

## ◆ copy

ecs_copy_t ecs_type_hooks_t::copy

copy assignment.

Definition at line 957 of file flecs.h.

## ◆ copy_ctor

ecs_copy_t ecs_type_hooks_t::copy_ctor

Ctor + copy.

Definition at line 961 of file flecs.h.

## ◆ ctor

ecs_xtor_t ecs_type_hooks_t::ctor

ctor.

Definition at line 955 of file flecs.h.

## ◆ ctor_move_dtor

ecs_move_t ecs_type_hooks_t::ctor_move_dtor

Ctor + move + dtor (or move_ctor + dtor).

This combination is typically used when a component is moved from one location to a new location, like when it is moved to a new table. If not set explicitly, it will be derived from other callbacks.

Definition at line 970 of file flecs.h.

## ◆ ctx

void* ecs_type_hooks_t::ctx

User-defined context.

Definition at line 1010 of file flecs.h.

## ◆ ctx_free

ecs_ctx_free_t ecs_type_hooks_t::ctx_free

Callback to free ctx.

Definition at line 1014 of file flecs.h.

## ◆ dtor

ecs_xtor_t ecs_type_hooks_t::dtor

dtor.

Definition at line 956 of file flecs.h.

## ◆ equals

ecs_equals_t ecs_type_hooks_t::equals

Equals hook.

Definition at line 982 of file flecs.h.

## ◆ flags

ecs_flags32_t ecs_type_hooks_t::flags

Hook flags.

Indicates which hooks are set for the type, and which hooks are illegal. When an ILLEGAL flag is set when calling ecs_set_hooks(), a hook callback will be set that panics when called.

Definition at line 988 of file flecs.h.

## ◆ lifecycle_ctx

void* ecs_type_hooks_t::lifecycle_ctx

Component lifecycle context (see meta addon).

Definition at line 1012 of file flecs.h.

## ◆ lifecycle_ctx_free

ecs_ctx_free_t ecs_type_hooks_t::lifecycle_ctx_free

Callback to free lifecycle_ctx.

Definition at line 1016 of file flecs.h.

## ◆ move

ecs_move_t ecs_type_hooks_t::move

move assignment.

Definition at line 958 of file flecs.h.

## ◆ move_ctor

ecs_move_t ecs_type_hooks_t::move_ctor

Ctor + move.

Definition at line 964 of file flecs.h.

## ◆ move_dtor

ecs_move_t ecs_type_hooks_t::move_dtor

Move + dtor.

This combination is typically used when a component is moved from one location to an existing location, like what happens during a remove. If not set explicitly, it will be derived from other callbacks.

Definition at line 976 of file flecs.h.

## ◆ on_add

ecs_iter_action_t ecs_type_hooks_t::on_add

Callback that is invoked when an instance of a component is added.

This callback is invoked before observers are invoked.

Definition at line 992 of file flecs.h.

## ◆ on_remove

ecs_iter_action_t ecs_type_hooks_t::on_remove

Callback that is invoked when an instance of the component is removed.

This callback is invoked after the observers are invoked, and before the destructor is invoked.

Definition at line 1002 of file flecs.h.

## ◆ on_replace

ecs_iter_action_t ecs_type_hooks_t::on_replace

Callback that is invoked with the existing and new value before the value is assigned.

Invoked after on_add and before on_set. Registering an on_replace hook prevents using operations that return a mutable pointer to the component, like get_mut(), ensure(), and emplace().

Definition at line 1008 of file flecs.h.

## ◆ on_set

ecs_iter_action_t ecs_type_hooks_t::on_set

Callback that is invoked when an instance of the component is set.

This callback is invoked before observers are invoked, and enables the component to respond to changes on itself before others can.

Definition at line 997 of file flecs.h.

The documentation for this struct was generated from the following file:

- include/flecs.h