Flecs v3.2
A fast entity component system (ECS) for C & C++
Loading...
Searching...
No Matches
metrics.h File Reference

Metrics module. More...

Go to the source code of this file.

Classes

struct  EcsMetricValue
 
struct  EcsMetricSource
 
struct  ecs_metric_desc_t
 

Macros

#define ecs_metric(world, ...)    ecs_metric_init(world, &(ecs_metric_desc_t) __VA_ARGS__ )
 Shorthand for creating a metric with ecs_metric_init().
 

Typedefs

typedef struct EcsMetricValue EcsMetricValue
 
typedef struct EcsMetricSource EcsMetricSource
 
typedef struct ecs_metric_desc_t ecs_metric_desc_t
 

Functions

FLECS_API ECS_COMPONENT_DECLARE (FlecsMetrics)
 
FLECS_API ECS_TAG_DECLARE (EcsMetric)
 Tag added to metrics, and used as first element of metric kind pair.
 
FLECS_API ECS_TAG_DECLARE (EcsCounter)
 Metric that has monotonically increasing value.
 
FLECS_API ECS_TAG_DECLARE (EcsCounterIncrement)
 Counter metric that is auto-incremented by source value.
 
FLECS_API ECS_TAG_DECLARE (EcsCounterId)
 Counter metric that counts the number of entities with an id.
 
FLECS_API ECS_TAG_DECLARE (EcsGauge)
 Metric that represents current value.
 
FLECS_API ECS_TAG_DECLARE (EcsMetricInstance)
 Tag added to metric instances.
 
FLECS_API ECS_COMPONENT_DECLARE (EcsMetricValue)
 Component with metric instance value.
 
FLECS_API ECS_COMPONENT_DECLARE (EcsMetricSource)
 Component with entity source of metric instance.
 
FLECS_API ecs_entity_t ecs_metric_init (ecs_world_t *world, const ecs_metric_desc_t *desc)
 Create a new metric.
 
FLECS_API void FlecsMetricsImport (ecs_world_t *world)
 

Detailed Description

Metrics module.

The metrics module extracts metrics from components and makes them available through a unified component interface.

Definition in file metrics.h.