Beispiel #1
0
        public virtual int GetContainingOutput(
            out IDXGIOutput ppOutput
            )
        {
            var fp = GetFunctionPointer(15);

            if (m_GetContainingOutputFunc == null)
            {
                m_GetContainingOutputFunc = (GetContainingOutputFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(GetContainingOutputFunc));
            }
            ppOutput = new IDXGIOutput();
            return(m_GetContainingOutputFunc(m_ptr, out ppOutput.PtrForNew));
        }
Beispiel #2
0
        public virtual int EnumOutputs(
            uint Output,
            out IDXGIOutput ppOutput
            )
        {
            var fp = GetFunctionPointer(7);

            if (m_EnumOutputsFunc == null)
            {
                m_EnumOutputsFunc = (EnumOutputsFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(EnumOutputsFunc));
            }
            ppOutput = new IDXGIOutput();
            return(m_EnumOutputsFunc(m_ptr, Output, out ppOutput.PtrForNew));
        }
Beispiel #3
0
        public virtual int GetFullscreenState(
            out int pFullscreen,
            out IDXGIOutput ppTarget
            )
        {
            var fp = GetFunctionPointer(11);

            if (m_GetFullscreenStateFunc == null)
            {
                m_GetFullscreenStateFunc = (GetFullscreenStateFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(GetFullscreenStateFunc));
            }
            ppTarget = new IDXGIOutput();
            return(m_GetFullscreenStateFunc(m_ptr, out pFullscreen, out ppTarget.PtrForNew));
        }
Beispiel #4
0
        public virtual int SetFullscreenState(
            int Fullscreen,
            IDXGIOutput pTarget
            )
        {
            var fp = GetFunctionPointer(10);

            if (m_SetFullscreenStateFunc == null)
            {
                m_SetFullscreenStateFunc = (SetFullscreenStateFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(SetFullscreenStateFunc));
            }

            return(m_SetFullscreenStateFunc(m_ptr, Fullscreen, pTarget != null ? pTarget.Ptr : IntPtr.Zero));
        }
Beispiel #5
0
        public virtual int CreateSwapChainForComposition(
            IUnknown pDevice,
            ref DXGI_SWAP_CHAIN_DESC1 pDesc,
            IDXGIOutput pRestrictToOutput,
            out IDXGISwapChain1 ppSwapChain
            )
        {
            var fp = GetFunctionPointer(24);

            if (m_CreateSwapChainForCompositionFunc == null)
            {
                m_CreateSwapChainForCompositionFunc = (CreateSwapChainForCompositionFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CreateSwapChainForCompositionFunc));
            }
            ppSwapChain = new IDXGISwapChain1();
            return(m_CreateSwapChainForCompositionFunc(m_ptr, pDevice != null ? pDevice.Ptr : IntPtr.Zero, ref pDesc, pRestrictToOutput != null ? pRestrictToOutput.Ptr : IntPtr.Zero, out ppSwapChain.PtrForNew));
        }
Beispiel #6
0
        public virtual int CreateSwapChainForHwnd(
            IUnknown pDevice,
            IntPtr hWnd,
            ref DXGI_SWAP_CHAIN_DESC1 pDesc,
            ref DXGI_SWAP_CHAIN_FULLSCREEN_DESC pFullscreenDesc,
            IDXGIOutput pRestrictToOutput,
            out IDXGISwapChain1 ppSwapChain
            )
        {
            var fp = GetFunctionPointer(15);

            if (m_CreateSwapChainForHwndFunc == null)
            {
                m_CreateSwapChainForHwndFunc = (CreateSwapChainForHwndFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CreateSwapChainForHwndFunc));
            }
            ppSwapChain = new IDXGISwapChain1();
            return(m_CreateSwapChainForHwndFunc(m_ptr, pDevice != null ? pDevice.Ptr : IntPtr.Zero, hWnd, ref pDesc, ref pFullscreenDesc, pRestrictToOutput != null ? pRestrictToOutput.Ptr : IntPtr.Zero, out ppSwapChain.PtrForNew));
        }
Beispiel #7
0
        public virtual int CreateDecodeSwapChainForCompositionSurfaceHandle(
            IUnknown pDevice,
            IntPtr hSurface,
            out DXGI_DECODE_SWAP_CHAIN_DESC pDesc,
            IDXGIResource pYuvDecodeBuffers,
            IDXGIOutput pRestrictToOutput,
            out IDXGIDecodeSwapChain ppSwapChain
            )
        {
            var fp = GetFunctionPointer(4);

            if (m_CreateDecodeSwapChainForCompositionSurfaceHandleFunc == null)
            {
                m_CreateDecodeSwapChainForCompositionSurfaceHandleFunc = (CreateDecodeSwapChainForCompositionSurfaceHandleFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CreateDecodeSwapChainForCompositionSurfaceHandleFunc));
            }
            ppSwapChain = new IDXGIDecodeSwapChain();
            return(m_CreateDecodeSwapChainForCompositionSurfaceHandleFunc(m_ptr, pDevice != null ? pDevice.Ptr : IntPtr.Zero, hSurface, out pDesc, pYuvDecodeBuffers != null ? pYuvDecodeBuffers.Ptr : IntPtr.Zero, pRestrictToOutput != null ? pRestrictToOutput.Ptr : IntPtr.Zero, out ppSwapChain.PtrForNew));
        }