![]() |
Flecs v4.0
A fast entity component system (ECS) for C & C++
|
System module. More...
Go to the source code of this file.
Classes | |
| struct | EcsTickSource |
| Component used to provide a tick source to systems. More... | |
| struct | ecs_system_desc_t |
| Use with ecs_system_init() to create or update a system. More... | |
| struct | ecs_system_t |
| System type, get with ecs_system_get() More... | |
Macros | |
| #define | FLECS_SYSTEM_H |
| #define | ECS_SYSTEM_DECLARE(id) |
| Forward declare a system. | |
| #define | ECS_SYSTEM_DEFINE(world, id_, phase, ...) |
| Define a forward declared system. | |
| #define | ECS_SYSTEM(world, id, phase, ...) |
| Declare & define a system. | |
| #define | ecs_system(world, ...) |
| Shorthand for creating a system with ecs_system_init(). | |
Typedefs | |
| typedef struct EcsTickSource | EcsTickSource |
| Component used to provide a tick source to systems. | |
| typedef struct ecs_system_desc_t | ecs_system_desc_t |
| Use with ecs_system_init() to create or update a system. | |
| typedef struct ecs_system_t | ecs_system_t |
| System type, get with ecs_system_get() | |
Functions | |
| FLECS_API ecs_entity_t | ecs_system_init (ecs_world_t *world, const ecs_system_desc_t *desc) |
| Create a system. | |
| FLECS_API const ecs_system_t * | ecs_system_get (const ecs_world_t *world, ecs_entity_t system) |
| Get system object. | |
| FLECS_API ecs_entity_t | ecs_run (ecs_world_t *world, ecs_entity_t system, ecs_ftime_t delta_time, void *param) |
| Run a specific system manually. | |
| FLECS_API ecs_entity_t | ecs_run_worker (ecs_world_t *world, ecs_entity_t system, int32_t stage_current, int32_t stage_count, ecs_ftime_t delta_time, void *param) |
| Same as ecs_run(), but subdivides entities across number of provided stages. | |
| FLECS_API void | FlecsSystemImport (ecs_world_t *world) |
| System module import function. | |
System module.
The system module allows for creating and running systems. A system is a query in combination with a callback function. In addition systems have support for time management and can be monitored by the stats addon.
Definition in file system.h.