@@ -223,7 +223,7 @@ void wireUpStops() {
223
223
224
224
EdgeIteratorState exitEdge = graph .edge (stopExitNode , streetNode );
225
225
exitEdge .setFlags (encoder .setAccess (exitEdge .getFlags (), true , false ));
226
- setEdgeType (exitEdge , GtfsStorage .EdgeType .EXIT_PT );
226
+ setEdgeTypeAndClearDistance (exitEdge , GtfsStorage .EdgeType .EXIT_PT );
227
227
exitEdge .setFlags (encoder .setValidityId (exitEdge .getFlags (), route .route_type ));
228
228
exitEdge .setName (stop .stop_name );
229
229
gtfsStorage .getRoutes ().put (exitEdge .getEdge (), routeId );
@@ -245,7 +245,7 @@ void wireUpStops() {
245
245
246
246
EdgeIteratorState entryEdge = graph .edge (streetNode , stopEnterNode );
247
247
entryEdge .setFlags (encoder .setAccess (entryEdge .getFlags (), true , false ));
248
- setEdgeType (entryEdge , GtfsStorage .EdgeType .ENTER_PT );
248
+ setEdgeTypeAndClearDistance (entryEdge , GtfsStorage .EdgeType .ENTER_PT );
249
249
entryEdge .setFlags (encoder .setValidityId (entryEdge .getFlags (), route .route_type ));
250
250
entryEdge .setName (stop .stop_name );
251
251
gtfsStorage .getRoutes ().put (entryEdge .getEdge (), routeId );
@@ -275,15 +275,15 @@ void wireUpAdditionalDepartures(ZoneId zoneId) {
275
275
Fun .Tuple2 <Integer , Integer > before = headSet .last ();
276
276
EdgeIteratorState edge = graph .edge (before .b , timelineNode .b );
277
277
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
278
- setEdgeType (edge , GtfsStorage .EdgeType .WAIT );
278
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .WAIT );
279
279
edge .setFlags (encoder .setTime (edge .getFlags (), timelineNode .a -before .a ));
280
280
}
281
281
SortedSet <Fun .Tuple2 <Integer , Integer >> tailSet = staticTimelineNodesForRoute .tailSet (timelineNode );
282
282
if (!tailSet .isEmpty ()) {
283
283
Fun .Tuple2 <Integer , Integer > after = tailSet .first ();
284
284
EdgeIteratorState edge = graph .edge (timelineNode .b , after .b );
285
285
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
286
- setEdgeType (edge , GtfsStorage .EdgeType .WAIT );
286
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .WAIT );
287
287
edge .setFlags (encoder .setTime (edge .getFlags (), after .a -timelineNode .a ));
288
288
289
289
// System.out.println(" "+ after);
@@ -298,7 +298,7 @@ void wireUpAdditionalDepartures(ZoneId zoneId) {
298
298
299
299
EdgeIteratorState edge = graph .edge (platformNode , timelineNode .b );
300
300
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
301
- setEdgeType (edge , GtfsStorage .EdgeType .ENTER_TIME_EXPANDED_NETWORK );
301
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .ENTER_TIME_EXPANDED_NETWORK );
302
302
edge .setFlags (encoder .setTime (edge .getFlags (), timelineNode .a ));
303
303
setFeedIdWithTimezone (edge , new GtfsStorage .FeedIdWithTimezone (id , zoneId ));
304
304
});
@@ -308,7 +308,7 @@ void wireUpAdditionalDepartures(ZoneId zoneId) {
308
308
nodeAccess .setAdditionalNodeField (stopEnterNode , NodeType .STOP_ENTER_NODE .ordinal ());
309
309
EdgeIteratorState entryEdge = graph .edge (stationNode , stopEnterNode );
310
310
entryEdge .setFlags (encoder .setAccess (entryEdge .getFlags (), true , false ));
311
- setEdgeType (entryEdge , GtfsStorage .EdgeType .ENTER_PT );
311
+ setEdgeTypeAndClearDistance (entryEdge , GtfsStorage .EdgeType .ENTER_PT );
312
312
entryEdge .setName (stop .stop_name );
313
313
NavigableSet <Fun .Tuple2 <Integer , Integer >> timeNodes = sorted (timelineNodesWithTripId );
314
314
wireUpAndAndConnectDepartureTimeline (stop , routeId ,stopEnterNode , timeNodes );
@@ -324,7 +324,7 @@ void wireUpAdditionalDepartures(ZoneId zoneId) {
324
324
realtimeTimelineIterator .forEachRemaining (timelineNode -> {
325
325
EdgeIteratorState edge = graph .edge (timelineNode .b , platformNode );
326
326
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
327
- setEdgeType (edge , GtfsStorage .EdgeType .LEAVE_TIME_EXPANDED_NETWORK );
327
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .LEAVE_TIME_EXPANDED_NETWORK );
328
328
edge .setFlags (encoder .setTime (edge .getFlags (), timelineNode .a ));
329
329
setFeedIdWithTimezone (edge , new GtfsStorage .FeedIdWithTimezone (id , zoneId ));
330
330
});
@@ -334,7 +334,7 @@ void wireUpAdditionalDepartures(ZoneId zoneId) {
334
334
nodeAccess .setAdditionalNodeField (stopExitNode , NodeType .STOP_EXIT_NODE .ordinal ());
335
335
EdgeIteratorState exitEdge = graph .edge (stopExitNode , stationNode );
336
336
exitEdge .setFlags (encoder .setAccess (exitEdge .getFlags (), true , false ));
337
- setEdgeType (exitEdge , GtfsStorage .EdgeType .EXIT_PT );
337
+ setEdgeTypeAndClearDistance (exitEdge , GtfsStorage .EdgeType .EXIT_PT );
338
338
exitEdge .setName (stop .stop_name );
339
339
wireUpAndAndConnectArrivalTimeline (stop , routeId ,stopExitNode , timeNodes );
340
340
}
@@ -460,7 +460,7 @@ void addTrip(ZoneId zoneId, int time, List<TripWithStopTimeAndArrivalNode> arriv
460
460
edge .setDistance (distance );
461
461
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
462
462
edge .setName (stop .stop_name );
463
- setEdgeType (edge , GtfsStorage .EdgeType .HOP );
463
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .HOP );
464
464
edge .setFlags (encoder .setTime (edge .getFlags (), stopTime .arrival_time - prev .departure_time ));
465
465
gtfsStorage .getStopSequences ().put (edge .getEdge (), stopTime .stop_sequence );
466
466
}
@@ -491,7 +491,7 @@ void addTrip(ZoneId zoneId, int time, List<TripWithStopTimeAndArrivalNode> arriv
491
491
EdgeIteratorState boardEdge = graph .edge (departureTimelineNode , departureNode );
492
492
boardEdge .setFlags (encoder .setAccess (boardEdge .getFlags (), true , false ));
493
493
boardEdge .setName (getRouteName (feed , trip .trip ));
494
- setEdgeType (boardEdge , GtfsStorage .EdgeType .BOARD );
494
+ setEdgeTypeAndClearDistance (boardEdge , GtfsStorage .EdgeType .BOARD );
495
495
while (boardEdges .size () < stopTime .stop_sequence ) {
496
496
boardEdges .add (-1 ); // Padding, so that index == stop_sequence
497
497
}
@@ -504,7 +504,7 @@ void addTrip(ZoneId zoneId, int time, List<TripWithStopTimeAndArrivalNode> arriv
504
504
EdgeIteratorState alightEdge = graph .edge (arrivalNode , arrivalTimelineNode );
505
505
alightEdge .setFlags (encoder .setAccess (alightEdge .getFlags (), true , false ));
506
506
alightEdge .setName (getRouteName (feed , trip .trip ));
507
- setEdgeType (alightEdge , GtfsStorage .EdgeType .ALIGHT );
507
+ setEdgeTypeAndClearDistance (alightEdge , GtfsStorage .EdgeType .ALIGHT );
508
508
while (alightEdges .size () < stopTime .stop_sequence ) {
509
509
alightEdges .add (-1 );
510
510
}
@@ -518,7 +518,7 @@ void addTrip(ZoneId zoneId, int time, List<TripWithStopTimeAndArrivalNode> arriv
518
518
EdgeIteratorState dwellEdge = graph .edge (arrivalNode , departureNode );
519
519
dwellEdge .setFlags (encoder .setAccess (dwellEdge .getFlags (), true , false ));
520
520
dwellEdge .setName (getRouteName (feed , trip .trip ));
521
- setEdgeType (dwellEdge , GtfsStorage .EdgeType .DWELL );
521
+ setEdgeTypeAndClearDistance (dwellEdge , GtfsStorage .EdgeType .DWELL );
522
522
dwellEdge .setFlags (encoder .setTime (dwellEdge .getFlags (), stopTime .departure_time - stopTime .arrival_time ));
523
523
if (prev == null ) {
524
524
insertInboundBlockTransfers (arrivalNodes , tripDescriptor , departureNode , stopTime , stop , validOn , zoneId );
@@ -556,7 +556,7 @@ int addDelayedBoardEdge(ZoneId zoneId, GtfsRealtime.TripDescriptor tripDescripto
556
556
EdgeIteratorState boardEdge = graph .edge (departureTimelineNode , departureNode );
557
557
boardEdge .setFlags (encoder .setAccess (boardEdge .getFlags (), true , false ));
558
558
boardEdge .setName (getRouteName (feed , trip ));
559
- setEdgeType (boardEdge , GtfsStorage .EdgeType .BOARD );
559
+ setEdgeTypeAndClearDistance (boardEdge , GtfsStorage .EdgeType .BOARD );
560
560
gtfsStorage .getStopSequences ().put (boardEdge .getEdge (), stopSequence );
561
561
gtfsStorage .getTripDescriptors ().put (boardEdge .getEdge (), tripDescriptor .toByteArray ());
562
562
boardEdge .setFlags (encoder .setValidityId (boardEdge .getFlags (), validityId ));
@@ -571,14 +571,14 @@ private void wireUpAndAndConnectArrivalTimeline(Stop toStop, String routeId, int
571
571
for (Fun .Tuple2 <Integer , Integer > e : timeNodes .descendingSet ()) {
572
572
EdgeIteratorState leaveTimeExpandedNetworkEdge = graph .edge (e .b , stopExitNode );
573
573
leaveTimeExpandedNetworkEdge .setFlags (encoder .setAccess (leaveTimeExpandedNetworkEdge .getFlags (), true , false ));
574
- setEdgeType (leaveTimeExpandedNetworkEdge , GtfsStorage .EdgeType .LEAVE_TIME_EXPANDED_NETWORK );
574
+ setEdgeTypeAndClearDistance (leaveTimeExpandedNetworkEdge , GtfsStorage .EdgeType .LEAVE_TIME_EXPANDED_NETWORK );
575
575
int arrivalTime = e .a ;
576
576
leaveTimeExpandedNetworkEdge .setFlags (encoder .setTime (leaveTimeExpandedNetworkEdge .getFlags (), arrivalTime ));
577
577
setFeedIdWithTimezone (leaveTimeExpandedNetworkEdge , new GtfsStorage .FeedIdWithTimezone (id , zoneId ));
578
578
if (prev != -1 ) {
579
579
EdgeIteratorState edge = graph .edge (e .b , prev );
580
580
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
581
- setEdgeType (edge , GtfsStorage .EdgeType .WAIT_ARRIVAL );
581
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .WAIT_ARRIVAL );
582
582
edge .setName (toStop .stop_name );
583
583
edge .setFlags (encoder .setTime (edge .getFlags (), time -e .a ));
584
584
}
@@ -606,13 +606,13 @@ private void wireUpAndAndConnectDepartureTimeline(Stop toStop, String toRouteId,
606
606
EdgeIteratorState enterTimeExpandedNetworkEdge = graph .edge (stopEnterNode , e .b );
607
607
enterTimeExpandedNetworkEdge .setFlags (encoder .setAccess (enterTimeExpandedNetworkEdge .getFlags (), true , false ));
608
608
enterTimeExpandedNetworkEdge .setName (toStop .stop_name );
609
- setEdgeType (enterTimeExpandedNetworkEdge , GtfsStorage .EdgeType .ENTER_TIME_EXPANDED_NETWORK );
609
+ setEdgeTypeAndClearDistance (enterTimeExpandedNetworkEdge , GtfsStorage .EdgeType .ENTER_TIME_EXPANDED_NETWORK );
610
610
enterTimeExpandedNetworkEdge .setFlags (encoder .setTime (enterTimeExpandedNetworkEdge .getFlags (), e .a ));
611
611
setFeedIdWithTimezone (enterTimeExpandedNetworkEdge , new GtfsStorage .FeedIdWithTimezone (id , zoneId ));
612
612
if (prev != -1 ) {
613
613
EdgeIteratorState edge = graph .edge (e .b , prev );
614
614
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
615
- setEdgeType (edge , GtfsStorage .EdgeType .WAIT );
615
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .WAIT );
616
616
edge .setName (toStop .stop_name );
617
617
edge .setFlags (encoder .setTime (edge .getFlags (), time -e .a ));
618
618
}
@@ -623,7 +623,7 @@ private void wireUpAndAndConnectDepartureTimeline(Stop toStop, String toRouteId,
623
623
EdgeIteratorState edge = graph .edge (timeNodes .last ().b , timeNodes .first ().b );
624
624
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
625
625
int rolloverTime = 24 * 60 * 60 - timeNodes .last ().a + timeNodes .first ().a ;
626
- setEdgeType (edge , GtfsStorage .EdgeType .OVERNIGHT );
626
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .OVERNIGHT );
627
627
edge .setName (toStop .stop_name );
628
628
edge .setFlags (encoder .setTime (edge .getFlags (), rolloverTime ));
629
629
}
@@ -652,11 +652,11 @@ private void insertInboundBlockTransfers(List<TripWithStopTimeAndArrivalNode> ar
652
652
nodeAccess .setAdditionalNodeField (i -1 , NodeType .INTERNAL_PT .ordinal ());
653
653
EdgeIteratorState transferEdge = graph .edge (lastTrip .arrivalNode ,i -1 );
654
654
transferEdge .setFlags (encoder .setAccess (transferEdge .getFlags (), true , false ));
655
- setEdgeType (transferEdge , GtfsStorage .EdgeType .TRANSFER );
655
+ setEdgeTypeAndClearDistance (transferEdge , GtfsStorage .EdgeType .TRANSFER );
656
656
transferEdge .setFlags (encoder .setTime (transferEdge .getFlags (), dwellTime ));
657
657
EdgeIteratorState boardEdge = graph .edge (i -1 , departureNode );
658
658
boardEdge .setFlags (encoder .setAccess (boardEdge .getFlags (), true , false ));
659
- setEdgeType (boardEdge , GtfsStorage .EdgeType .BOARD );
659
+ setEdgeTypeAndClearDistance (boardEdge , GtfsStorage .EdgeType .BOARD );
660
660
boardEdge .setFlags (encoder .setValidityId (boardEdge .getFlags (), blockTransferValidityId ));
661
661
gtfsStorage .getStopSequences ().put (boardEdge .getEdge (), stopTime .stop_sequence );
662
662
gtfsStorage .getTripDescriptors ().put (boardEdge .getEdge (), tripDescriptor .toByteArray ());
@@ -691,7 +691,7 @@ private void insertInboundTransfers(String fromStopId, String from_route_id, int
691
691
Fun .Tuple2 <Integer , Integer > e = tailSet .first ();
692
692
EdgeIteratorState edge = graph .edge (j .getAdjNode (), e .b );
693
693
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
694
- setEdgeType (edge , GtfsStorage .EdgeType .TRANSFER );
694
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .TRANSFER );
695
695
edge .setFlags (encoder .setTime (edge .getFlags (), e .a - arrivalTime ));
696
696
}
697
697
}
@@ -720,7 +720,7 @@ private void insertOutboundTransfers(String toStopId, String toRouteId, int mini
720
720
}
721
721
EdgeIteratorState edge = graph .edge (e .b , j .getAdjNode ());
722
722
edge .setFlags (encoder .setAccess (edge .getFlags (), true , false ));
723
- setEdgeType (edge , GtfsStorage .EdgeType .TRANSFER );
723
+ setEdgeTypeAndClearDistance (edge , GtfsStorage .EdgeType .TRANSFER );
724
724
edge .setFlags (encoder .setTime (edge .getFlags (), departureTime - e .a ));
725
725
break ;
726
726
}
@@ -736,7 +736,8 @@ private String getRouteName(GTFSFeed feed, Trip trip) {
736
736
return (route .route_long_name != null ? route .route_long_name : route .route_short_name ) + " " + trip .trip_headsign ;
737
737
}
738
738
739
- private void setEdgeType (EdgeIteratorState edge , GtfsStorage .EdgeType edgeType ) {
739
+ private void setEdgeTypeAndClearDistance (EdgeIteratorState edge , GtfsStorage .EdgeType edgeType ) {
740
+ edge .setDistance (0.0 );
740
741
edge .setFlags (encoder .setEdgeType (edge .getFlags (), edgeType ));
741
742
}
742
743
0 commit comments