UpdateContext.ixx File
Per-frame context passed to systems during game loop updates. More...
Included Headers
#include <span>
#include <cassert>
#include <helios.engine.runtime.world.EngineWorld>
#include <helios.engine.runtime.world.Session>
#include <helios.ecs.View>
#include <helios.engine.runtime.world.RuntimeEnvironment>
#include <helios.engine.runtime.messaging.event.GameLoopEventBus>
#include <helios.ecs.types.EntityHandle>
#include <helios.engine.runtime.world.Level>
#include <helios.engine.input.InputSnapshot>
Namespaces Index
| namespace | helios |
| namespace | engine |
| namespace | runtime |
| namespace | world |
Classes Index
| class | UpdateContext |
|
Per-frame context passed to systems during game loop updates. More... | |
Description
Per-frame context passed to systems during game loop updates.
File Listing
The file content with the documentation metadata removed is:
26export namespace helios::engine::runtime::world {
46 class UpdateContext {
62 const helios::engine::input::InputSnapshot& inputSnapshot_;
67 helios::engine::runtime::world::Session& session_;
72 helios::engine::runtime::world::RuntimeEnvironment& runtimeEnvironment_;
112 const helios::engine::runtime::messaging::event::GameLoopEventBus::ReadSource frameEventSource_;
117 const Level* level_;
122 helios::engine::runtime::world::EngineWorld& engineWorld_;
144 const float deltaTime,
145 const float totalTime,
149 const helios::engine::input::InputSnapshot& inputSnapshot,
151 EngineWorld& engineWorld
153 session_(session),
154 runtimeEnvironment_(runtimeEnvironment),
155 deltaTime_(deltaTime),
156 totalTime_(totalTime),
157 phaseEventSink_(phaseEventBus.writeSink()),
158 phaseEventSource_(phaseEventBus.readSource()),
159 passEventSink_(passEventBus.writeSink()),
160 passEventSource_(passEventBus.readSource()),
161 frameEventSink_(frameEventBus.writeSink()),
162 frameEventSource_(frameEventBus.readSource()),
163 inputSnapshot_(inputSnapshot),
164 level_(level),
195 [[nodiscard]] const helios::engine::input::InputSnapshot& inputSnapshot() const noexcept {
210 return engineWorld_.template find<THandle>(handle);
238 [[nodiscard]] helios::engine::runtime::world::RuntimeEnvironment& runtimeEnvironment() const noexcept {
296 return phaseEventSource_.template read<E>();
315 return passEventSource_.template read<E>();
339 return frameEventSource_.template read<E>();
374 template <typename THandle, typename... Components>
376 return engineWorld_.view<THandle, Components...>();
Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.