/// <summary>To be documented.</summary> public readonly unsafe int GetDevice(IDirect3DDevice9 **ppDevice) { var @this = (IDirect3DSwapChain9 *)Unsafe.AsPointer(ref Unsafe.AsRef(in this)); int ret = default; ret = ((delegate * unmanaged[Cdecl] < IDirect3DSwapChain9 *, IDirect3DDevice9 **, int >)LpVtbl[8])(@this, ppDevice); return(ret); }
// ReSharper disable once UnusedMethodReturnValue.Local private static int IDirect3D9_CreateDevice(IDirect3D9 *p, uint Adapter, uint DeviceType, IntPtr hFocusWindow, uint BehaviorFlags, D3DPRESENT_PARAMETERS *pPresentationParameters, IDirect3DDevice9 **ppReturnedDeviceInterface) { var lpIDirect3D9_CreateDevice = (DelegateIDirect3D9_CreateDevice)Marshal.GetDelegateForFunctionPointer(p->lpVtbl[16], typeof(DelegateIDirect3D9_CreateDevice)); return(lpIDirect3D9_CreateDevice(p, Adapter, DeviceType, hFocusWindow, BehaviorFlags, (IntPtr)pPresentationParameters, (IntPtr)ppReturnedDeviceInterface)); }
/// <summary>To be documented.</summary> public readonly unsafe int CreateDevice(uint Adapter, Devtype DeviceType, nint hFocusWindow, uint BehaviorFlags, ref PresentParameters pPresentationParameters, IDirect3DDevice9 **ppReturnedDeviceInterface) { var @this = (IDirect3D9 *)Unsafe.AsPointer(ref Unsafe.AsRef(in this)); int ret = default; fixed(PresentParameters *pPresentationParametersPtr = &pPresentationParameters) { ret = ((delegate * unmanaged[Cdecl] < IDirect3D9 *, uint, Devtype, nint, uint, PresentParameters *, IDirect3DDevice9 **, int >)LpVtbl[16])(@this, Adapter, DeviceType, hFocusWindow, BehaviorFlags, pPresentationParametersPtr, ppReturnedDeviceInterface); } return(ret); }