File tree Expand file tree Collapse file tree 1 file changed +5
-1
lines changed
core/src/main/kotlin/fr/sncf/osrd/stdcm/graph/engineering_allowance Expand file tree Collapse file tree 1 file changed +5
-1
lines changed Original file line number Diff line number Diff line change @@ -62,12 +62,14 @@ fun generatePreviousSimulationSegments(
62
62
maxLength : Distance = 100.meters
63
63
): Sequence <SimulationSegment > = sequence {
64
64
var currentEdge = initialEdge
65
+ var alreadyAddedDelay = 0.0
65
66
while (currentEdge != null ) {
66
67
if (currentEdge.endAtStop) break
67
68
68
69
val envelope = currentEdge.originalEnvelope
69
70
val edgeEndTime = currentEdge.timeData.earliestReachableTime + currentEdge.totalTime
70
- val maxAddedDelay = currentEdge.timeData.timeOfNextConflictAtLocation - edgeEndTime
71
+ val maxAddedDelay =
72
+ currentEdge.timeData.timeOfNextConflictAtLocation - edgeEndTime - alreadyAddedDelay
71
73
if (maxAddedDelay <= 0.0 ) break
72
74
73
75
val backwardsPointPairs =
@@ -101,6 +103,8 @@ fun generatePreviousSimulationSegments(
101
103
)
102
104
)
103
105
}
106
+ currentEdge.engineeringAllowance?.let { alreadyAddedDelay + = it.extraDuration }
107
+ alreadyAddedDelay + = currentEdge.timeData.delayAddedToLastDeparture
104
108
currentEdge = currentEdge.previousNode.previousEdge
105
109
}
106
110
}
You can’t perform that action at this time.
0 commit comments