Flecs: flecs::observer_builder< Components > Struct Template Reference
Description: A fast entity component system (ECS) for C & C++

| Flecs v4.0 A fast entity component system (ECS) for C & C++

Loading...
Searching...
No Matches
flecs::observer_builder< Components > Struct Template Referencefinal
C++ API » Core » Observers

Observer builder. More...

`#include <builder.hpp>`

Inheritance diagram for flecs::observer_builder< Components >:
[legend]

## Public Member Functions
| observer_builder (flecs::world_t *world, const char *name=nullptr)
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 (ecs_observer_desc_t *desc)
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 observer for anything that matches its query on creation.
Base & | observer_flags (ecs_flags32_t flags)
| Set observer flags.
Base & | ctx (void *ptr)
| Set observer context.
Base & | run (ecs_iter_action_t action)
| Set 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)
Base & | query_flags (ecs_flags32_t flags)
Base & | cache_kind (query_cache_kind_t kind)
Base & | cached ()
Base & | detect_changes ()
Base & | expr (const char *expr)
Base & | with ()
Base & | with (id_t component_id)
Base & | with (const char *component_name)
Base & | with (const char *first, const char *second)
Base & | with (entity_t first, entity_t second)
Base & | with (entity_t first, const char *second)
Base & | with (const char *first, entity_t second)
Base & | with (entity_t second)
Base & | with (const char *second)
Base & | with ()
Base & | with (E value)
Base & | with (flecs::term &term)
Base & | with (flecs::term &&term)
Base & | without (Args &&... args)
Base & | without (Args &&... args)
Base & | without ()
Base & | write ()
Base & | write (Args &&... args)
Base & | write (Args &&... args)
Base & | write ()
Base & | read ()
Base & | read (Args &&... args)
Base & | read (Args &&... args)
Base & | read ()
Base & | scope_open ()
Base & | scope_close ()
Base & | term ()
| Sets the current term to next one in term list.
Base & | term_at ()
| Sets the current term to the one with the provided type.
Base & | term_at (int32_t term_index)
| Sets the current term to the one at the provided index.
Base & | term_at (int32_t term_index)
| Sets the current term to the one at the provided index and asserts 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 group_by function.
Base & | on_group_create (ecs_group_create_action_t action)
| Specify on_group_create action.
Base & | on_group_delete (ecs_group_delete_action_t action)
| Specify on_group_delete action.
Public Member Functions inherited from flecs::term_builder_i< Base >
| term_builder_i (ecs_term_t *term_ptr)
Base & | term (id_t id)
Base & | src ()
Base & | first ()
Base & | second ()
Base & | src (flecs::entity_t id)
template<typename T>
Base & | src ()
Base & | src (const char *name)
Base & | first (flecs::entity_t id)
template<typename T>
Base & | first ()
Base & | first (const char *name)
Base & | second (flecs::entity_t id)
template<typename T>
Base & | second ()
Base & | second (const char *name)
Base & | up (flecs::entity_t trav=0)
template<typename Trav>
Base & | up ()
Base & | cascade (flecs::entity_t trav=0)
template<typename Trav>
Base & | cascade ()
Base & | desc ()
Base & | parent ()
Base & | trav (flecs::entity_t trav, flecs::flags32_t flags=0)
Base & | id_flags (id_t flags)
| Set id flags for term.
Base & | inout (flecs::inout_kind_t inout)
| Set read/write access of term.
Base & | inout_stage (flecs::inout_kind_t inout)
| Set read/write access for 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::In)
Base & | oper (flecs::oper_kind_t oper)
| Set operator of term.
Base & | and_ ()
Base & | or_ ()
Base & | not_ ()
Base & | optional ()
Base & | and_from ()
Base & | or_from ()
Base & | not_from ()
Base & | filter ()
Public Member Functions inherited from flecs::term_ref_builder_i< Base >
Base & | self ()
Base & | id (flecs::entity_t id)
Base & | entity (flecs::entity_t entity)
Base & | name (const char *name)
Base & | var (const char *var_name)
Base & | flags (flecs::flags64_t flags)

## Additional Inherited Members
Public Types inherited from flecs::_::node_builder< observer, ecs_observer_desc_t, observer_builder< Components... >, observer_builder_i, Components ... >
using | IBase
Public Types inherited from flecs::observer_builder_i< Base, Components >
using | BaseClass = query_builder_i<Base, Components ...>
Public Attributes inherited from flecs::term_builder_i< Base >
ecs_term_t * | term_
Public Attributes inherited from flecs::term_ref_builder_i< Base >
ecs_term_ref_t * | term_ref_
Protected Member Functions inherited from flecs::_::node_builder< observer, ecs_observer_desc_t, observer_builder< Components... >, observer_builder_i, Components ... >
flecs::world_t * | world_v () override
Protected Member Functions inherited from flecs::term_builder_i< Base >
void | set_term (ecs_term_t *term)
Protected Member Functions inherited from flecs::term_ref_builder_i< Base >
void | assert_term_ref ()
Protected Attributes inherited from flecs::_::node_builder< observer, ecs_observer_desc_t, observer_builder< Components... >, observer_builder_i, Components ... >
ecs_observer_desc_t | desc_
flecs::world_t * | world_
Protected Attributes inherited from flecs::query_builder_i< Base, Components ... >
int32_t | term_index_
int32_t | expr_count_

## Detailed Description

template<typename ... Components>
struct flecs::observer_builder< Components >

Observer builder.

Definition at line 24 of file builder.hpp.

## Constructor & Destructor Documentation

## ◆ observer_builder()

template<typename ... Components>

flecs::observer_builder< Components >::observer_builder | ( | flecs::world_t * | world,
|  | const char * | name = nullptr )
| inline

Definition at line 25 of file builder.hpp.

The documentation for this struct was generated from the following file:

- include/flecs/addons/cpp/mixins/observer/builder.hpp