template<typename T>
cubos::core::ecs::SystemFetcher class

Type meant to be specialized which implements for each argument type the necessary logic to extract it from the world.

Template parameters
T Argument type.

Public static variables

static bool ConsumesOptions constexpr
Indicates whether this argument type consumes system options.

Constructors, destructors, conversion operators

SystemFetcher(World& world, const SystemOptions& options)
Called when a system is constructed for the first time.

Public functions

void analyze(SystemAccess& access) const
Called to determine the access patterns of the argument.
auto fetch(const SystemContext& ctx) -> T
Called each system run to fetch the data from the world.

Function documentation

template<typename T>
cubos::core::ecs::SystemFetcher<T>::SystemFetcher(World& world, const SystemOptions& options)

Called when a system is constructed for the first time.

Parameters
world World to extract data from.
options Argument options.

template<typename T>
void cubos::core::ecs::SystemFetcher<T>::analyze(SystemAccess& access) const

Called to determine the access patterns of the argument.

Parameters
access out Access patterns to add info to.

template<typename T>
T cubos::core::ecs::SystemFetcher<T>::fetch(const SystemContext& ctx)

Called each system run to fetch the data from the world.

Parameters
ctx Context.