Skip to content

Create a new endpoint to get level_crossings occupation #14258

@aschantraine

Description

@aschantraine

Description and goal

Editoast part of : https://github.com/osrd-project/osrd-confidential/issues/1267
Link with :

Determining the occupation of a level crossing:

  • Retrieve the list of requested trains
  • Retrieve the requested level crossings
  • For each train / valid occurrence:
    • Retrieve its path and its simulation
    • For each level crossing:
      • Retrieve the intersection point with the level crossing (optional)
      • If yes, create a new occupation block:
        • Determine the train’s direction relative to the level crossing (watch out for reversed)
        • Deduce which pedal must be taken into account
        • Find the arrival time on the pedal through interpolation (arrival at the point intersection - pedal_distance)
        • Find the occupation duration through interpolation (arrival at the point intersection + short_zone_length + train_length)

START_TO_STOP : UPSTREAM
STOP_TO_START : DOWNSTREAM

Acceptance criteria

  • Editoast returns the occupation of given level_crossings for given trains

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Awaiting merge

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions