![]() |
Flecs v3.2
A fast entity component system (ECS) for C & C++
|
Defines for customizing compile time features. More...
Macros | |
#define | ecs_float_t float |
Customizable precision for floating point operations. More... | |
#define | ecs_ftime_t ecs_float_t |
Customizable precision for scalar time values. More... | |
#define | FLECS_NO_DEPRECATED_WARNINGS |
disables deprecated warnings More... | |
#define | FLECS_DEBUG |
Used for input parameter checking and cheap sanity checks. More... | |
#define | FLECS_CPP |
C++ API. More... | |
#define | FLECS_MODULE |
Module support. More... | |
#define | FLECS_PARSER |
String parser for queries. More... | |
#define | FLECS_PLECS |
ECS data definition format. More... | |
#define | FLECS_RULES |
Constraint solver for advanced queries. More... | |
#define | FLECS_SNAPSHOT |
Snapshot & restore ECS data. More... | |
#define | FLECS_STATS |
Access runtime statistics. More... | |
#define | FLECS_MONITOR |
Track runtime statistics periodically. More... | |
#define | FLECS_METRICS |
Expose component data as statistics. More... | |
#define | FLECS_ALERTS |
Monitor conditions for errors. More... | |
#define | FLECS_SYSTEM |
System support. More... | |
#define | FLECS_PIPELINE |
Pipeline support. More... | |
#define | FLECS_TIMER |
Timer support. More... | |
#define | FLECS_META |
Reflection support. More... | |
#define | FLECS_META_C |
Utilities for populating reflection data. More... | |
#define | FLECS_UNITS |
Builtin standard units. More... | |
#define | FLECS_EXPR |
Parsing strings to/from component values. More... | |
#define | FLECS_JSON |
Parsing JSON to/from component values. More... | |
#define | FLECS_DOC |
Document entities & components. More... | |
#define | FLECS_COREDOC |
Documentation for core entities & components. More... | |
#define | FLECS_LOG |
When enabled ECS provides more detailed logs. More... | |
#define | FLECS_APP |
Application addon. More... | |
#define | FLECS_OS_API_IMPL |
Default implementation for OS API. More... | |
#define | FLECS_HTTP |
Tiny HTTP server for connecting to remote UI. More... | |
#define | FLECS_REST |
REST API for querying application data. More... | |
#define | FLECS_HI_COMPONENT_ID (256) |
This constant can be used to balance between performance and memory utilization. More... | |
#define | FLECS_HI_ID_RECORD_ID (1024) |
This constant can be used to balance between performance and memory utilization. More... | |
#define | FLECS_SPARSE_PAGE_BITS (12) |
This constant is used to determine the number of bits of an id that is used to determine the page index when used with a sparse set. More... | |
#define | FLECS_ENTITY_PAGE_BITS (12) |
Same as FLECS_SPARSE_PAGE_BITS, but for the entity index. More... | |
#define | FLECS_ID_DESC_MAX (32) |
Maximum number of ids to add ecs_entity_desc_t / ecs_bulk_desc_t. More... | |
#define | FLECS_TERM_DESC_MAX (16) |
Maximum number of terms in ecs_filter_desc_t. More... | |
#define | FLECS_EVENT_DESC_MAX (8) |
Maximum number of events in ecs_observer_desc_t. More... | |
#define | FLECS_VARIABLE_COUNT_MAX (64) |
Maximum number of query variables per query. More... | |
#define | FLECS_QUERY_SCOPE_NESTING_MAX (8) |
Maximum nesting depth of query scopes. More... | |
Defines for customizing compile time features.
#define ecs_float_t float |
#define ecs_ftime_t ecs_float_t |
#define FLECS_COREDOC |
#define FLECS_DEBUG |
#define FLECS_ENTITY_PAGE_BITS (12) |
#define FLECS_EVENT_DESC_MAX (8) |
Maximum number of events in ecs_observer_desc_t.
#define FLECS_EXPR |
#define FLECS_HI_COMPONENT_ID (256) |
This constant can be used to balance between performance and memory utilization.
The constant is used in two ways:
Increasing this value increases the size of the lookup array, which allows fast table traversal, which improves performance of ECS add/remove operations. Component ids that fall outside of this range use a regular map lookup, which is slower but more memory efficient.
#define FLECS_HI_ID_RECORD_ID (1024) |
This constant can be used to balance between performance and memory utilization.
The constant is used to determine the size of the id record lookup array. Id values that fall outside of this range use a regular map lookup, which is slower but more memory efficient.
#define FLECS_HTTP |
#define FLECS_ID_DESC_MAX (32) |
Maximum number of ids to add ecs_entity_desc_t / ecs_bulk_desc_t.
#define FLECS_LOG |
#define FLECS_META_C |
#define FLECS_MONITOR |
#define FLECS_NO_DEPRECATED_WARNINGS |
#define FLECS_OS_API_IMPL |
#define FLECS_QUERY_SCOPE_NESTING_MAX (8) |
#define FLECS_SPARSE_PAGE_BITS (12) |
This constant is used to determine the number of bits of an id that is used to determine the page index when used with a sparse set.
The number of bits determines the page size, which is (1 << bits). Lower values decrease memory utilization, at the cost of more allocations.
#define FLECS_TERM_DESC_MAX (16) |
Maximum number of terms in ecs_filter_desc_t.