Flecs v3.2
A fast entity component system (ECS) for C & C++
|
Statistics addon. More...
Go to the source code of this file.
Classes | |
struct | ecs_gauge_t |
Simple value that indicates current state. More... | |
struct | ecs_counter_t |
Monotonically increasing counter. More... | |
union | ecs_metric_t |
Make all metrics the same size, so we can iterate over fields. More... | |
struct | ecs_world_stats_t |
struct | ecs_query_stats_t |
Statistics for a single query (use ecs_query_stats_get()) More... | |
struct | ecs_system_stats_t |
Statistics for a single system (use ecs_system_stats_get()) More... | |
struct | ecs_sync_stats_t |
Statistics for sync point. More... | |
struct | ecs_pipeline_stats_t |
Statistics for all systems in a pipeline. More... | |
Macros | |
#define | ECS_STAT_WINDOW (60) |
Typedefs | |
typedef struct ecs_gauge_t | ecs_gauge_t |
Simple value that indicates current state. | |
typedef struct ecs_counter_t | ecs_counter_t |
Monotonically increasing counter. | |
typedef union ecs_metric_t | ecs_metric_t |
Make all metrics the same size, so we can iterate over fields. | |
typedef struct ecs_world_stats_t | ecs_world_stats_t |
typedef struct ecs_query_stats_t | ecs_query_stats_t |
Statistics for a single query (use ecs_query_stats_get()) | |
typedef struct ecs_system_stats_t | ecs_system_stats_t |
Statistics for a single system (use ecs_system_stats_get()) | |
typedef struct ecs_sync_stats_t | ecs_sync_stats_t |
Statistics for sync point. | |
typedef struct ecs_pipeline_stats_t | ecs_pipeline_stats_t |
Statistics for all systems in a pipeline. | |
Functions | |
FLECS_API void | ecs_world_stats_get (const ecs_world_t *world, ecs_world_stats_t *stats) |
Get world statistics. | |
FLECS_API void | ecs_world_stats_reduce (ecs_world_stats_t *dst, const ecs_world_stats_t *src) |
Reduce source measurement window into single destination measurement. | |
FLECS_API void | ecs_world_stats_reduce_last (ecs_world_stats_t *stats, const ecs_world_stats_t *old, int32_t count) |
Reduce last measurement into previous measurement, restore old value. | |
FLECS_API void | ecs_world_stats_repeat_last (ecs_world_stats_t *stats) |
Repeat last measurement. | |
FLECS_API void | ecs_world_stats_copy_last (ecs_world_stats_t *dst, const ecs_world_stats_t *src) |
Copy last measurement from source to destination. | |
FLECS_API void | ecs_world_stats_log (const ecs_world_t *world, const ecs_world_stats_t *stats) |
FLECS_API void | ecs_query_stats_get (const ecs_world_t *world, const ecs_query_t *query, ecs_query_stats_t *stats) |
Get query statistics. | |
FLECS_API void | ecs_query_stats_reduce (ecs_query_stats_t *dst, const ecs_query_stats_t *src) |
Reduce source measurement window into single destination measurement. | |
FLECS_API void | ecs_query_stats_reduce_last (ecs_query_stats_t *stats, const ecs_query_stats_t *old, int32_t count) |
Reduce last measurement into previous measurement, restore old value. | |
FLECS_API void | ecs_query_stats_repeat_last (ecs_query_stats_t *stats) |
Repeat last measurement. | |
FLECS_API void | ecs_query_stats_copy_last (ecs_query_stats_t *dst, const ecs_query_stats_t *src) |
Copy last measurement from source to destination. | |
FLECS_API bool | ecs_system_stats_get (const ecs_world_t *world, ecs_entity_t system, ecs_system_stats_t *stats) |
Get system statistics. | |
FLECS_API void | ecs_system_stats_reduce (ecs_system_stats_t *dst, const ecs_system_stats_t *src) |
Reduce source measurement window into single destination measurement. | |
FLECS_API void | ecs_system_stats_reduce_last (ecs_system_stats_t *stats, const ecs_system_stats_t *old, int32_t count) |
Reduce last measurement into previous measurement, restore old value. | |
FLECS_API void | ecs_system_stats_repeat_last (ecs_system_stats_t *stats) |
Repeat last measurement. | |
FLECS_API void | ecs_system_stats_copy_last (ecs_system_stats_t *dst, const ecs_system_stats_t *src) |
Copy last measurement from source to destination. | |
FLECS_API bool | ecs_pipeline_stats_get (ecs_world_t *world, ecs_entity_t pipeline, ecs_pipeline_stats_t *stats) |
Get pipeline statistics. | |
FLECS_API void | ecs_pipeline_stats_fini (ecs_pipeline_stats_t *stats) |
Free pipeline stats. | |
FLECS_API void | ecs_pipeline_stats_reduce (ecs_pipeline_stats_t *dst, const ecs_pipeline_stats_t *src) |
Reduce source measurement window into single destination measurement. | |
FLECS_API void | ecs_pipeline_stats_reduce_last (ecs_pipeline_stats_t *stats, const ecs_pipeline_stats_t *old, int32_t count) |
Reduce last measurement into previous measurement, restore old value. | |
FLECS_API void | ecs_pipeline_stats_repeat_last (ecs_pipeline_stats_t *stats) |
Repeat last measurement. | |
FLECS_API void | ecs_pipeline_stats_copy_last (ecs_pipeline_stats_t *dst, const ecs_pipeline_stats_t *src) |
Copy last measurement to destination. | |
FLECS_API void | ecs_metric_reduce (ecs_metric_t *dst, const ecs_metric_t *src, int32_t t_dst, int32_t t_src) |
Reduce all measurements from a window into a single measurement. | |
FLECS_API void | ecs_metric_reduce_last (ecs_metric_t *m, int32_t t, int32_t count) |
Reduce last measurement into previous measurement. | |
FLECS_API void | ecs_metric_copy (ecs_metric_t *m, int32_t dst, int32_t src) |
Copy measurement. | |
Statistics addon.
The statistics addon enables an application to obtain detailed metrics about the storage, systems and operations of a world.
Definition in file stats.h.