public static void UpdateActiveGraph(GraphNode[] graphNodes, NodeLinkInfo[] graphLinks)
        {
            links = graphLinks;
            nodes = StripUnusedNodes(graphNodes, graphLinks);

            BuildDependencyGraph(ActiveNodes, ActiveLinks);
            inputs       = FindStartLocations();
            staticData   = new DataStore(true);
            specialNodes = SpecialNodeSearch.CheckForSpecialNodes(dependencyGraph, staticData);
        }
예제 #2
0
        /// <summary>
        /// Initializes a standard Pipeline executor
        /// </summary>
        /// <param name="nodes">Nodes covered in the processing pipeline</param>
        /// <param name="staticData">Data that is generated once and remains static through multiple pipeline executors</param>
        /// <param name="specialNodes">Unique node information form the pipeline state</param>
        /// <param name="depth">the iteration of input that that is being processed</param>
        /// <param name="input">input path</param>
        /// <param name="output">output path</param>
        public PipelineExecutor(Dictionary <int, DependentNode> nodes, DataStore staticData, int depth, SpecialNodeData specialNodes, string input = "", string output = "")
        {
            dependencyGraph = nodes;
            data            = new DataStore(depth, output);
            this.staticData = staticData;
            ExtractSpecialNodeData(specialNodes.SyncInformation.SyncNodes);

            inputDirectory  = input;
            outputDirectory = output;
            this.depth      = depth;
        }