public class Loop extends Block
| Modifier and Type | Field and Description |
|---|---|
java.util.ArrayList<LoopTrainScheduleData> |
loopTrainScheduleDataList |
java.lang.String |
stationName |
int |
whetherMainLine
whetherMainLine
|
blockNo, direction, downLinks, minimumBlockLength, speedRestrictionList, upLinksendMilePost, maximumPossibleSpeed, startMilePostBLOCK_ENTITY, LINK_ENTITY, LOOP_ENTITY| Constructor and Description |
|---|
Loop() |
Loop(double startMilePost,
double endMilePost) |
Loop(java.io.StreamTokenizer st,
boolean isWarner) |
| Modifier and Type | Method and Description |
|---|---|
void |
forwardLoopTrainScheduleDataList() |
int |
getCrossMainLine() |
Train |
getLoopNextTrainToBeScheduled() |
java.lang.String |
getLoopType() |
double |
getLoopVelocity() |
Loop |
getNextReferenceLoop(java.util.ArrayList<ReferenceTableEntry> referenceTables)
Get the loop number of the next reference entry of a scheduled train.
|
double |
getNextTrainToBeScheduledDepartureTime() |
java.lang.String |
getPlatformName() |
Station |
getStation() |
java.lang.String |
getStationName() |
int |
getWhetherMainLine() |
static int |
getWhetherMainLineFromType(java.lang.String loopType) |
boolean |
hasError() |
int |
inWhichInterval(double time) |
boolean |
isLocked() |
void |
lock(double lockTime,
int trainNo) |
void |
setCrossMainLine(int crossMainLine) |
void |
setDirectEndMilePost(double endMilePost) |
void |
setEndMilePost(double endMilePost) |
void |
setLoopType(java.lang.String loopType) |
void |
setPlatformName(java.lang.String platformName) |
void |
setStation(Station station) |
void |
setWhetherMainLine(int whetherMainLine) |
StatusTraverseBlock |
traverseBlock(Train currTrain,
double arrivalTime,
double deptTime,
double startVelocity,
Link previousLink,
Link nextFastestLink,
double profileStartingMilePost,
SimulationInstance simulationInstance,
int nextReferenceLoopNumber)
Loop: StatusTraverseBlock traverseBlock((Train currTrain, double
arrivalTime, double deptTime, double startVelocity) 1) creates an
instance of the blockScheduler for this loop as the currentBlock and the
currTrain 2) goes to blockScheduler.traverseBlock(arrivalTime, deptTime,
startVelocity) (non-Javadoc)
|
void |
undoLoopTrainScheduleDataList() |
void |
unlock() |
boolean |
waitingPermitted()
(non-Javadoc)
|
addTinyBlocksToEmptyBlock, allowsTrain, calculateWarnerVelocityProfile, checkLastBlock, getBlockDirectionInInterval, getBlockName, getBlockNo, getBlockSignal, getDepartureTimeFromTrainNo, getEarliestArrivalTime, getEarliestArrivalTime, getEmptyBlockWithTinyBlocksAdded, getEndMilePost, getGradientList, getGradientsString, getHasPathToBlockMap, getLastIntervalByTrain, getLinkCrossoversString, getLinkLengthsString, getLinkListString, getLinkPrioritiesString, getLogger, getMilePostsByNextLink, getMilePostsByPreviousLink, getNextBlock, getNextBlockByDirection, getNextLink, getNextLinks, getNextLinks, getNightsfsr, getNonOverlappingRunTimeReturn, getNonOverlappingRunTimeSignal, getOccupancyTimeByTrain, getOnlyActualOccupancies, getOverlapDistance, getOverlappingRunTimeReturn, getPath, getPreviousLinks, getRunTimeVelocity, getSfsr, getSignal, getSignalFailFlag, getSignalFailure, getSpeedLimitEndMilePostsString, getSpeedLimitsString, getSpeedLimitStartMilePostsString, getSpeedRestrictionList, getSpeedRestrictionsString, getStartMilePost, getTrainNoFromOccupancy, getVelocityProfileArray, hasPath, hasPathTo, isDirectionOk, isFree, isLoop, isSignalFailed, isSignalRed, isWarner, printOccupancies, readCommonBlockLoopProperties, readSpeedRes, reserve, returnGradientFormat, returnMaxSpeedBetweenMilePosts, setBlockDirectionInInterval, setBlockName, setBlockNo, setBlockSignal, setEndMilePost, setEndMilePostDirectly, setGradientList, setLogger, setNextLinks, setNightsfsr, setPreviousLinks, setSfsr, setSignalFailFlag, setSignalFailure, setSpeedRestrictionList, setStartMilePost, setWarner, splitBlock, splitProfileForWarnerDistance, whenFreegetDirection, getEndMilePost, getLength, getMaximumPossibleSpeed, getOccupanciesToDisplay, getOccupy, getStartMilePost, getTinyBlockList, isFree, isFree, setDirection, setLength, setMaximumPossibleSpeed, setOccupied, setOccupied, setOccupy, setStartMilePost, setTinyBlockListgetEntityType, isBlock, isLink, setEntityTypepublic java.util.ArrayList<LoopTrainScheduleData> loopTrainScheduleDataList
public int whetherMainLine
public java.lang.String stationName
public Loop()
public Loop(double startMilePost,
double endMilePost)
public Loop(java.io.StreamTokenizer st,
boolean isWarner)
isWarner - : warning, which by default is set false.public void setEndMilePost(double endMilePost)
setEndMilePost in class Blockpublic void setDirectEndMilePost(double endMilePost)
public double getLoopVelocity()
public void setLoopType(java.lang.String loopType)
public java.lang.String getLoopType()
public Station getStation()
public void setStation(Station station)
public int inWhichInterval(double time)
time - (unit ?)public boolean waitingPermitted()
waitingPermitted in class BlockBlock.waitingPermitted()public StatusTraverseBlock traverseBlock(Train currTrain, double arrivalTime, double deptTime, double startVelocity, Link previousLink, Link nextFastestLink, double profileStartingMilePost, SimulationInstance simulationInstance, int nextReferenceLoopNumber)
traverseBlock in class BlockStatusTraverseBlockBlock#traverseBlock(Train, double, double, double)public Loop getNextReferenceLoop(java.util.ArrayList<ReferenceTableEntry> referenceTables)
referenceTables - public int getCrossMainLine()
public void setCrossMainLine(int crossMainLine)
public int getWhetherMainLine()
public void setWhetherMainLine(int whetherMainLine)
public java.lang.String getStationName()
public java.lang.String getPlatformName()
public void setPlatformName(java.lang.String platformName)
public boolean isLocked()
public void unlock()
public void lock(double lockTime,
int trainNo)
public void forwardLoopTrainScheduleDataList()
public void undoLoopTrainScheduleDataList()
public Train getLoopNextTrainToBeScheduled()
public double getNextTrainToBeScheduledDepartureTime()
public static int getWhetherMainLineFromType(java.lang.String loopType)