Class RuntimeServices

Class Documentation

class RuntimeServices

Declaration: final

Retained attachment access to Context’s two runtime service owners.

Registration requires the initialized owner. Required callbacks finish before dependent work; all are attempted before propagating the first error. Ordinary observations use the typed bus channels instead. Copies retain attachment coordination, not Context/native lifetime. New attachment rejects after runtime closure; no destructor invokes callbacks.

Public Functions

ServiceAttachment on_maintenance(std::function<void(const PlatformMaintenance&)>) const

Declaration: [[nodiscard]]

Attach required immediate work on the initialized platform owner, normally from game init_platform().

No seed/replay is supplied. A callback added during a pass starts on the next pass. All required participants are attempted before the first failure propagates. This phase never pumps native input.

ServiceAttachment on_step(std::function<void(const SimulationStepStarting&)>) const

Declaration: [[nodiscard]]

Attach required work on the initialized simulation owner, normally from game init_simulation().

Registration during initialization participates from the first simulation step. Future callbacks run after input/view selection and before the game hook. No current-step replay occurs. Failure or a stop request prevents the dependent update; retain the attachment for lifetime.