public override void OnPostExecute(Connector prevConnector) { base.OnPostExecute(prevConnector); NodeFlowPort port = NodeGraphManager.FindNodeFlowPort(this, "Output"); foreach (var connector in port.Connectors) { connector.OnPreExecute(); connector.OnExecute(); connector.OnPostExecute(); } }
public override void OnPostExecute(Connector prevConnector) { if (NodeExecutionState.Failed == ExecutionState) { return; } base.OnPostExecute(prevConnector); NodeFlowPort port = NodeGraphManager.FindNodeFlowPort(this, "Output"); foreach (var connector in port.Connectors) { connector.OnPreExecute(); connector.OnExecute(); connector.OnPostExecute(); } }
public override void OnExecute(Connector prevConnector) { base.OnExecute(prevConnector); NodePropertyPort portInputArray = NodeGraphManager.FindNodePropertyPort(this, "Array"); NodePropertyPort portArrayElement = NodeGraphManager.FindNodePropertyPort(this, "ArrayElement"); NodePropertyPort portArrayIndex = NodeGraphManager.FindNodePropertyPort(this, "ArrayIndex"); NodeFlowPort loopBodyPort = NodeGraphManager.FindNodeFlowPort(this, "LoopBody"); List <NodePort> connectedPorts; NodeGraphManager.FindConnectedPorts(portInputArray, out connectedPorts); ObservableCollection <object> array = portInputArray.Value as ObservableCollection <object>; if (1 == connectedPorts.Count) { NodePropertyPort portOutputArray = connectedPorts[0] as NodePropertyPort; array = portOutputArray.Value as ObservableCollection <object>; } Connector connector = (1 == loopBodyPort.Connectors.Count) ? loopBodyPort.Connectors[0] : null; if ((null != array) && (null != connector)) { for (int i = 0; i < array.Count; ++i) { portArrayIndex.Value = i; portArrayElement.Value = array[i]; connector.OnPreExecute(); connector.OnExecute(); connector.OnPostExecute(); } } }
public NodeFlowPortViewModel(NodeFlowPort nodeFlowPort) : base(nodeFlowPort) { }