Flecs v4.0
A fast entity component system (ECS) for C & C++
Loading...
Searching...
No Matches
flecs::_::entity_with_delegate_impl< arg_list< Args ... > > Struct Template Reference

Classes

struct  InvokeCtx
 

Public Types

using ColumnArray = flecs::array<int32_t, sizeof...(Args)>
 
using ArrayType = flecs::array<void*, sizeof...(Args)>
 
using DummyArray = flecs::array<int, sizeof...(Args)>
 
using IdArray = flecs::array<id_t, sizeof...(Args)>
 

Static Public Member Functions

static bool const_args ()
 
static bool get_ptrs (world_t *world, flecs::entity_t e, const ecs_record_t *r, ecs_table_t *table, ArrayType &ptrs)
 
static bool ensure_ptrs (world_t *world, ecs_entity_t e, ArrayType &ptrs)
 
template<typename Func >
static bool invoke_read (world_t *world, entity_t e, const Func &func)
 
template<typename Func >
static bool invoke_write (world_t *world, entity_t e, const Func &func)
 
template<typename Func >
static bool invoke_get (world_t *world, entity_t e, const Func &func)
 
static size_t store_added (IdArray &added, size_t elem, ecs_table_t *prev, ecs_table_t *next, id_t id)
 
static int invoke_add (flecs::world &w, flecs::entity_t entity, flecs::id_t component_id, InvokeCtx &ctx)
 
template<typename Func >
static bool invoke_ensure (world_t *world, entity_t id, const Func &func)
 

Detailed Description

template<typename ... Args>
struct flecs::_::entity_with_delegate_impl< arg_list< Args ... > >

Definition at line 668 of file delegate.hpp.

Member Typedef Documentation

◆ ArrayType

template<typename ... Args>
using flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::ArrayType = flecs::array<void*, sizeof...(Args)>

Definition at line 670 of file delegate.hpp.

◆ ColumnArray

template<typename ... Args>
using flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::ColumnArray = flecs::array<int32_t, sizeof...(Args)>

Definition at line 669 of file delegate.hpp.

◆ DummyArray

template<typename ... Args>
using flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::DummyArray = flecs::array<int, sizeof...(Args)>

Definition at line 671 of file delegate.hpp.

◆ IdArray

template<typename ... Args>
using flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::IdArray = flecs::array<id_t, sizeof...(Args)>

Definition at line 672 of file delegate.hpp.

Member Function Documentation

◆ const_args()

template<typename ... Args>
static bool flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::const_args ( )
inlinestatic

Definition at line 674 of file delegate.hpp.

◆ ensure_ptrs()

template<typename ... Args>
static bool flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::ensure_ptrs ( world_t * world,
ecs_entity_t e,
ArrayType & ptrs )
inlinestatic

Definition at line 726 of file delegate.hpp.

◆ get_ptrs()

template<typename ... Args>
static bool flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::get_ptrs ( world_t * world,
flecs::entity_t e,
const ecs_record_t * r,
ecs_table_t * table,
ArrayType & ptrs )
inlinestatic

Definition at line 688 of file delegate.hpp.

◆ invoke_add()

template<typename ... Args>
static int flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::invoke_add ( flecs::world & w,
flecs::entity_t entity,
flecs::id_t component_id,
InvokeCtx & ctx )
inlinestatic

Definition at line 812 of file delegate.hpp.

◆ invoke_ensure()

template<typename ... Args>
template<typename Func >
static bool flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::invoke_ensure ( world_t * world,
entity_t id,
const Func & func )
inlinestatic

Definition at line 839 of file delegate.hpp.

◆ invoke_get()

template<typename ... Args>
template<typename Func >
static bool flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::invoke_get ( world_t * world,
entity_t e,
const Func & func )
inlinestatic

Definition at line 784 of file delegate.hpp.

◆ invoke_read()

template<typename ... Args>
template<typename Func >
static bool flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::invoke_read ( world_t * world,
entity_t e,
const Func & func )
inlinestatic

Definition at line 738 of file delegate.hpp.

◆ invoke_write()

template<typename ... Args>
template<typename Func >
static bool flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::invoke_write ( world_t * world,
entity_t e,
const Func & func )
inlinestatic

Definition at line 761 of file delegate.hpp.

◆ store_added()

template<typename ... Args>
static size_t flecs::_::entity_with_delegate_impl< arg_list< Args ... > >::store_added ( IdArray & added,
size_t elem,
ecs_table_t * prev,
ecs_table_t * next,
id_t id )
inlinestatic

Definition at line 793 of file delegate.hpp.


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