Flecs: include/flecs/addons/system.h File 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
system.h File Reference

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.

## Detailed Description

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.