Flecs v3.2
A fast entity component system (ECS) for C & C++
Loading...
Searching...
No Matches
flecs::filter_builder_i< Base, Components > Struct Template Referenceabstract

Filter builder interface. More...

#include <builder_i.hpp>

Inheritance diagram for flecs::filter_builder_i< Base, Components >:
flecs::term_builder_i< Base > flecs::term_id_builder_i< Base >

Public Member Functions

 filter_builder_i (ecs_filter_desc_t *desc, int32_t term_index=0)
 
Base & instanced ()
 
Base & filter_flags (ecs_flags32_t flags)
 
Base & expr (const char *expr)
 
template<typename ... Args>
Base & with (Args &&... args)
 
template<typename T , typename ... Args>
Base & with (Args &&... args)
 
template<typename First , typename Second >
Base & with ()
 
template<typename ... Args>
Base & without (Args &&... args)
 
template<typename T , typename ... Args>
Base & without (Args &&... args)
 
template<typename First , typename Second >
Base & without ()
 
Base & write ()
 
template<typename ... Args>
Base & write (Args &&... args)
 
template<typename T , typename ... Args>
Base & write (Args &&... args)
 
template<typename First , typename Second >
Base & write ()
 
Base & read ()
 
template<typename ... Args>
Base & read (Args &&... args)
 
template<typename T , typename ... Args>
Base & read (Args &&... args)
 
template<typename First , typename Second >
Base & read ()
 
Base & scope_open ()
 
Base & scope_close ()
 
Base & term ()
 
Base & term_at (int32_t term_index)
 
Base & arg (int32_t term_index)
 
template<typename T >
Base & term ()
 
Base & term (id_t id)
 
Base & term (const char *name)
 
Base & term (const char *first, const char *second)
 
Base & term (entity_t r, entity_t o)
 
Base & term (entity_t r, const char *o)
 
template<typename First >
Base & term (id_t o)
 
template<typename First >
Base & term (const char *second)
 
template<typename First , typename Second >
Base & term ()
 
template<typename E , if_t< is_enum< E >::value > = 0>
Base & term (E value)
 
Base & term (flecs::term &term)
 
Base & term (flecs::term &&term)
 
- 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 & role (id_t role)
 Set role of term. More...
 
Base & inout (flecs::inout_kind_t inout)
 Set read/write access of term. More...
 
Base & inout_stage (flecs::inout_kind_t inout)
 Set read/write access for stage. More...
 
Base & write ()
 Short for inout_stage(flecs::Out). More...
 
Base & read ()
 Short for inout_stage(flecs::In). More...
 
Base & read_write ()
 Short for inout_stage(flecs::InOut). More...
 
Base & in ()
 Short for inout(flecs::In) More...
 
Base & out ()
 Short for inout(flecs::Out) More...
 
Base & inout ()
 Short for inout(flecs::InOut) More...
 
Base & inout_none ()
 Short for inout(flecs::In) More...
 
Base & oper (flecs::oper_kind_t oper)
 Set operator of term. More...
 
Base & and_ ()
 
Base & or_ ()
 
Base & not_ ()
 
Base & optional ()
 
Base & and_from ()
 
Base & or_from ()
 
Base & not_from ()
 
Base & singleton ()
 Match singleton. More...
 
Base & filter ()
 
- Public Member Functions inherited from flecs::term_id_builder_i< Base >
Base & self ()
 
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 & parent ()
 
Base & trav (flecs::entity_t trav, flecs::flags32_t flags=0)
 
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::flags32_t flags)
 

Protected Member Functions

virtual flecs::world_t * world_v ()=0
 
- Protected Member Functions inherited from flecs::term_builder_i< Base >
virtual flecs::world_t * world_v ()=0
 
void set_term (ecs_term_t *term)
 
virtual flecs::world_t * world_v ()=0
 

Protected Attributes

int32_t m_term_index
 
int32_t m_expr_count
 

Additional Inherited Members

- Public Attributes inherited from flecs::term_builder_i< Base >
ecs_term_tm_term
 
- Public Attributes inherited from flecs::term_id_builder_i< Base >
ecs_term_id_tm_term_id
 

Detailed Description

template<typename Base, typename ... Components>
struct flecs::filter_builder_i< Base, Components >

Filter builder interface.

Definition at line 18 of file builder_i.hpp.

Constructor & Destructor Documentation

◆ filter_builder_i()

template<typename Base , typename ... Components>
flecs::filter_builder_i< Base, Components >::filter_builder_i ( ecs_filter_desc_t desc,
int32_t  term_index = 0 
)
inline

Definition at line 19 of file builder_i.hpp.

Member Function Documentation

◆ arg()

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::arg ( int32_t  term_index)
inline

Definition at line 173 of file builder_i.hpp.

◆ expr()

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::expr ( const char *  expr)
inline

Definition at line 34 of file builder_i.hpp.

◆ filter_flags()

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::filter_flags ( ecs_flags32_t  flags)
inline

Definition at line 29 of file builder_i.hpp.

◆ instanced()

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::instanced ( )
inline

Definition at line 24 of file builder_i.hpp.

◆ read() [1/4]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::read ( )
inline

Definition at line 98 of file builder_i.hpp.

◆ read() [2/4]

template<typename Base , typename ... Components>
template<typename First , typename Second >
Base & flecs::filter_builder_i< Base, Components >::read ( )
inline

Definition at line 114 of file builder_i.hpp.

◆ read() [3/4]

template<typename Base , typename ... Components>
template<typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::read ( Args &&...  args)
inline

Definition at line 104 of file builder_i.hpp.

◆ read() [4/4]

template<typename Base , typename ... Components>
template<typename T , typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::read ( Args &&...  args)
inline

Definition at line 109 of file builder_i.hpp.

◆ scope_close()

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::scope_close ( )
inline

Definition at line 123 of file builder_i.hpp.

◆ scope_open()

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::scope_open ( )
inline

Definition at line 119 of file builder_i.hpp.

◆ term() [1/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( )
inline

Definition at line 129 of file builder_i.hpp.

◆ term() [2/13]

template<typename Base , typename ... Components>
template<typename T >
Base & flecs::filter_builder_i< Base, Components >::term ( )
inline

Definition at line 178 of file builder_i.hpp.

◆ term() [3/13]

template<typename Base , typename ... Components>
template<typename First , typename Second >
Base & flecs::filter_builder_i< Base, Components >::term ( )
inline

Definition at line 227 of file builder_i.hpp.

◆ term() [4/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( const char *  first,
const char *  second 
)
inline

Definition at line 198 of file builder_i.hpp.

◆ term() [5/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( const char *  name)
inline

Definition at line 192 of file builder_i.hpp.

◆ term() [6/13]

template<typename Base , typename ... Components>
template<typename First >
Base & flecs::filter_builder_i< Base, Components >::term ( const char *  second)
inline

Definition at line 222 of file builder_i.hpp.

◆ term() [7/13]

template<typename Base , typename ... Components>
template<typename E , if_t< is_enum< E >::value > = 0>
Base & flecs::filter_builder_i< Base, Components >::term ( value)
inline

Definition at line 232 of file builder_i.hpp.

◆ term() [8/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( entity_t  r,
const char *  o 
)
inline

Definition at line 210 of file builder_i.hpp.

◆ term() [9/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( entity_t  r,
entity_t  o 
)
inline

Definition at line 204 of file builder_i.hpp.

◆ term() [10/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( flecs::term &&  term)
inline

Definition at line 244 of file builder_i.hpp.

◆ term() [11/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( flecs::term term)
inline

Definition at line 238 of file builder_i.hpp.

◆ term() [12/13]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term ( id_t  id)
inline

Definition at line 186 of file builder_i.hpp.

◆ term() [13/13]

template<typename Base , typename ... Components>
template<typename First >
Base & flecs::filter_builder_i< Base, Components >::term ( id_t  o)
inline

Definition at line 217 of file builder_i.hpp.

◆ term_at()

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::term_at ( int32_t  term_index)
inline

Definition at line 162 of file builder_i.hpp.

◆ with() [1/3]

template<typename Base , typename ... Components>
template<typename First , typename Second >
Base & flecs::filter_builder_i< Base, Components >::with ( )
inline

Definition at line 57 of file builder_i.hpp.

◆ with() [2/3]

template<typename Base , typename ... Components>
template<typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::with ( Args &&...  args)
inline

Definition at line 47 of file builder_i.hpp.

◆ with() [3/3]

template<typename Base , typename ... Components>
template<typename T , typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::with ( Args &&...  args)
inline

Definition at line 52 of file builder_i.hpp.

◆ without() [1/3]

template<typename Base , typename ... Components>
template<typename First , typename Second >
Base & flecs::filter_builder_i< Base, Components >::without ( )
inline

Definition at line 72 of file builder_i.hpp.

◆ without() [2/3]

template<typename Base , typename ... Components>
template<typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::without ( Args &&...  args)
inline

Definition at line 62 of file builder_i.hpp.

◆ without() [3/3]

template<typename Base , typename ... Components>
template<typename T , typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::without ( Args &&...  args)
inline

Definition at line 67 of file builder_i.hpp.

◆ world_v()

template<typename Base , typename ... Components>
virtual flecs::world_t * flecs::filter_builder_i< Base, Components >::world_v ( )
protectedpure virtual

◆ write() [1/4]

template<typename Base , typename ... Components>
Base & flecs::filter_builder_i< Base, Components >::write ( )
inline

Definition at line 78 of file builder_i.hpp.

◆ write() [2/4]

template<typename Base , typename ... Components>
template<typename First , typename Second >
Base & flecs::filter_builder_i< Base, Components >::write ( )
inline

Definition at line 94 of file builder_i.hpp.

◆ write() [3/4]

template<typename Base , typename ... Components>
template<typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::write ( Args &&...  args)
inline

Definition at line 84 of file builder_i.hpp.

◆ write() [4/4]

template<typename Base , typename ... Components>
template<typename T , typename ... Args>
Base & flecs::filter_builder_i< Base, Components >::write ( Args &&...  args)
inline

Definition at line 89 of file builder_i.hpp.

Member Data Documentation

◆ m_expr_count

template<typename Base , typename ... Components>
int32_t flecs::filter_builder_i< Base, Components >::m_expr_count
protected

Definition at line 253 of file builder_i.hpp.

◆ m_term_index

template<typename Base , typename ... Components>
int32_t flecs::filter_builder_i< Base, Components >::m_term_index
protected

Definition at line 252 of file builder_i.hpp.


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