Nebula
Loading...
Searching...
No Matches
Game::FilterBuilder Class Reference

#include <filter.h>

Classes

struct  ComponentRequest
 
struct  FilterCreateInfo
 

Public Member Functions

 FilterBuilder ()
 
template<typename ... TYPES>
FilterBuilderIncluding ()
 
FilterBuilderIncluding (std::initializer_list< ComponentRequest >)
 
uint8_t GetNumInclusive ()
 
template<typename ... TYPES>
FilterBuilderExcluding ()
 
FilterBuilderExcluding (std::initializer_list< ComponentId >)
 
Filter Build ()
 

Static Public Member Functions

static Filter CreateFilter (FilterCreateInfo)
 

Private Member Functions

template<class TYPE >
void SetInclusive (size_t const i)
 
template<typename ... TYPES, std::size_t... Is>
void UnrollInclusiveComponents (std::index_sequence< Is... >)
 
template<class TYPE >
void SetExclusive (size_t const i)
 
template<typename ... TYPES, std::size_t... Is>
void UnrollExclusiveComponents (std::index_sequence< Is... >)
 

Private Attributes

FilterCreateInfo info
 

Constructor & Destructor Documentation

◆ FilterBuilder()

Game::FilterBuilder::FilterBuilder ( )

Member Function Documentation

◆ Build()

Filter Game::FilterBuilder::Build ( )

◆ CreateFilter()

Filter Game::FilterBuilder::CreateFilter ( FilterCreateInfo info)
static

◆ Excluding() [1/2]

template<typename ... TYPES>
FilterBuilder & Game::FilterBuilder::Excluding ( )
inline

◆ Excluding() [2/2]

FilterBuilder & Game::FilterBuilder::Excluding ( std::initializer_list< ComponentId > components)

◆ GetNumInclusive()

uint8_t Game::FilterBuilder::GetNumInclusive ( )
inline

◆ Including() [1/2]

template<typename ... TYPES>
FilterBuilder & Game::FilterBuilder::Including ( )
inline

◆ Including() [2/2]

FilterBuilder & Game::FilterBuilder::Including ( std::initializer_list< ComponentRequest > components)

◆ SetExclusive()

template<class TYPE >
void Game::FilterBuilder::SetExclusive ( size_t const i)
inlineprivate

◆ SetInclusive()

template<class TYPE >
void Game::FilterBuilder::SetInclusive ( size_t const i)
inlineprivate

◆ UnrollExclusiveComponents()

template<typename ... TYPES, std::size_t... Is>
void Game::FilterBuilder::UnrollExclusiveComponents ( std::index_sequence< Is... > )
inlineprivate

◆ UnrollInclusiveComponents()

template<typename ... TYPES, std::size_t... Is>
void Game::FilterBuilder::UnrollInclusiveComponents ( std::index_sequence< Is... > )
inlineprivate

Member Data Documentation

◆ info

FilterCreateInfo Game::FilterBuilder::info
private

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