コード例 #1
0
ファイル: DX11GraphBuilder.cs プロジェクト: vnmone/dx11-vvvv
        private bool SetLink(IPin sink, IPin source, bool frompending)
        {
            DX11Node sinknode   = this.graph.FindNode(sink.ParentNode);
            DX11Node sourcenode = this.graph.FindNode(source.ParentNode);

            if (sinknode != null && sourcenode != null)
            {
                DX11InputPin  sinkpin   = sinknode.GetInput(sink.Name);
                DX11OutputPin sourcepin = sourcenode.GetOutput(source.Name);
                sinkpin.Connect(sourcepin);

                //Since we managed to connect, check if it exists in pending list and remove

                if (!frompending)
                {
                    if (this.pendinglinks.ContainsKey(sink))
                    {
                        this.pendinglinks.Remove(sink);
                    }
                }

                return(true);
            }
            else
            {
                return(false);
            }
        }
コード例 #2
0
ファイル: DX11GraphBuilder.cs プロジェクト: vnmone/dx11-vvvv
        private void UnSetLink(IPin sink, IPin source)
        {
            DX11Node sinknode   = this.graph.FindNode(sink.ParentNode);
            DX11Node sourcenode = this.graph.FindNode(source.ParentNode);

            if (sinknode != null && sourcenode != null)
            {
                DX11InputPin  sinkpin   = sinknode.GetInput(sink.Name);
                DX11OutputPin sourcepin = sourcenode.GetOutput(source.Name);

                sinkpin.Disconnect(sourcepin);
            }
        }