Struct ecs_filter_desc_t

Synopsis

#include <include/flecs.h>

typedef struct ecs_filter_desc_t

Description

Used with ecs_filter_init.

Mentioned in

Source

Lines 434-454 in include/flecs.h.

typedef struct ecs_filter_desc_t {
    /* Terms of the filter. If a filter has more terms than 
     * ECS_TERM_CACHE_SIZE use terms_buffer */
    ecs_term_t terms[ECS_TERM_DESC_CACHE_SIZE];

    /* For filters with lots of terms an outside array can be provided. */
    ecs_term_t *terms_buffer;
    int32_t terms_buffer_count;

    /* Use default substitution rules where appropriate. When enabled, the
     * filter will determine based on whether the predicate is transitive and/or
     * final whether IsA substitution is required. */
    bool substitute_default;

    /* Filter expression. Should not be set at the same time as terms array */
    const char *expr;

    /* Optional name of filter, used for debugging. If a filter is created for
     * a system, the provided name should match the system name. */
    const char *name;
} ecs_filter_desc_t;