Flecs: API types
Description: A fast entity component system (ECS) for C & C++

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

Loading...
Searching...
No Matches
API types
C API » Core

Public API types. More...

Collaboration diagram for API types:

## Topics
| Core API Types
| Types for core API objects.
| Function types.
| Function callback types.
| Query descriptor types.
| Types used to describe queries.
| Miscellaneous types
| Types used to create entities, observers, queries and more.
| Builtin component types.
| Types that represent builtin components.

## Classes
struct | ecs_type_hooks_t
struct | ecs_type_info_t
| Type that contains component information (passed to ctors/dtors/...) More...
struct | ecs_value_t
| Utility to hold a value of a dynamic type. More...
struct | ecs_entity_desc_t
| Used with ecs_entity_init(). More...
struct | ecs_bulk_desc_t
| Used with ecs_bulk_init(). More...
struct | ecs_component_desc_t
| Used with ecs_component_init(). More...
struct | ecs_iter_t
| Iterator. More...
struct | ecs_query_desc_t
| Used with ecs_query_init(). More...
struct | ecs_observer_desc_t
| Used with ecs_observer_init(). More...
struct | ecs_event_desc_t
| Used with ecs_emit(). More...

## Macros
#define | ECS_TYPE_HOOK_DTOR ECS_CAST(ecs_flags32_t, 1 << 1)
#define | ECS_TYPE_HOOK_COPY ECS_CAST(ecs_flags32_t, 1 << 2)
#define | ECS_TYPE_HOOK_MOVE ECS_CAST(ecs_flags32_t, 1 << 3)
#define | ECS_TYPE_HOOK_COPY_CTOR ECS_CAST(ecs_flags32_t, 1 << 4)
#define | ECS_TYPE_HOOK_MOVE_CTOR ECS_CAST(ecs_flags32_t, 1 << 5)
#define | ECS_TYPE_HOOK_CTOR_MOVE_DTOR ECS_CAST(ecs_flags32_t, 1 << 6)
#define | ECS_TYPE_HOOK_MOVE_DTOR ECS_CAST(ecs_flags32_t, 1 << 7)
#define | ECS_TYPE_HOOK_CMP ECS_CAST(ecs_flags32_t, 1 << 8)
#define | ECS_TYPE_HOOK_EQUALS ECS_CAST(ecs_flags32_t, 1 << 9)
#define | ECS_TYPE_HOOK_CTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 10)
#define | ECS_TYPE_HOOK_DTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 12)
#define | ECS_TYPE_HOOK_COPY_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 13)
#define | ECS_TYPE_HOOK_MOVE_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 14)
#define | ECS_TYPE_HOOK_COPY_CTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 15)
#define | ECS_TYPE_HOOK_MOVE_CTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 16)
#define | ECS_TYPE_HOOK_CTOR_MOVE_DTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 17)
#define | ECS_TYPE_HOOK_MOVE_DTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 18)
#define | ECS_TYPE_HOOK_CMP_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 19)
#define | ECS_TYPE_HOOK_EQUALS_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 20)
#define | ECS_TYPE_HOOKS
#define | ECS_TYPE_HOOKS_ILLEGAL

## Typedefs
typedef struct ecs_value_t | ecs_value_t
| Utility to hold a value of a dynamic type.

## Detailed Description

Public API types.

## Macro Definition Documentation

## ◆ ECS_TYPE_HOOK_CMP

#define ECS_TYPE_HOOK_CMP ECS_CAST(ecs_flags32_t, 1 << 8)

Definition at line 894 of file flecs.h.

## ◆ ECS_TYPE_HOOK_CMP_ILLEGAL

#define ECS_TYPE_HOOK_CMP_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 19)

Definition at line 907 of file flecs.h.

## ◆ ECS_TYPE_HOOK_COPY

#define ECS_TYPE_HOOK_COPY ECS_CAST(ecs_flags32_t, 1 << 2)

Definition at line 888 of file flecs.h.

## ◆ ECS_TYPE_HOOK_COPY_CTOR

#define ECS_TYPE_HOOK_COPY_CTOR ECS_CAST(ecs_flags32_t, 1 << 4)

Definition at line 890 of file flecs.h.

## ◆ ECS_TYPE_HOOK_COPY_CTOR_ILLEGAL

#define ECS_TYPE_HOOK_COPY_CTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 15)

Definition at line 903 of file flecs.h.

## ◆ ECS_TYPE_HOOK_COPY_ILLEGAL

#define ECS_TYPE_HOOK_COPY_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 13)

Definition at line 901 of file flecs.h.

## ◆ ECS_TYPE_HOOK_CTOR_ILLEGAL

#define ECS_TYPE_HOOK_CTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 10)

Definition at line 899 of file flecs.h.

## ◆ ECS_TYPE_HOOK_CTOR_MOVE_DTOR

#define ECS_TYPE_HOOK_CTOR_MOVE_DTOR ECS_CAST(ecs_flags32_t, 1 << 6)

Definition at line 892 of file flecs.h.

## ◆ ECS_TYPE_HOOK_CTOR_MOVE_DTOR_ILLEGAL

#define ECS_TYPE_HOOK_CTOR_MOVE_DTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 17)

Definition at line 905 of file flecs.h.

## ◆ ECS_TYPE_HOOK_DTOR

#define ECS_TYPE_HOOK_DTOR ECS_CAST(ecs_flags32_t, 1 << 1)

Definition at line 887 of file flecs.h.

## ◆ ECS_TYPE_HOOK_DTOR_ILLEGAL

#define ECS_TYPE_HOOK_DTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 12)

Definition at line 900 of file flecs.h.

## ◆ ECS_TYPE_HOOK_EQUALS

#define ECS_TYPE_HOOK_EQUALS ECS_CAST(ecs_flags32_t, 1 << 9)

Definition at line 895 of file flecs.h.

## ◆ ECS_TYPE_HOOK_EQUALS_ILLEGAL

#define ECS_TYPE_HOOK_EQUALS_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 20)

Definition at line 908 of file flecs.h.

## ◆ ECS_TYPE_HOOK_MOVE

#define ECS_TYPE_HOOK_MOVE ECS_CAST(ecs_flags32_t, 1 << 3)

Definition at line 889 of file flecs.h.

## ◆ ECS_TYPE_HOOK_MOVE_CTOR

#define ECS_TYPE_HOOK_MOVE_CTOR ECS_CAST(ecs_flags32_t, 1 << 5)

Definition at line 891 of file flecs.h.

## ◆ ECS_TYPE_HOOK_MOVE_CTOR_ILLEGAL

#define ECS_TYPE_HOOK_MOVE_CTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 16)

Definition at line 904 of file flecs.h.

## ◆ ECS_TYPE_HOOK_MOVE_DTOR

#define ECS_TYPE_HOOK_MOVE_DTOR ECS_CAST(ecs_flags32_t, 1 << 7)

Definition at line 893 of file flecs.h.

## ◆ ECS_TYPE_HOOK_MOVE_DTOR_ILLEGAL

#define ECS_TYPE_HOOK_MOVE_DTOR_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 18)

Definition at line 906 of file flecs.h.

## ◆ ECS_TYPE_HOOK_MOVE_ILLEGAL

#define ECS_TYPE_HOOK_MOVE_ILLEGAL ECS_CAST(ecs_flags32_t, 1 << 14)

Definition at line 902 of file flecs.h.

## ◆ ECS_TYPE_HOOKS

#define ECS_TYPE_HOOKS

Value:
(ECS_TYPE_HOOK_CTOR|ECS_TYPE_HOOK_DTOR|\
ECS_TYPE_HOOK_COPY|ECS_TYPE_HOOK_MOVE|ECS_TYPE_HOOK_COPY_CTOR|\
ECS_TYPE_HOOK_MOVE_CTOR|ECS_TYPE_HOOK_CTOR_MOVE_DTOR|\
ECS_TYPE_HOOK_MOVE_DTOR|ECS_TYPE_HOOK_CMP|ECS_TYPE_HOOK_EQUALS)
ECS_TYPE_HOOK_CTOR
#define ECS_TYPE_HOOK_CTOR
Type that contains component lifecycle callbacks.
Definition flecs.h:886

Definition at line 912 of file flecs.h.

## ◆ ECS_TYPE_HOOKS_ILLEGAL

#define ECS_TYPE_HOOKS_ILLEGAL

Value:
(ECS_TYPE_HOOK_CTOR_ILLEGAL|\
ECS_TYPE_HOOK_DTOR_ILLEGAL|ECS_TYPE_HOOK_COPY_ILLEGAL|\
ECS_TYPE_HOOK_MOVE_ILLEGAL|ECS_TYPE_HOOK_COPY_CTOR_ILLEGAL|\
ECS_TYPE_HOOK_MOVE_CTOR_ILLEGAL|ECS_TYPE_HOOK_CTOR_MOVE_DTOR_ILLEGAL|\
ECS_TYPE_HOOK_MOVE_DTOR_ILLEGAL|ECS_TYPE_HOOK_CMP_ILLEGAL|\
ECS_TYPE_HOOK_EQUALS_ILLEGAL)

Definition at line 918 of file flecs.h.