public interface APISignaller
Modifier and Type | Method and Description |
---|---|
void |
initialise(BraveSignallerContext context,
java.lang.String simId,
java.lang.String scenarioId,
java.util.List<java.lang.String> tdSections,
java.util.List<java.lang.String> signals,
java.util.HashMap<java.lang.String,java.util.ArrayList<java.lang.String>> routeDescriptions,
java.util.HashMap<java.lang.String,java.lang.String> trainTypes) |
void |
notifyArrival(java.lang.String arrivingTrain,
java.util.Date time,
java.lang.String stopId)
Notify that the specified train arrives at the specified stopId
|
void |
notifyRouteInfo(java.lang.String serviceName,
java.util.HashMap<java.lang.String,java.lang.String> signalRouteMap,
java.util.HashMap<java.lang.String,java.lang.Double> tdSectionDistances,
java.util.HashMap<java.lang.String,java.lang.Double> signalDistances,
java.util.HashMap<java.lang.Integer,java.lang.Double> stopTimes,
java.util.HashMap<java.lang.Double,java.lang.String> stopNames,
java.util.ArrayList<SpeedLimit> speedLimits,
java.util.ArrayList<Gradient> gradients)
Notifies route info.
|
void |
notifyTDSectionOccupation(java.lang.String tdSection,
java.lang.String occupyingTrain)
Notify the algorithm that the specified TDSection has been occupied by the specified train
|
void |
notifyTrain(java.lang.String trainId,
double distance,
double speed)
Notify plugin of the exact location and speed of a train.
|
void |
notifyTrainServices(java.lang.String trainName,
java.lang.String serviceName)
Notify that the train has started to operate the specified service
|
void |
update(double elapsedTime,
java.util.Date simTime)
Update method called once per time step
|
void initialise(BraveSignallerContext context, java.lang.String simId, java.lang.String scenarioId, java.util.List<java.lang.String> tdSections, java.util.List<java.lang.String> signals, java.util.HashMap<java.lang.String,java.util.ArrayList<java.lang.String>> routeDescriptions, java.util.HashMap<java.lang.String,java.lang.String> trainTypes)
routeSetter
- tdSections
- TDSections in this junctionsignals
- Signals in this junctionrouteDescriptions
- HashMap of RouteName and ArrayList of void notifyTDSectionOccupation(java.lang.String tdSection, java.lang.String occupyingTrain)
tdSection
- occupyingTrain
- void notifyTrainServices(java.lang.String trainName, java.lang.String serviceName)
trainName
- serviceName
- void notifyRouteInfo(java.lang.String serviceName, java.util.HashMap<java.lang.String,java.lang.String> signalRouteMap, java.util.HashMap<java.lang.String,java.lang.Double> tdSectionDistances, java.util.HashMap<java.lang.String,java.lang.Double> signalDistances, java.util.HashMap<java.lang.Integer,java.lang.Double> stopTimes, java.util.HashMap<java.lang.Double,java.lang.String> stopNames, java.util.ArrayList<SpeedLimit> speedLimits, java.util.ArrayList<Gradient> gradients)
serviceName
- The name of the trainsignalRouteMap
- A signal and the corresponding route the train requires.orderedSignals
- An ordered list of signals for the train's journeytdSectionDistances
- A list of TDSections on the train's journey, with distances along the journey.signalDistances
- A list of Signals on the train's journey, with distances along the journey.stopNames
- A list of stop IDs indexed by distance.void update(double elapsedTime, java.util.Date simTime)
elapsedTime
- simTime
- void notifyArrival(java.lang.String arrivingTrain, java.util.Date time, java.lang.String stopId)
arrivingTrain
- time
- stopId
- void notifyTrain(java.lang.String trainId, double distance, double speed)
trainId
- sectionId
- direction
- speed
-