/// <summary> /// Receive an incoming connection from an output node /// </summary> /// <param name="output">The output node to connect.</param> /// <returns> /// True if the extensions/connection types match /// and the connection was made. /// </returns> public virtual bool RecieveConnection(BaseOutputNode output) { logger.Info("Entered OutputNode: {0}", output.GetDisplayName()); if (IsConnected()) { if (Connector == output) { return(true); } else { return(false); } } if (this.CanConnectTo(output)) { Connector = output; if (this.OnConnected == null) { logger.Warn("OnConnected is null"); } this.OnConnected?.Invoke(); return(true); } return(false); }
protected void AddOutputNode(BaseOutputNode node) { node.OnConnected += OnNodeConnected; node.OnDisconnect += OnNodeDisconnected; OutputNodes.Add(node); OnNodeAdded?.Invoke(this, node); }