Struct ecs_world_info_t


#include <include/flecs.h>

typedef struct ecs_world_info_t


Type that contains information about the world.


Lines 852-905 in include/flecs.h.

typedef struct ecs_world_info_t {
    ecs_entity_t last_component_id;   /* Last issued component entity id */
    ecs_entity_t last_id;             /* Last issued entity id */
    ecs_entity_t min_id;              /* First allowed entity id */
    ecs_entity_t max_id;              /* Last allowed entity id */

    ecs_ftime_t delta_time_raw;       /* Raw delta time (no time scaling) */
    ecs_ftime_t delta_time;           /* Time passed to or computed by ecs_progress */
    ecs_ftime_t time_scale;           /* Time scale applied to delta_time */
    ecs_ftime_t target_fps;           /* Target fps */
    ecs_ftime_t frame_time_total;     /* Total time spent processing a frame */
    float system_time_total;          /* Total time spent in systems */
    float merge_time_total;           /* Total time spent in merges */
    ecs_ftime_t world_time_total;     /* Time elapsed in simulation */
    ecs_ftime_t world_time_total_raw; /* Time elapsed in simulation (no scaling) */

    int32_t frame_count_total;        /* Total number of frames */
    int32_t merge_count_total;        /* Total number of merges */

    int32_t id_create_total;          /* Total number of times a new id was created */
    int32_t id_delete_total;          /* Total number of times an id was deleted */
    int32_t table_create_total;       /* Total number of times a table was created */
    int32_t table_delete_total;       /* Total number of times a table was deleted */
    int32_t pipeline_build_count_total; /* Total number of pipeline builds */
    int32_t systems_ran_frame;  /* Total number of systems ran in last frame */

    int32_t id_count;                 /* Number of ids in the world (excluding wildcards) */
    int32_t tag_id_count;             /* Number of tag (no data) ids in the world */
    int32_t component_id_count;       /* Number of component (data) ids in the world */
    int32_t pair_id_count;            /* Number of pair ids in the world */
    int32_t wildcard_id_count;        /* Number of wildcard ids */

    int32_t table_count;              /* Number of tables */
    int32_t tag_table_count;          /* Number of tag-only tables */
    int32_t trivial_table_count;      /* Number of tables with trivial components (no lifecycle callbacks) */
    int32_t empty_table_count;        /* Number of tables without entities */
    int32_t table_record_count;       /* Total number of table records (entries in table caches) */
    int32_t table_storage_count;      /* Total number of table storages */

    /* -- Defered operation counts -- */
    int32_t new_count;
    int32_t bulk_new_count;
    int32_t delete_count;
    int32_t clear_count;
    int32_t add_count;
    int32_t remove_count;
    int32_t set_count;
    int32_t discard_count;

    const char *name_prefix;          /* Value set by ecs_set_name_prefix. Used
                                       * to remove library prefixes of symbol
                                       * names (such as Ecs, ecs_) when 
                                       * registering them as names. */
} ecs_world_info_t;