Exemplo n.º 1
0
        public static bool ContainsCutOrConnectedSpanSegments(this SpanStructure spanStructure)
        {
            if (spanStructure.SpanSegments == null && spanStructure.SpanSegments.Length == 0)
            {
                return(false);
            }

            if (spanStructure.SpanSegments.Length == 1 && spanStructure.SpanSegments[0].FromTerminalId == Guid.Empty && spanStructure.SpanSegments[0].ToTerminalId == Guid.Empty)
            {
                return(false);
            }

            return(true);
        }
        private SpanSegment GetIngoingOrOutgoingSpanSegment(SpanEquipmentViewModel spanEquipmentView, SpanStructure spanStructure)
        {
            foreach (var spanSegment in spanStructure.SpanSegments)
            {
                var spanSegmentFromRouteNodeId = spanEquipmentView.SpanEquipment.NodesOfInterestIds[spanSegment.FromNodeOfInterestIndex];
                var spanSegmentToRouteNodeId   = spanEquipmentView.SpanEquipment.NodesOfInterestIds[spanSegment.ToNodeOfInterestIndex];

                if (spanSegmentToRouteNodeId == spanEquipmentView.RouteNetworkElementIdOfInterest)
                {
                    return(spanSegment);
                }
                else if (spanSegmentFromRouteNodeId == spanEquipmentView.RouteNetworkElementIdOfInterest)
                {
                    return(spanSegment);
                }
            }

            return(null);
        }