Example #1
0
        public virtual int CreateDxgiSurfaceRenderTarget(
            IDXGISurface dxgiSurface,
            ref D2D1_RENDER_TARGET_PROPERTIES renderTargetProperties,
            out ID2D1RenderTarget renderTarget
            )
        {
            var fp = GetFunctionPointer(15);

            if (m_CreateDxgiSurfaceRenderTargetFunc == null)
            {
                m_CreateDxgiSurfaceRenderTargetFunc = (CreateDxgiSurfaceRenderTargetFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CreateDxgiSurfaceRenderTargetFunc));
            }
            renderTarget = new ID2D1RenderTarget();
            return(m_CreateDxgiSurfaceRenderTargetFunc(m_ptr, dxgiSurface != null ? dxgiSurface.Ptr : IntPtr.Zero, ref renderTargetProperties, out renderTarget.PtrForNew));
        }
Example #2
0
        public virtual int CopyFromRenderTarget(
            ref D2D_POINT_2U destPoint,
            ID2D1RenderTarget renderTarget,
            ref D2D_RECT_U srcRect
            )
        {
            var fp = GetFunctionPointer(9);

            if (m_CopyFromRenderTargetFunc == null)
            {
                m_CopyFromRenderTargetFunc = (CopyFromRenderTargetFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CopyFromRenderTargetFunc));
            }

            return(m_CopyFromRenderTargetFunc(m_ptr, ref destPoint, renderTarget != null ? renderTarget.Ptr : IntPtr.Zero, ref srcRect));
        }
Example #3
0
        public virtual int CreateWicBitmapRenderTarget(
            IWICBitmap target,
            ref D2D1_RENDER_TARGET_PROPERTIES renderTargetProperties,
            out ID2D1RenderTarget renderTarget
            )
        {
            var fp = GetFunctionPointer(13);

            if (m_CreateWicBitmapRenderTargetFunc == null)
            {
                m_CreateWicBitmapRenderTargetFunc = (CreateWicBitmapRenderTargetFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CreateWicBitmapRenderTargetFunc));
            }
            renderTarget = new ID2D1RenderTarget();
            return(m_CreateWicBitmapRenderTargetFunc(m_ptr, target != null ? target.Ptr : IntPtr.Zero, ref renderTargetProperties, out renderTarget.PtrForNew));
        }