use of org.openlcb.OlcbInterface in project JMRI by JMRI.
the class OlcbConfigurationManager method configureManagers.
@Override
public void configureManagers() {
// create our NodeID
getOurNodeID();
// do the connections
tc = adapterMemo.getTrafficController();
olcbCanInterface = createOlcbCanInterface(nodeID, tc);
// create JMRI objects
InstanceManager.setSensorManager(getSensorManager());
InstanceManager.setTurnoutManager(getTurnoutManager());
InstanceManager.setThrottleManager(getThrottleManager());
InstanceManager.setProgrammerManager(getProgrammerManager());
// start alias acquisition
new StartUpHandler().start();
OlcbInterface iface = getInterface();
loaderClient = new LoaderClient(iface.getOutputConnection(), iface.getMemoryConfigurationService(), iface.getDatagramService());
iface.registerMessageListener(loaderClient);
iface.registerMessageListener(new SimpleNodeIdentInfoHandler());
aliasMap = new AliasMap();
tc.addCanListener(new CanListener() {
@Override
public void message(CanMessage m) {
if (!m.isExtended() || m.isRtr()) {
return;
}
aliasMap.processFrame(convertFromCan(m));
}
@Override
public void reply(CanReply m) {
if (!m.isExtended() || m.isRtr()) {
return;
}
aliasMap.processFrame(convertFromCan(m));
}
});
messageBuilder = new MessageBuilder(aliasMap);
}
Aggregations