54 lines
2.2 KiB
Java
54 lines
2.2 KiB
Java
package jmri.jmrit.entryexit;
|
|
|
|
import static org.junit.jupiter.api.Assertions.assertTrue;
|
|
|
|
import java.util.HashMap;
|
|
|
|
import jmri.*;
|
|
import jmri.configurexml.JmriConfigureXmlException;
|
|
import jmri.jmrit.display.EditorManager;
|
|
import jmri.jmrit.display.layoutEditor.LayoutEditor;
|
|
|
|
class EntryExitTestTools {
|
|
static HashMap<String, LayoutEditor> getPanels() throws JmriConfigureXmlException, JmriException, IllegalArgumentException {
|
|
HashMap<String, LayoutEditor> panels = new HashMap<>();
|
|
jmri.configurexml.ConfigXmlManager cm = new jmri.configurexml.ConfigXmlManager();
|
|
java.io.File f = new java.io.File("java/test/jmri/jmrit/entryexit/load/EntryExitTest.xml");
|
|
assertTrue(cm.load(f));
|
|
|
|
for (LayoutEditor panel : InstanceManager.getDefault(EditorManager.class).getAll(LayoutEditor.class)) {
|
|
switch (panel.getLayoutName()) {
|
|
case "Alpha":
|
|
panels.put("Alpha", panel);
|
|
break;
|
|
case "Beta":
|
|
panels.put("Beta", panel);
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
InstanceManager.getDefault(SensorManager.class).provideSensor("Reset").setKnownState(Sensor.ACTIVE);
|
|
InstanceManager.getDefault(jmri.jmrit.display.layoutEditor.LayoutBlockManager.class).initializeLayoutBlockPaths();
|
|
return panels;
|
|
}
|
|
|
|
PointDetails getPoint(Sensor sensor, LayoutEditor panel, EntryExitPairs eep) {
|
|
return (sensor == null) ? null : eep.providePoint(sensor, panel);
|
|
}
|
|
|
|
Source getSourceInstance(Sensor sensor, LayoutEditor panel, EntryExitPairs eep) {
|
|
PointDetails pd = getPoint(sensor, panel, eep);
|
|
return (pd == null) ? null : eep.getSourceForPoint(pd);
|
|
}
|
|
|
|
DestinationPoints getDestinationPoint(Sensor srcSensor, Sensor destSensor, LayoutEditor panel, EntryExitPairs eep) {
|
|
Source src = getSourceInstance(srcSensor, panel, eep);
|
|
PointDetails pd = getPoint(destSensor, panel, eep);
|
|
return (src == null || pd == null) ? null : src.getDestForPoint(pd);
|
|
}
|
|
|
|
// private static final org.slf4j.Logger log = org.slf4j.LoggerFactory.getLogger(EntryExitTestTools.class);
|
|
}
|