refactor(app): close ordered startup composition
This commit is contained in:
parent
54244d31f1
commit
530b4bd8f5
16 changed files with 537 additions and 215 deletions
|
|
@ -131,8 +131,10 @@ internal enum LivePresentationCompositionPoint
|
|||
|
||||
internal sealed class LivePresentationCompositionPhase
|
||||
: ILivePresentationCompositionPhase<
|
||||
GameWindowPlatformResult<GL, Silk.NET.Input.IInputContext>,
|
||||
HostInputCameraResult,
|
||||
ContentEffectsAudioResult,
|
||||
SettingsDevToolsResult,
|
||||
WorldRenderResult,
|
||||
InteractionRetainedUiResult,
|
||||
LivePresentationResult>
|
||||
|
|
@ -154,15 +156,24 @@ internal sealed class LivePresentationCompositionPhase
|
|||
}
|
||||
|
||||
public LivePresentationResult Compose(
|
||||
GameWindowPlatformResult<GL, Silk.NET.Input.IInputContext> platform,
|
||||
HostInputCameraResult host,
|
||||
ContentEffectsAudioResult content,
|
||||
SettingsDevToolsResult settings,
|
||||
WorldRenderResult world,
|
||||
InteractionRetainedUiResult interaction)
|
||||
{
|
||||
ArgumentNullException.ThrowIfNull(platform);
|
||||
ArgumentNullException.ThrowIfNull(host);
|
||||
ArgumentNullException.ThrowIfNull(content);
|
||||
ArgumentNullException.ThrowIfNull(settings);
|
||||
ArgumentNullException.ThrowIfNull(world);
|
||||
ArgumentNullException.ThrowIfNull(interaction);
|
||||
if (!ReferenceEquals(_dependencies.Gl, platform.Graphics))
|
||||
{
|
||||
throw new InvalidOperationException(
|
||||
"Live-presentation dependencies do not match the ordered platform result.");
|
||||
}
|
||||
return ComposeCore(host, content, world, interaction);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue