/// <summary> /// Get the all endPoints for a connection with the given start point if existent /// </summary> /// <param name="inPoint"></param> /// <returns></returns> public List <IConnectionPoint> GetConnectionPoint(IConnectionPoint startPoint) { if (startPoint.GetConnectionType() != ConnectionPointType.In) { Debug.LogError("Unexpeted Connection point type"); } List <IConnectionPoint> outPoints = new List <IConnectionPoint>(); IEnumerable <Connection> conns = connections.Where(x => x.inPoint == startPoint); foreach (var connection in conns) { outPoints.Add(connection.outPoint); } return(outPoints); }
/// <summary> /// Get the startPoint for a connection with the given end point if existent /// </summary> /// <param name="inPoint"></param> /// <returns></returns> public IConnectionPoint GetConnectionStartPoint(IConnectionPoint endPoint) { if (endPoint.GetConnectionType() != ConnectionPointType.In) { Debug.LogError("Unexpeted Connection point type"); } IConnectionPoint outPoint = null; Connection con = connections.FirstOrDefault(x => x.outPoint == endPoint); if (con != null) { outPoint = con.inPoint; } return(outPoint); }