Flecs v3.2
A fast entity component system (ECS) for C & C++
Loading...
Searching...
No Matches
flecs::filter< Components > Struct Template Reference
Inheritance diagram for flecs::filter< Components >:
flecs::filter_base flecs::iterable< Components... >

Public Member Functions

 filter (const filter &obj)
 
filteroperator= (const filter &obj)
 
 filter (filter &&obj)
 
filteroperator= (filter &&obj)
 
 filter_base ()
 
 filter_base (world_t *world, const ecs_filter_t *filter)
 
 filter_base (world_t *world, ecs_filter_t *filter)
 
 filter_base (world_t *world, ecs_filter_desc_t *desc)
 
 filter_base (const filter_base &obj)
 
 filter_base (filter_base &&obj)
 
- Public Member Functions inherited from flecs::filter_base
 filter_base (world_t *world, const ecs_filter_t *filter)
 
 filter_base (world_t *world, ecs_filter_t *filter)
 
 filter_base (world_t *world, ecs_filter_desc_t *desc)
 
 filter_base (const filter_base &obj)
 
filter_baseoperator= (const filter_base &obj)
 
 filter_base (filter_base &&obj)
 
filter_baseoperator= (filter_base &&obj)
 
flecs::entity entity ()
 
 operator const flecs::filter_t * () const
 
 ~filter_base ()
 Free the filter. More...
 
template<typename Func >
void each_term (const Func &func)
 
flecs::term term (int32_t index)
 
int32_t field_count ()
 
flecs::string str ()
 
 operator filter () const
 
- Public Member Functions inherited from flecs::iterable< Components... >
void each (Func &&func) const
 Each iterator. More...
 
void each (flecs::world_t *world, Func &&func) const
 
void each (flecs::iter &it, Func &&func) const
 
void each (flecs::entity e, Func &&func) const
 
flecs::entity find (Func &&func) const
 
void iter (Func &&func) const
 Iter iterator. More...
 
void iter (flecs::world_t *world, Func &&func) const
 
void iter (flecs::iter &it, Func &&func) const
 
void iter (flecs::entity e, Func &&func) const
 
iter_iterable< Components... > iter (flecs::world_t *world=nullptr) const
 Create iterator. More...
 
page_iterable< Components... > page (int32_t offset, int32_t limit)
 Page iterator. More...
 
worker_iterable< Components... > worker (int32_t index, int32_t count)
 Worker iterator. More...
 
int32_t count () const
 Return number of entities matched by iterable. More...
 
bool is_true () const
 Return whether iterable has any matches. More...
 
flecs::entity first () const
 Return first entity matched by iterable. More...
 

Additional Inherited Members

- Protected Member Functions inherited from flecs::iterable< Components... >
virtual ecs_iter_t get_iter (flecs::world_t *stage) const=0
 
virtual ecs_iter_next_action_t next_action () const=0
 
virtual ecs_iter_next_action_t next_each_action () const=0
 
void iterate (flecs::world_t *stage, Func &&func, NextFunc next, Args &&... args) const
 
flecs::entity iterate_find (flecs::world_t *stage, Func &&func, NextFunc next, Args &&... args) const
 
- Protected Attributes inherited from flecs::filter_base
world_t * m_world = nullptr
 
filter_t m_filter = ECS_FILTER_INIT
 
const filter_tm_filter_ptr
 
- Protected Attributes inherited from flecs::iterable< Components... >
friend iter_iterable< Components... >
 
friend page_iterable< Components... >
 
friend worker_iterable< Components... >
 

Detailed Description

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

Definition at line 135 of file impl.hpp.

Constructor & Destructor Documentation

◆ filter() [1/3]

template<typename ... Components>
flecs::filter< Components >::filter ( )
inline

Definition at line 142 of file impl.hpp.

◆ filter() [2/3]

template<typename ... Components>
flecs::filter< Components >::filter ( const filter< Components > &  obj)
inline

Definition at line 144 of file impl.hpp.

◆ filter() [3/3]

template<typename ... Components>
flecs::filter< Components >::filter ( filter< Components > &&  obj)
inline

Definition at line 151 of file impl.hpp.

Member Function Documentation

◆ filter_base() [1/6]

template<typename ... Components>
flecs::filter_base::filter_base ( )
inline

Definition at line 14 of file impl.hpp.

◆ filter_base() [2/6]

template<typename ... Components>
flecs::filter_base::filter_base ( const filter_base obj)
inline

Definition at line 46 of file impl.hpp.

◆ filter_base() [3/6]

template<typename ... Components>
flecs::filter_base::filter_base ( filter_base &&  obj)
inline

Definition at line 67 of file impl.hpp.

◆ filter_base() [4/6]

template<typename ... Components>
flecs::filter_base::filter_base ( world_t *  world,
const ecs_filter_t filter 
)
inline

Definition at line 19 of file impl.hpp.

◆ filter_base() [5/6]

template<typename ... Components>
flecs::filter_base::filter_base ( world_t *  world,
ecs_filter_desc_t desc 
)
inline

Definition at line 30 of file impl.hpp.

◆ filter_base() [6/6]

template<typename ... Components>
flecs::filter_base::filter_base ( world_t *  world,
ecs_filter_t filter 
)
inline

Definition at line 24 of file impl.hpp.

◆ operator=() [1/2]

template<typename ... Components>
filter & flecs::filter< Components >::operator= ( const filter< Components > &  obj)
inline

Definition at line 146 of file impl.hpp.

◆ operator=() [2/2]

template<typename ... Components>
filter & flecs::filter< Components >::operator= ( filter< Components > &&  obj)
inline

Definition at line 153 of file impl.hpp.


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