/// <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);
        }
Пример #2
0
        // 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));
        }
Пример #3
0
        /// <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);
        }