![]() |
Flecs v4.1
A fast entity component system (ECS) for C & C++
|
Observer builder. More...
#include <builder.hpp>
Public Member Functions | |
| observer_builder (flecs::world_t *world, const char *name=nullptr) | |
| Construct an observer builder. | |
| Public Member Functions inherited from flecs::_::node_builder< observer, ecs_observer_desc_t, observer_builder< Components... >, observer_builder_i, Components ... > | |
| node_builder (flecs::world_t *world, const char *name=nullptr) | |
| observer | run (Func &&func) |
| observer | run (Func &&func, EachFunc &&each_func) |
| observer | each (Func &&func) |
| observer | run_each (Func &&func) |
| Public Member Functions inherited from flecs::observer_builder_i< Base, Components > | |
| observer_builder_i () | |
| Default constructor. | |
| observer_builder_i (ecs_observer_desc_t *desc) | |
| Construct from an observer descriptor. | |
| Base & | event (entity_t evt) |
| Specify the event(s) for when the observer should run. | |
| template<typename E> | |
| Base & | event () |
| Specify the event(s) for when the observer should run. | |
| Base & | yield_existing (bool value=true) |
| Invoke the observer for anything that matches its query on creation. | |
| Base & | observer_flags (ecs_flags32_t flags) |
| Set the observer flags. | |
| Base & | ctx (void *ptr) |
| Set the observer context. | |
| Base & | run (ecs_iter_action_t action) |
| Set the observer run callback. | |
| Public Member Functions inherited from flecs::query_builder_i< Base, Components ... > | |
| 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. | |
Observer builder.
Definition at line 24 of file builder.hpp.
|
inline |
Construct an observer builder.
Definition at line 26 of file builder.hpp.