IPictureDisp
using System;
using System.CodeDom.Compiler;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using Windows.Win32.Foundation;
using Windows.Win32.System.Com;
using Windows.Win32.System.Variant;
namespace Windows.Win32.System.Ole
{
[Guid("7BF80981-BF32-101A-8BBB-00AA00300CAB")]
[SupportedOSPlatform("windows5.0")]
[GeneratedCode("Microsoft.Windows.CsWin32", "0.3.151+58e949951d.RR")]
internal struct IPictureDisp : IVTable<IPictureDisp, IPictureDisp.Vtbl>, IVTable, IComIID
{
internal struct Vtbl
{
internal IntPtr QueryInterface_1;
internal IntPtr AddRef_2;
internal IntPtr Release_3;
internal IntPtr GetTypeInfoCount_4;
internal IntPtr GetTypeInfo_5;
internal IntPtr GetIDsOfNames_6;
internal IntPtr Invoke_7;
}
[ComImport]
[Guid("7BF80981-BF32-101A-8BBB-00AA00300CAB")]
[InterfaceType(ComInterfaceType.InterfaceIsIDispatch)]
[SupportedOSPlatform("windows5.0")]
internal interface Interface
{
}
private unsafe void** lpVtbl;
internal static readonly Guid IID_Guid = new Guid(2079852929, 48946, 4122, 139, 187, 0, 170, 0, 48, 12, 171);
[IsReadOnly]
static unsafe ref Guid IComIID.Guid {
[MethodImpl(MethodImplOptions.AggressiveInlining)]
[return: IsReadOnly]
get {
return ref Unsafe.As<byte, Guid>(ref MemoryMarshal.GetReference(new ReadOnlySpan<byte>(&global::<PrivateImplementationDetails>.5FA76D4D17F1AB4B91870CA88B28FAC619E80E4A9FA5E34B24305D1B00DD8D21, 16)));
}
}
internal unsafe HRESULT QueryInterface([In] [IsReadOnly] ref Guid riid, out void* ppvObject)
{
fixed (void** ppvObject2 = &ppvObject) {
fixed (Guid* riid2 = &riid) {
return QueryInterface(riid2, ppvObject2);
}
}
}
public unsafe HRESULT QueryInterface(Guid* riid, void** ppvObject)
{
IntPtr intPtr = (IntPtr)(*lpVtbl);
return (HRESULT);
}
public unsafe uint AddRef()
{
IntPtr intPtr = (IntPtr)lpVtbl[1];
return (uint);
}
public unsafe uint Release()
{
IntPtr intPtr = (IntPtr)lpVtbl[2];
return (uint);
}
internal unsafe HRESULT GetTypeInfoCount(out uint pctinfo)
{
fixed (uint* pctinfo2 = &pctinfo) {
return GetTypeInfoCount(pctinfo2);
}
}
public unsafe HRESULT GetTypeInfoCount(uint* pctinfo)
{
IntPtr intPtr = (IntPtr)lpVtbl[3];
return (HRESULT);
}
public unsafe HRESULT GetTypeInfo(uint iTInfo, uint lcid, ITypeInfo** ppTInfo)
{
IntPtr intPtr = (IntPtr)lpVtbl[4];
return (HRESULT);
}
internal unsafe HRESULT GetIDsOfNames([In] [IsReadOnly] ref Guid riid, ReadOnlySpan<PWSTR> rgszNames, uint lcid, Span<int> rgDispId)
{
fixed (int* rgDispId2 = &rgDispId.GetPinnableReference()) {
fixed (PWSTR* rgszNames2 = &rgszNames.GetPinnableReference()) {
fixed (Guid* riid2 = &riid) {
if (rgszNames.Length != rgDispId.Length)
throw new ArgumentException();
return GetIDsOfNames(riid2, rgszNames2, (uint)rgDispId.Length, lcid, rgDispId2);
}
}
}
}
public unsafe HRESULT GetIDsOfNames(Guid* riid, PWSTR* rgszNames, uint cNames, uint lcid, int* rgDispId)
{
IntPtr intPtr = (IntPtr)lpVtbl[5];
return (HRESULT);
}
internal unsafe HRESULT Invoke(int dispIdMember, [In] [IsReadOnly] ref Guid riid, uint lcid, DISPATCH_FLAGS wFlags, [In] [IsReadOnly] ref DISPPARAMS pDispParams, VARIANT* pVarResult, EXCEPINFO* pExcepInfo, uint* puArgErr)
{
fixed (DISPPARAMS* pDispParams2 = &pDispParams) {
fixed (Guid* riid2 = &riid) {
return Invoke(dispIdMember, riid2, lcid, wFlags, pDispParams2, pVarResult, pExcepInfo, puArgErr);
}
}
}
public unsafe HRESULT Invoke(int dispIdMember, Guid* riid, uint lcid, DISPATCH_FLAGS wFlags, DISPPARAMS* pDispParams, VARIANT* pVarResult = default(VARIANT*), EXCEPINFO* pExcepInfo = default(EXCEPINFO*), uint* puArgErr = default(uint*))
{
IntPtr intPtr = (IntPtr)lpVtbl[6];
return (HRESULT);
}
internal unsafe HRESULT QueryInterface<[IsUnmanaged] T>(out T* ppv) where T : struct
{
Guid riid = typeof(T).GUID;
void* ppvObject;
HRESULT result = QueryInterface(ref riid, out ppvObject);
if (result.Succeeded)
ppv = (T*)ppvObject;
else
ppv = null;
return result;
}
public unsafe static void PopulateVTable(Vtbl* vtable)
{
}
unsafe void IVTable<IPictureDisp, Vtbl>.PopulateVTable(Vtbl* vtable)
{
this.PopulateVTable(vtable);
}
}
}