![]() |
Flecs v4.1
A fast entity component system (ECS) for C & C++
|
Pipeline builder interface. More...
#include <builder_i.hpp>
Public Member Functions | |
| pipeline_builder_i (ecs_pipeline_desc_t *desc, int32_t term_index=0) | |
| Construct from a pipeline descriptor. | |
Public Member Functions inherited from flecs::query_builder_i< Base > | |
| query_builder_i (ecs_query_desc_t *desc, int32_t term_index=0) | |
| Construct from a query descriptor. | |
| Base & | query_flags (ecs_flags32_t flags) |
| Set the query flags. | |
| Base & | cache_kind (query_cache_kind_t kind) |
| Set the cache kind for the query. | |
| Base & | cached () |
| Enable auto-caching for the query. | |
| Base & | detect_changes () |
| Enable change detection for the query. | |
| Base & | expr (const char *expr) |
| Set the query expression string. | |
| Base & | scope_open () |
| Open a query scope. | |
| Base & | scope_close () |
| Close a query scope. | |
| Base & | term () |
| Set the current term to the next one in the term list. | |
| Base & | term_at () |
| Set the current term to the one with the provided type. | |
| Base & | term_at (int32_t term_index) |
| Set the current term to the one at the provided index. | |
| Base & | term_at (int32_t term_index) |
| Set the current term to the one at the provided index and assert that the type matches. | |
| Base & | order_by (int(*compare)(flecs::entity_t, const T *, flecs::entity_t, const T *)) |
| Sort the output of a query. | |
| Base & | order_by (flecs::entity_t component, int(*compare)(flecs::entity_t, const void *, flecs::entity_t, const void *)) |
| Sort the output of a query. | |
| Base & | group_by (uint64_t(*group_by_action)(flecs::world_t *, flecs::table_t *table, flecs::id_t id, void *ctx)) |
| Group and sort matched tables. | |
| Base & | group_by (flecs::entity_t component, uint64_t(*group_by_action)(flecs::world_t *, flecs::table_t *table, flecs::id_t id, void *ctx)) |
| Group and sort matched tables. | |
| Base & | group_by () |
| Group and sort matched tables. | |
| Base & | group_by (flecs::entity_t component) |
| Group and sort matched tables. | |
| Base & | group_by_ctx (void *ctx, ecs_ctx_free_t ctx_free=nullptr) |
| Specify context to be passed to the group_by() function. | |
| Base & | on_group_create (ecs_group_create_action_t action) |
| Specify the on_group_create() action. | |
| Base & | on_group_delete (ecs_group_delete_action_t action) |
| Specify the on_group_delete() action. | |
| Base & | with () |
| Add a term for the specified type. | |
| Base & | with (id_t component_id) |
| Add a term for the specified component ID. | |
| Base & | with (const char *component_name) |
| Add a term for the specified component name. | |
| Base & | with (const char *first, const char *second) |
| Add a term for a pair specified by name. | |
| Base & | with (entity_t first, entity_t second) |
| Add a term for a pair specified by entity IDs. | |
| Base & | with (entity_t first, const char *second) |
| Add a term for a pair with an entity ID first and a name second. | |
| Base & | with (const char *first, entity_t second) |
| Add a term for a pair with a name first and an entity ID second. | |
| Base & | with (entity_t second) |
| Add a term for a pair with type First and an entity ID second. | |
| Base & | with (const char *second) |
| Add a term for a pair with type First and name second. | |
| Base & | with () |
| Add a term for a pair with types First and Second. | |
| Base & | with (E value) |
| Add a term for an enum value. | |
| Base & | with (flecs::term &term) |
| Add a term from an existing term reference. | |
| Base & | with (flecs::term &&term) |
| Add a term from an existing term (move). | |
| Base & | without (Args &&... args) |
| Add a negated term. | |
| Base & | without (Args &&... args) |
| Add a negated term for the specified type. | |
| Base & | without () |
| Add a negated term for a pair of types. | |
| Base & | write () |
| Short for inout_stage(flecs::Out). | |
| Base & | write (Args &&... args) |
| Add a write term with the specified arguments. | |
| Base & | write (Args &&... args) |
| Add a write term for the specified type. | |
| Base & | write () |
| Add a write term for a pair of types. | |
| Base & | read () |
| Short for inout_stage(flecs::In). | |
| Base & | read (Args &&... args) |
| Add a read term with the specified arguments. | |
| Base & | read (Args &&... args) |
| Add a read term for the specified type. | |
| Base & | read () |
| Add a read term for a pair of types. | |
Public Member Functions inherited from flecs::term_builder_i< Base > | |
| term_builder_i () | |
| Default constructor. | |
| term_builder_i (ecs_term_t *term_ptr) | |
| Construct from a term pointer. | |
| Base & | term (id_t id) |
| Set the term ID. | |
| Base & | src () |
| Call prior to setting values for the src identifier. | |
| Base & | first () |
| Call prior to setting values for the first identifier. | |
| Base & | second () |
| Call prior to setting values for the second identifier. | |
| Base & | src (flecs::entity_t id) |
| Select the src identifier, initialize it with an entity ID. | |
| template<typename T > | |
| Base & | src () |
| Select the src identifier, initialize it with the ID associated with the type. | |
| Base & | src (const char *name) |
| Select the src identifier, initialize it with a name. | |
| Base & | first (flecs::entity_t id) |
| Select the first identifier, initialize it with an entity ID. | |
| template<typename T > | |
| Base & | first () |
| Select the first identifier, initialize it with the ID associated with the type. | |
| Base & | first (const char *name) |
| Select the first identifier, initialize it with a name. | |
| Base & | second (flecs::entity_t id) |
| Select the second identifier, initialize it with an entity ID. | |
| template<typename T > | |
| Base & | second () |
| Select the second identifier, initialize it with the ID associated with the type. | |
| Base & | second (const char *name) |
| Select the second identifier, initialize it with a name. | |
| Base & | up (flecs::entity_t trav=0) |
| The up flag indicates that the term identifier may be substituted by traversing a relationship upwards. | |
| template<typename Trav > | |
| Base & | up () |
| Traverse upwards using the specified relationship type. | |
| Base & | cascade (flecs::entity_t trav=0) |
| The cascade flag is like up(), but returns results in breadth-first order. | |
| template<typename Trav > | |
| Base & | cascade () |
| Cascade using the specified relationship type. | |
| Base & | desc () |
| Use with cascade() to iterate results in descending (bottom-to-top) order. | |
| Base & | parent () |
| Same as up(). | |
| Base & | trav (flecs::entity_t trav, flecs::flags32_t flags=0) |
| Specify the relationship to traverse, and flags to indicate direction. | |
| Base & | id_flags (id_t flags) |
| Set ID flags for the term. | |
| Base & | inout (flecs::inout_kind_t inout) |
| Set read/write access of the term. | |
| Base & | inout_stage (flecs::inout_kind_t inout) |
| Set read/write access for a stage. | |
| Base & | write () |
| Short for inout_stage(flecs::Out). | |
| Base & | read () |
| Short for inout_stage(flecs::In). | |
| Base & | read_write () |
| Short for inout_stage(flecs::InOut). | |
| Base & | in () |
| Short for inout(flecs::In). | |
| Base & | out () |
| Short for inout(flecs::Out). | |
| Base & | inout () |
| Short for inout(flecs::InOut). | |
| Base & | inout_none () |
| Short for inout(flecs::InOutNone). | |
| Base & | oper (flecs::oper_kind_t oper) |
| Set the operator of the term. | |
| Base & | and_ () |
| Short for oper(flecs::And). | |
| Base & | or_ () |
| Short for oper(flecs::Or). | |
| Base & | not_ () |
| Short for oper(flecs::Not). | |
| Base & | optional () |
| Short for oper(flecs::Optional). | |
| Base & | and_from () |
| Short for oper(flecs::AndFrom). | |
| Base & | or_from () |
| Short for oper(flecs::OrFrom). | |
| Base & | not_from () |
| Short for oper(flecs::NotFrom). | |
| Base & | filter () |
| Mark the term as a filter. | |
Public Member Functions inherited from flecs::term_ref_builder_i< Base > | |
| term_ref_builder_i () | |
| Default constructor. | |
| virtual | ~term_ref_builder_i () |
| Destructor. | |
| Base & | self () |
| The self flag indicates that the term identifier itself is used. | |
| Base & | id (flecs::entity_t id) |
| Specify the value of the identifier by ID. | |
| Base & | entity (flecs::entity_t entity) |
| Specify the value of the identifier by ID. | |
| Base & | name (const char *name) |
| Specify the value of the identifier by name. | |
| Base & | var (const char *var_name) |
| Specify that the identifier is a variable (resolved at query evaluation time). | |
| Base & | flags (flecs::flags64_t flags) |
| Override the term ID flags. | |
Additional Inherited Members | |
Public Attributes inherited from flecs::term_builder_i< Base > | |
| ecs_term_t * | term_ |
| Pointer to the current term. | |
Public Attributes inherited from flecs::term_ref_builder_i< Base > | |
| ecs_term_ref_t * | term_ref_ |
| Pointer to the current term reference. | |
Protected Member Functions inherited from flecs::query_builder_i< Base > | |
| virtual flecs::world_t * | world_v () override=0 |
Protected Member Functions inherited from flecs::term_builder_i< Base > | |
| void | set_term (ecs_term_t *term) |
| Set the current term pointer. | |
Protected Member Functions inherited from flecs::term_ref_builder_i< Base > | |
| void | assert_term_ref () |
Protected Attributes inherited from flecs::query_builder_i< Base > | |
| int32_t | term_index_ |
| int32_t | expr_count_ |
Pipeline builder interface.
Definition at line 17 of file builder_i.hpp.
|
inline |
Construct from a pipeline descriptor.
Definition at line 19 of file builder_i.hpp.