// ------------------------------------------------------------------------------ // // This code was generated by a tool. // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. // // ------------------------------------------------------------------------------ namespace Win32.Graphics.Direct3D12; /// /// ID3D12ShaderReflection [Guid("5a58797d-a72c-478d-8ba2-efc6b0efe88e")] [NativeTypeName("struct ID3D12ShaderReflection : IUnknown")] [NativeInheritance("IUnknown")] public unsafe partial struct ID3D12ShaderReflection : ID3D12ShaderReflection.Interface, INativeGuid { public static ref readonly Guid IID_ID3D12ShaderReflection { [MethodImpl(MethodImplOptions.AggressiveInlining)] get { ReadOnlySpan data = new byte[] { 0x7D, 0x79, 0x58, 0x5A, 0x2C, 0xA7, 0x8D, 0x47, 0x8B, 0xA2, 0xEF, 0xC6, 0xB0, 0xEF, 0xE8, 0x8E }; Debug.Assert(data.Length == Unsafe.SizeOf()); return ref Unsafe.As(ref MemoryMarshal.GetReference(data)); } } #if NET6_0_OR_GREATER static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ID3D12ShaderReflection)); #else public static Guid* NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ID3D12ShaderReflection)); #endif public void** lpVtbl; /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(0)] public HResult QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[0]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), riid, ppvObject); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[0]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), riid, ppvObject); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(1)] [return: NativeTypeName("ULONG")] public uint AddRef() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[1]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[1]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(2)] [return: NativeTypeName("ULONG")] public uint Release() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[2]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[2]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(3)] public HResult GetDesc(ShaderDescription* pDesc) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[3]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), pDesc); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[3]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), pDesc); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(4)] public ID3D12ShaderReflectionConstantBuffer* GetConstantBufferByIndex(uint Index) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[4]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Index); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[4]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Index); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(5)] public ID3D12ShaderReflectionConstantBuffer* GetConstantBufferByName(sbyte* Name) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[5]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Name); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[5]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Name); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(6)] public HResult GetResourceBindingDesc(uint ResourceIndex, ShaderInputBindDescription* pDesc) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[6]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ResourceIndex, pDesc); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[6]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ResourceIndex, pDesc); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(7)] public HResult GetInputParameterDesc(uint ParameterIndex, SignatureParameterDescription* pDesc) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[7]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ParameterIndex, pDesc); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[7]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ParameterIndex, pDesc); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(8)] public HResult GetOutputParameterDesc(uint ParameterIndex, SignatureParameterDescription* pDesc) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[8]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ParameterIndex, pDesc); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[8]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ParameterIndex, pDesc); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(9)] public HResult GetPatchConstantParameterDesc(uint ParameterIndex, SignatureParameterDescription* pDesc) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[9]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ParameterIndex, pDesc); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[9]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), ParameterIndex, pDesc); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(10)] public ID3D12ShaderReflectionVariable* GetVariableByName(sbyte* Name) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[10]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Name); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[10]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Name); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(11)] public HResult GetResourceBindingDescByName(sbyte* Name, ShaderInputBindDescription* pDesc) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[11]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Name, pDesc); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[11]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), Name, pDesc); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(12)] public uint GetMovInstructionCount() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[12]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[12]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(13)] public uint GetMovcInstructionCount() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[13]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[13]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(14)] public uint GetConversionInstructionCount() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[14]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[14]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(15)] public uint GetBitwiseInstructionCount() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[15]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[15]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(16)] public Graphics.Direct3D.Primitive GetGSInputPrimitive() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[16]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[16]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(17)] public Bool32 IsSampleFrequencyShader() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[17]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[17]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(18)] public uint GetNumInterfaceSlots() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[18]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[18]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(19)] public HResult GetMinFeatureLevel(Graphics.Direct3D.FeatureLevel* pLevel) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[19]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), pLevel); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[19]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), pLevel); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(20)] public uint GetThreadGroupSize(uint* pSizeX, uint* pSizeY, uint* pSizeZ) { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[20]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), pSizeX, pSizeY, pSizeZ); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[20]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this), pSizeX, pSizeY, pSizeZ); #endif } /// [MethodImpl(MethodImplOptions.AggressiveInlining)] [VtblIndex(21)] public ulong GetRequiresFlags() { #if NET6_0_OR_GREATER return ((delegate* unmanaged)(lpVtbl[21]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #else return ((delegate* unmanaged[Stdcall])(lpVtbl[21]))((ID3D12ShaderReflection*)Unsafe.AsPointer(ref this)); #endif } public interface Interface : IUnknown.Interface { [VtblIndex(3)] HResult GetDesc(ShaderDescription* pDesc); [VtblIndex(4)] ID3D12ShaderReflectionConstantBuffer* GetConstantBufferByIndex(uint Index); [VtblIndex(5)] ID3D12ShaderReflectionConstantBuffer* GetConstantBufferByName(sbyte* Name); [VtblIndex(6)] HResult GetResourceBindingDesc(uint ResourceIndex, ShaderInputBindDescription* pDesc); [VtblIndex(7)] HResult GetInputParameterDesc(uint ParameterIndex, SignatureParameterDescription* pDesc); [VtblIndex(8)] HResult GetOutputParameterDesc(uint ParameterIndex, SignatureParameterDescription* pDesc); [VtblIndex(9)] HResult GetPatchConstantParameterDesc(uint ParameterIndex, SignatureParameterDescription* pDesc); [VtblIndex(10)] ID3D12ShaderReflectionVariable* GetVariableByName(sbyte* Name); [VtblIndex(11)] HResult GetResourceBindingDescByName(sbyte* Name, ShaderInputBindDescription* pDesc); [VtblIndex(12)] uint GetMovInstructionCount(); [VtblIndex(13)] uint GetMovcInstructionCount(); [VtblIndex(14)] uint GetConversionInstructionCount(); [VtblIndex(15)] uint GetBitwiseInstructionCount(); [VtblIndex(16)] Graphics.Direct3D.Primitive GetGSInputPrimitive(); [VtblIndex(17)] Bool32 IsSampleFrequencyShader(); [VtblIndex(18)] uint GetNumInterfaceSlots(); [VtblIndex(19)] HResult GetMinFeatureLevel(Graphics.Direct3D.FeatureLevel* pLevel); [VtblIndex(20)] uint GetThreadGroupSize(uint* pSizeX, uint* pSizeY, uint* pSizeZ); [VtblIndex(21)] ulong GetRequiresFlags(); } }