Nebula
|
#include <processor.h>
Public Member Functions | |
ProcessorBuilder ()=delete | |
ProcessorBuilder (Game::World *world, Util::StringAtom processorName) | |
template<typename LAMBDA > | |
ProcessorBuilder & | Func (LAMBDA) |
which function to run with the processor | |
template<typename ... COMPONENTS> | |
ProcessorBuilder & | Func (std::function< void(World *, COMPONENTS...)> func) |
which function to run with the processor | |
template<typename ... COMPONENTS> | |
ProcessorBuilder & | Including () |
entities must have these components | |
template<typename ... COMPONENTS> | |
ProcessorBuilder & | Excluding () |
entities must not have any of these components | |
ProcessorBuilder & | Excluding (std::initializer_list< ComponentId >) |
entities must not have any of these components | |
ProcessorBuilder & | On (Util::StringAtom eventName) |
select on which event the processor is executed | |
ProcessorBuilder & | Async () |
processor should run async | |
ProcessorBuilder & | OnlyModified () |
entities must be marked as modified for them to actually be processed | |
ProcessorBuilder & | Order (int order) |
Set the sorting order for the processor. | |
ProcessorBuilder & | RunInEditor () |
Processor should always run, even in editor; when the game is paused. | |
Processor * | Build () |
Build the processor and attach it to the world. | |
Private Attributes | |
World * | world |
Util::StringAtom | name |
Util::StringAtom | onEvent |
std::function< void(World *, Dataset::View const &)> | func = nullptr |
std::function< void(World *, Dataset::View const &)> | funcModified = nullptr |
FilterBuilder | filterBuilder |
bool | async = false |
bool | onlyModified = false |
int | order = 100 |
|
delete |
Game::ProcessorBuilder::ProcessorBuilder | ( | Game::World * | world, |
Util::StringAtom | processorName ) |
ProcessorBuilder & Game::ProcessorBuilder::Async | ( | ) |
processor should run async
Processor * Game::ProcessorBuilder::Build | ( | ) |
Build the processor and attach it to the world.
|
inline |
entities must not have any of these components
ProcessorBuilder & Game::ProcessorBuilder::Excluding | ( | std::initializer_list< ComponentId > | components | ) |
entities must not have any of these components
ProcessorBuilder & Game::ProcessorBuilder::Func | ( | LAMBDA | lambda | ) |
which function to run with the processor
|
inline |
which function to run with the processor
|
inline |
entities must have these components
ProcessorBuilder & Game::ProcessorBuilder::On | ( | Util::StringAtom | eventName | ) |
select on which event the processor is executed
ProcessorBuilder & Game::ProcessorBuilder::OnlyModified | ( | ) |
entities must be marked as modified for them to actually be processed
ProcessorBuilder & Game::ProcessorBuilder::Order | ( | int | order | ) |
Set the sorting order for the processor.
ProcessorBuilder & Game::ProcessorBuilder::RunInEditor | ( | ) |
Processor should always run, even in editor; when the game is paused.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |