Пример #1
0
        public virtual int SetOutputSignature(
            ref _D3D11_PARAMETER_DESC pOutputParameters,
            uint cOutputParameters,
            out ID3D11LinkingNode ppOutputNode
            )
        {
            var fp = GetFunctionPointer(5);

            if (m_SetOutputSignatureFunc == null)
            {
                m_SetOutputSignatureFunc = (SetOutputSignatureFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(SetOutputSignatureFunc));
            }
            ppOutputNode = new ID3D11LinkingNode();
            return(m_SetOutputSignatureFunc(m_ptr, ref pOutputParameters, cOutputParameters, out ppOutputNode.PtrForNew));
        }
Пример #2
0
        public virtual int PassValue(
            ID3D11LinkingNode pSrcNode,
            int SrcParameterIndex,
            ID3D11LinkingNode pDstNode,
            int DstParameterIndex
            )
        {
            var fp = GetFunctionPointer(7);

            if (m_PassValueFunc == null)
            {
                m_PassValueFunc = (PassValueFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(PassValueFunc));
            }

            return(m_PassValueFunc(m_ptr, pSrcNode != null ? pSrcNode.Ptr : IntPtr.Zero, SrcParameterIndex, pDstNode != null ? pDstNode.Ptr : IntPtr.Zero, DstParameterIndex));
        }
Пример #3
0
        public virtual int CallFunction(
            string pModuleInstanceNamespace,
            ID3D11Module pModuleWithFunctionPrototype,
            string pFunctionName,
            out ID3D11LinkingNode ppCallNode
            )
        {
            var fp = GetFunctionPointer(6);

            if (m_CallFunctionFunc == null)
            {
                m_CallFunctionFunc = (CallFunctionFunc)Marshal.GetDelegateForFunctionPointer(fp, typeof(CallFunctionFunc));
            }
            ppCallNode = new ID3D11LinkingNode();
            return(m_CallFunctionFunc(m_ptr, pModuleInstanceNamespace, pModuleWithFunctionPrototype != null ? pModuleWithFunctionPrototype.Ptr : IntPtr.Zero, pFunctionName, out ppCallNode.PtrForNew));
        }