Package jmri.jmrit.ussctc
Class RouteLock
java.lang.Object
jmri.jmrit.ussctc.RouteLock
- All Implemented Interfaces:
Lock
public class RouteLock extends Object implements Lock
Lock if any of the SignalHeads controlling traffic over a turnout are not at stop.
This checks SignalHeads for RED; it locks against Restricting (FLASHRED) but you can change that by overriding the checkSignalClear() method.
-
Nested Class Summary
-
Field Summary
Fields Modifier and Type Field Description (package private) Iterable<BeanSetting>
beans
(package private) Iterable<NamedBeanHandle<SignalHead>>
list
-
Constructor Summary
Constructors Constructor Description RouteLock(String head)
RouteLock(String[] array)
RouteLock(String[] array, BeanSetting[] beans)
RouteLock(List<NamedBeanHandle<SignalHead>> list)
RouteLock(List<NamedBeanHandle<SignalHead>> list, List<BeanSetting> beans)
-
Method Summary
Modifier and Type Method Description boolean
isLockClear()
Test the lock conditions(package private) boolean
isSignalClear(NamedBeanHandle<SignalHead> handle)
-
Field Details
-
Constructor Details
-
RouteLock
- Parameters:
list
- SignalHeads that cover this route
-
RouteLock
public RouteLock(@Nonnull List<NamedBeanHandle<SignalHead>> list, @Nonnull List<BeanSetting> beans)- Parameters:
list
- SignalHeads that cover this routebeans
- Defines the specific route
-
RouteLock
- Parameters:
array
- User or system names of SignalHeads that cover this route
-
RouteLock
- Parameters:
array
- User or system names of SignalHeads that cover this routebeans
- Defines the specific route
-
RouteLock
- Parameters:
head
- User or system name of a SignalHead that covers this route
-
-
Method Details
-
isLockClear
Test the lock conditions- Specified by:
isLockClear
in interfaceLock
- Returns:
- True if lock is clear and operation permitted
-
isSignalClear
-