mirror of
https://github.com/amerkoleci/Vortice.Win32.git
synced 2026-01-14 16:16:04 +08:00
99 lines
2.9 KiB
C#
99 lines
2.9 KiB
C#
// ------------------------------------------------------------------------------
|
|
// <auto-generated>
|
|
// This code was generated by a tool.
|
|
//
|
|
// Changes to this file may cause incorrect behavior and will be lost if
|
|
// the code is regenerated.
|
|
// </auto-generated>
|
|
// ------------------------------------------------------------------------------
|
|
|
|
namespace Win32.Graphics.Direct3D;
|
|
|
|
/// <include file='../Direct3D.xml' path='doc/member[@name="ID3DBlob"]/*' />
|
|
/// <unmanaged>ID3DBlob</unmanaged>
|
|
[Guid("8ba5fb08-5195-40e2-ac58-0d989c3a0102")]
|
|
[NativeTypeName("struct ID3DBlob : IUnknown")]
|
|
[NativeInheritance("IUnknown")]
|
|
public unsafe partial struct ID3DBlob : ID3DBlob.Interface, INativeGuid
|
|
{
|
|
public static ref readonly Guid IID_ID3DBlob
|
|
{
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
get
|
|
{
|
|
ReadOnlySpan<byte> data = [
|
|
0x08, 0xFB, 0xA5, 0x8B,
|
|
0x95, 0x51,
|
|
0xE2, 0x40,
|
|
0xAC,
|
|
0x58,
|
|
0x0D,
|
|
0x98,
|
|
0x9C,
|
|
0x3A,
|
|
0x01,
|
|
0x02
|
|
];
|
|
|
|
Debug.Assert(data.Length == Unsafe.SizeOf<Guid>());
|
|
return ref Unsafe.As<byte, Guid>(ref MemoryMarshal.GetReference(data));
|
|
}
|
|
}
|
|
|
|
static Guid* INativeGuid.NativeGuid => (Guid*)Unsafe.AsPointer(ref Unsafe.AsRef(in IID_ID3DBlob));
|
|
|
|
public void** lpVtbl;
|
|
|
|
/// <inheritdoc cref="IUnknown.QueryInterface" />
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
[VtblIndex(0)]
|
|
public HResult QueryInterface([NativeTypeName("const IID &")] Guid* riid, void** ppvObject)
|
|
{
|
|
return ((delegate* unmanaged[MemberFunction]<ID3DBlob*, Guid*, void**, int>)(lpVtbl[0]))((ID3DBlob*)Unsafe.AsPointer(ref this), riid, ppvObject);
|
|
}
|
|
|
|
/// <inheritdoc cref="IUnknown.AddRef" />
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
[VtblIndex(1)]
|
|
[return: NativeTypeName("ULONG")]
|
|
public uint AddRef()
|
|
{
|
|
return ((delegate* unmanaged[MemberFunction]<ID3DBlob*, uint>)(lpVtbl[1]))((ID3DBlob*)Unsafe.AsPointer(ref this));
|
|
}
|
|
|
|
/// <inheritdoc cref="IUnknown.Release" />
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
[VtblIndex(2)]
|
|
[return: NativeTypeName("ULONG")]
|
|
public uint Release()
|
|
{
|
|
return ((delegate* unmanaged[MemberFunction]<ID3DBlob*, uint>)(lpVtbl[2]))((ID3DBlob*)Unsafe.AsPointer(ref this));
|
|
}
|
|
|
|
/// <include file='../Direct3D.xml' path='doc/member[@name="ID3DBlob::GetBufferPointer"]/*' />
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
[VtblIndex(3)]
|
|
public void* GetBufferPointer()
|
|
{
|
|
return ((delegate* unmanaged[MemberFunction]<ID3DBlob*, void*>)(lpVtbl[3]))((ID3DBlob*)Unsafe.AsPointer(ref this));
|
|
}
|
|
|
|
/// <include file='../Direct3D.xml' path='doc/member[@name="ID3DBlob::GetBufferSize"]/*' />
|
|
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
[VtblIndex(4)]
|
|
public nuint GetBufferSize()
|
|
{
|
|
return ((delegate* unmanaged[MemberFunction]<ID3DBlob*, nuint>)(lpVtbl[4]))((ID3DBlob*)Unsafe.AsPointer(ref this));
|
|
}
|
|
|
|
public interface Interface : IUnknown.Interface
|
|
{
|
|
[VtblIndex(3)]
|
|
void* GetBufferPointer();
|
|
|
|
[VtblIndex(4)]
|
|
nuint GetBufferSize();
|
|
}
|
|
}
|
|
|