Helios Engine
A modular ECS based data-oriented C++23 game engine framework
Loading...
Searching...
No Matches
helios::ecs::SystemParam Concept Reference

Concept for types usable as system function parameters. More...

#include <system_param.hpp>

Concept definition

template<typename T>
concept SystemParam =
requires(AccessPolicyBuilder& builder, World& world, SystemLocalData& local,
const AccessPolicy& policy) {
{ SystemParamTraits<std::remove_cvref_t<T>>::RegisterAccess(builder) };
{
SystemParamTraits<std::remove_cvref_t<T>>::Make(world, local, policy)
} -> std::same_as<std::remove_cvref_t<T>>;
}
Fluent builder for constructing an AccessPolicy.
Stores data access requirements for a system at compile time.
The World class manages entities with their components and systems.
Definition world.hpp:39
Concept for types usable as system function parameters.
Local data for a system.
Primary template — deliberately incomplete.

Detailed Description

Concept for types usable as system function parameters.

Satisfied when SystemParamTraits<T> provides RegisterAccess and Make.

Definition at line 28 of file system_param.hpp.