/// <summary>To be documented.</summary> public readonly unsafe int GetResourceBindingDescByName(byte *Name, ref ShaderInputBindDesc pDesc) { var @this = (ID3D12ShaderReflection *)Unsafe.AsPointer(ref Unsafe.AsRef(in this)); int ret = default; fixed(ShaderInputBindDesc *pDescPtr = &pDesc) { ret = ((delegate * unmanaged[Cdecl] < ID3D12ShaderReflection *, byte *, ShaderInputBindDesc *, int >)LpVtbl[11])(@this, Name, pDescPtr); } return(ret); }
/// <summary>To be documented.</summary> public readonly int GetResourceBindingDesc(uint ResourceIndex, ref ShaderInputBindDesc pDesc) { var @this = (ID3D12ShaderReflection *)Unsafe.AsPointer(ref Unsafe.AsRef(in this)); int ret = default; fixed(ShaderInputBindDesc *pDescPtr = &pDesc) { ret = ((delegate * unmanaged[Cdecl] < ID3D12ShaderReflection *, uint, ShaderInputBindDesc *, int >)LpVtbl[6])(@this, ResourceIndex, pDescPtr); } return(ret); }
/// <summary>To be documented.</summary> public readonly int GetResourceBindingDescByName(string Name, ref ShaderInputBindDesc pDesc) { var @this = (ID3D12ShaderReflection *)Unsafe.AsPointer(ref Unsafe.AsRef(in this)); int ret = default; var NamePtr = (byte *)Marshal.StringToHGlobalAnsi(Name); fixed(ShaderInputBindDesc *pDescPtr = &pDesc) { ret = ((delegate * unmanaged[Cdecl] < ID3D12ShaderReflection *, byte *, ShaderInputBindDesc *, int >)LpVtbl[11])(@this, NamePtr, pDescPtr); } Marshal.FreeHGlobal((nint)NamePtr); return(ret); }