DocName Project Version FullName ShortDescription
JavaPanel RailwayCrossing V1
This panel is intended for interacting with the RailwayCrossing Environment and the Gate Controller.

Therefore, the panel allows

  • the initialization of a specific number of regular and fast tracks with the respective params (at system start)

  • the manual setting of the signals and the gate

  • the display of statistics about the tracks and trains (e.g. average waiting duration of the trains, ...)

  • a graphical view of the environment (the tracks, trains, cars, signals and the gate)

  • further, the sending of arbitrary signals
ModelName Description Strategy Assigned Tab/Window
initTracks Initialize a specific number of regular and fast tracks (at system start). After pressing the buttonInit, for each track type send the signal setTrackParams(trackType, ts1Dur, ts1Sig1Dur, sig1Ts2Dur, breakDur, minDistDur) for setting the concrete values for the respective type (taken from textFieldRTP1, ...; and textFieldFTP1, ...).

Then, Send signal initTracks(nbrRegTracks, nbrFastTracks),  (taken from textFieldRT and  textFieldFT).

manualGateControl Set the gate to a specific state. If buttonCloseGate is pushed, send signal setGate(close); If buttonOpenGate is pushed, send signal setGate(open). ManualControl
manualSignalControl Set one (or all) signal(s) to a specific state. If buttonGreenSignal is pushed, send the signal setSignal(track, green), where track is taken from textFieldTrack; If buttonRedSignal is pushed, send signal setSignal(track, red). The textFieldTrack should contain the instanceName of the respective track, or the keyword all, if all tracks are to be controlled. ManualControl
displayStatistics Display the statistics for the railway crossing (the number of trains, the average waiting duration per track, etc.). Upon reception of the newTrackStatistics(trackName, ...) signal, display the data for the respective track in the tableStats depending on the trackName parameter. Statistics
visualizeRWCrossing Visualize all elements of the railway crossing in a dynamic manner (i.e. show the trains moving, the gate opening and closing, ...). In a separate window, update the graphical information upon the reception of on of the following signals:
- newGate(position); position = opened/closed
- newSignal(trackName, status); status = red/greed
- newTrainPos(trackName, position)
sendArbitrarySignals Send an arbitrary signal. Upon pressing the buttonSend, send the signal and parameters to the system as entered in textFieldG1. Generic
ModelName FullName Type Value Description
ModelName FullName Type Components Parameters Description