mirror of
https://github.com/amerkoleci/Vortice.Win32.git
synced 2026-01-14 08:06:02 +08:00
84 lines
3.4 KiB
C#
84 lines
3.4 KiB
C#
// Copyright © Amer Koleci and Contributors.
|
|
// Licensed under the MIT License (MIT). See LICENSE in the repository root for more information.
|
|
|
|
using Win32.Graphics.Dxgi.Common;
|
|
using static Win32.Graphics.Direct3D12.Apis;
|
|
|
|
namespace Win32.Graphics.Direct3D12;
|
|
|
|
public unsafe partial struct VersionedRootSignatureDescription
|
|
{
|
|
public VersionedRootSignatureDescription(in RootSignatureDescription other)
|
|
{
|
|
Unsafe.SkipInit(out this);
|
|
|
|
Version = RootSignatureVersion.V1_0;
|
|
Anonymous.Desc_1_0 = other;
|
|
}
|
|
|
|
public VersionedRootSignatureDescription(in RootSignatureDescription1 other)
|
|
{
|
|
Unsafe.SkipInit(out this);
|
|
|
|
Version = RootSignatureVersion.V1_1;
|
|
Anonymous.Desc_1_1 = other;
|
|
}
|
|
|
|
public VersionedRootSignatureDescription(uint numParameters, RootParameter* _pParameters, uint numStaticSamplers = 0, StaticSamplerDescription* _pStaticSamplers = null, RootSignatureFlags flags = RootSignatureFlags.None)
|
|
{
|
|
Init_1_0(out this, numParameters, _pParameters, numStaticSamplers, _pStaticSamplers, flags);
|
|
}
|
|
|
|
public VersionedRootSignatureDescription(uint numParameters, RootParameter1* _pParameters, uint numStaticSamplers = 0, StaticSamplerDescription* _pStaticSamplers = null, RootSignatureFlags flags = RootSignatureFlags.None)
|
|
{
|
|
Init_1_1(out this, numParameters, _pParameters, numStaticSamplers, _pStaticSamplers, flags);
|
|
}
|
|
|
|
public void Init_1_0(
|
|
uint numParameters, RootParameter* parameters,
|
|
uint numStaticSamplers = 0, StaticSamplerDescription* staticSamplers = null,
|
|
RootSignatureFlags flags = RootSignatureFlags.None)
|
|
{
|
|
Init_1_0(out this, numParameters, parameters, numStaticSamplers, staticSamplers, flags);
|
|
}
|
|
|
|
public static void Init_1_0(out VersionedRootSignatureDescription desc,
|
|
uint numParameters, RootParameter* parameters,
|
|
uint numStaticSamplers = 0, StaticSamplerDescription* staticSamplers = null,
|
|
RootSignatureFlags flags = RootSignatureFlags.None)
|
|
{
|
|
desc = default;
|
|
|
|
desc.Version = RootSignatureVersion.V1_0;
|
|
desc.Anonymous.Desc_1_0.NumParameters = numParameters;
|
|
desc.Anonymous.Desc_1_0.pParameters = parameters;
|
|
desc.Anonymous.Desc_1_0.NumStaticSamplers = numStaticSamplers;
|
|
desc.Anonymous.Desc_1_0.pStaticSamplers = staticSamplers;
|
|
desc.Anonymous.Desc_1_0.Flags = flags;
|
|
}
|
|
|
|
public void Init_1_1(
|
|
uint numParameters, RootParameter1* parameters,
|
|
uint numStaticSamplers = 0, StaticSamplerDescription* staticSamplers = null,
|
|
RootSignatureFlags flags = RootSignatureFlags.None)
|
|
{
|
|
Init_1_1(out this, numParameters, parameters, numStaticSamplers, staticSamplers, flags);
|
|
}
|
|
|
|
public static void Init_1_1(
|
|
out VersionedRootSignatureDescription desc,
|
|
uint numParameters, RootParameter1* parameters,
|
|
uint numStaticSamplers = 0, StaticSamplerDescription* staticSamplers = null,
|
|
RootSignatureFlags flags = RootSignatureFlags.None)
|
|
{
|
|
desc = default;
|
|
|
|
desc.Version = RootSignatureVersion.V1_1;
|
|
desc.Anonymous.Desc_1_1.NumParameters = numParameters;
|
|
desc.Anonymous.Desc_1_1.pParameters = parameters;
|
|
desc.Anonymous.Desc_1_1.NumStaticSamplers = numStaticSamplers;
|
|
desc.Anonymous.Desc_1_1.pStaticSamplers = staticSamplers;
|
|
desc.Anonymous.Desc_1_1.Flags = flags;
|
|
}
|
|
}
|