Class Context
Defined in File engine-context.h
Class Documentation
-
class Context
Declaration:
finalOwns a compatible set of platform, presentation, rendering, and resource adapters.
Input can be owned or explicitly borrowed. Owned input is destroyed before resources, renderer, surface, and display, so callbacks detach from a live window. GameRuntime coordinates their initialization and shutdown; this is not a game loop. One context supports one runtime session; stopped adapters are not restarted. Null adapters/owned input or a zero owned worker count throw on construction. Borrowed input must survive runtime cleanup/context lifetime and detach from the display’s live window before its destruction. Adapter use retains its affinity.
Public Functions
-
Context(std::unique_ptr<CE::Platform::DisplaySystem> display, std::unique_ptr<CE::Rendering::PresentationSurface> surface, std::unique_ptr<CE::Rendering::Renderer> renderer, std::unique_ptr<CE::Rendering::Resources::Provider> resources, CE::Input::System &input, ExecutionOptions execution = ExecutionOptions{})
-
Context(std::unique_ptr<CE::Platform::DisplaySystem> display, std::unique_ptr<CE::Rendering::PresentationSurface> surface, std::unique_ptr<CE::Rendering::Renderer> renderer, std::unique_ptr<CE::Rendering::Resources::Provider> resources, std::unique_ptr<CE::Input::System> input, ExecutionOptions execution = ExecutionOptions{})
-
~Context()
-
CE::Platform::DisplaySystem &display() const
Declaration:
[[nodiscard]]
-
CE::Rendering::PresentationSurface &surface() const
Declaration:
[[nodiscard]]
-
inline PlatformDispatcher &platform_dispatcher()
Declaration:
[[nodiscard]]
-
inline CE::Diagnostics::DomainId diagnostic_id() const noexcept
Declaration:
[[nodiscard]]
-
CE::Workers::Group make_worker_group(CE::Workers::GroupOptions options = CE::Workers::GroupOptions{})
Declaration:
[[nodiscard]]
-
Context(std::unique_ptr<CE::Platform::DisplaySystem> display, std::unique_ptr<CE::Rendering::PresentationSurface> surface, std::unique_ptr<CE::Rendering::Renderer> renderer, std::unique_ptr<CE::Rendering::Resources::Provider> resources, CE::Input::System &input, ExecutionOptions execution = ExecutionOptions{})