Package jmri.jmrix.loconet.locobuffer
Class LocoBufferAdapter
java.lang.Object
jmri.jmrix.AbstractPortController
jmri.jmrix.AbstractSerialPortController
jmri.jmrix.loconet.LnPortController
jmri.jmrix.loconet.locobuffer.LocoBufferAdapter
- All Implemented Interfaces:
PortAdapter,SerialPortAdapter
- Direct Known Subclasses:
IntelliboxAdapter,LocoBufferIIAdapter,LocoBufferNGAdapter,LocoBufferUsbAdapter,PR2Adapter,PR3Adapter,PR4Adapter,UhlenbrockAdapter,UsbDcs210PlusAdapter,UsbDcs240Adapter,UsbDcs240PlusAdapter,UsbDcs52Adapter,UsbUhlenbrock63120Adapter
Provide access to LocoNet via a LocoBuffer attached to a serial com port.
Normally controlled by the LocoBufferFrame class.
-
Nested Class Summary
Nested classes/interfaces inherited from class jmri.jmrix.AbstractSerialPortController
AbstractSerialPortController.Blocking, AbstractSerialPortController.FlowControlNested classes/interfaces inherited from class jmri.jmrix.AbstractPortController
AbstractPortController.Option -
Field Summary
FieldsFields inherited from class jmri.jmrix.loconet.LnPortController
commandStationNames, commandStationType, commandStationTypes, mInterrogateAtStart, mLoconetProtocolAutoDetect, mTranspondingAvailable, mTurnoutExtraSpace, mTurnoutNoRetryFields inherited from class jmri.jmrix.AbstractSerialPortController
currentSerialPort, mBaudRate, mPortFields inherited from class jmri.jmrix.AbstractPortController
allowConnectionRecovery, manufacturerName, opened, option1Name, option2Name, option3Name, option4Name, options, reconnectinterval, reconnectMaxAttempts, reconnectMaxInterval -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidSet up all of the other objects to operate with a LocoBuffer connected to this port.intGet the index of the default port speed for this adapter from the validSpeeds and validRates arrays.String[]Create a list of possible command stations and append "Standalone LocoNet" Note: This is not suitable for use by any class which extends this class if the hardware interface is part of a command station.protected LnPacketizerprotected Stringfor a given readable choice return internal value or the defaultbooleanokToSend()Can the port accept additional characters?Open a specified port.protected voidreportOpen(String portName) Allow subtypes to change the opening messageprotected voidAllow subtypes to change the flow control algorithmbooleanstatus()Check that this object is ready to operate.int[]Get an array of valid baud rate numbers; used to store/load adapter speed option.String[]Get an array of valid baud rate strings; used to display valid options in Connections Preferences.Methods inherited from class jmri.jmrix.loconet.LnPortController
getSystemConnectionMemo, setCommandStationType, setCommandStationType, setInterrogateOnStart, setLoconetProtocolAutoDetect, setTranspondingAvailable, setTurnoutHandlingMethods inherited from class jmri.jmrix.AbstractSerialPortController
activatePort, activatePort, activatePort, closeConnection, closeSerialPort, configureBaudRate, configureBaudRateFromIndex, configureBaudRateFromNumber, configureLeads, configureLeadsAndFlowControl, configureLeadsAndFlowControl, connect, currentBaudNumber, getActualPortNames, getCurrentBaudIndex, getCurrentBaudNumber, getCurrentBaudRate, getCurrentPortName, getFlowControl, getInputStream, getOutputStream, getPortSettingsString, handlePortBusy, handlePortNotFound, handlePortNotFound, isPortOpen, replacePortWithFakePort, reportPortStatus, resetupConnection, setBaudRate, setComPortTimeouts, setDataListener, setFlowControl, setPortMethods inherited from class jmri.jmrix.AbstractPortController
configureOption1, configureOption2, configureOption3, configureOption4, dispose, getDisabled, getManufacturer, getOption1Name, getOption2Name, getOption3Name, getOption4Name, getOptionChoices, getOptionDisplayName, getOptions, getOptionState, getReconnectMaxAttempts, getReconnectMaxInterval, getSystemPrefix, getUserName, isDirty, isOptionAdvanced, isOptionTypePassword, isOptionTypeText, isRestartRequired, purgeStream, reconnect, reconnectFromLoop, recover, safeSleep, setClosed, setDisabled, setManufacturer, setOpened, setOptionState, setReconnectMaxAttempts, setReconnectMaxInterval, setSystemConnectionMemo, setSystemPrefix, setUserNameMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface jmri.jmrix.PortAdapter
dispose, getDisabled, getOption1Name, getOption2Name, getOption3Name, getOption4Name, getOptionChoices, getOptionDisplayName, getOptions, getOptionState, getReconnectMaxAttempts, getReconnectMaxInterval, getSystemPrefix, getUserName, isDirty, isOptionAdvanced, isOptionTypePassword, isOptionTypeText, isRestartRequired, recover, setDisabled, setOptionState, setReconnectMaxAttempts, setReconnectMaxInterval, setSystemConnectionMemo, setSystemPrefix, setUserNameMethods inherited from interface jmri.jmrix.SerialPortAdapter
configureOption1, configureOption2, configureOption3, configureOption4, getManufacturer, getPortNames, setManufacturer
-
Field Details
-
portNameVector
-
validSpeeds
-
validSpeedValues
-
validOption1
-
-
Constructor Details
-
LocoBufferAdapter
public LocoBufferAdapter() -
LocoBufferAdapter
-
-
Method Details
-
getCommandStationListWithStandaloneLN
Create a list of possible command stations and append "Standalone LocoNet" Note: This is not suitable for use by any class which extends this class if the hardware interface is part of a command station.- Returns:
- String[] containing the array of command stations, plus "Standalone LocoNet"
-
openPort
Description copied from interface:SerialPortAdapterOpen a specified port.- Parameters:
portName- name tu use for this portappName- provided to the underlying OS during startup so that it can show on status displays, etc.- Returns:
- null indicates OK return, else error message.
-
reportOpen
Allow subtypes to change the opening message- Parameters:
portName- To appear in message
-
setLocalFlowControl
Allow subtypes to change the flow control algorithm -
okToSend
Can the port accept additional characters? The state of CTS determines this, as there seems to be no way to check the number of queued bytes and buffer length. This might go false for short intervals, but it might also stick off if something goes wrong.- Overrides:
okToSendin classLnPortController- Returns:
- an indication of whether the interface is accepting transmit messages.
-
configure
Set up all of the other objects to operate with a LocoBuffer connected to this port. -
status
Description copied from class:LnPortControllerCheck that this object is ready to operate. This is a question of configuration, not transient hardware status.- Specified by:
statusin interfacePortAdapter- Specified by:
statusin interfaceSerialPortAdapter- Specified by:
statusin classLnPortController- Returns:
- true if OK, at least as far as known
-
validBaudRates
Get an array of valid baud rate strings; used to display valid options in Connections Preferences.- Specified by:
validBaudRatesin interfaceSerialPortAdapter- Overrides:
validBaudRatesin classAbstractSerialPortController- Returns:
- array of I18N display strings of port speed settings valid for this serial adapter,
must match order and values from
SerialPortAdapter.validBaudNumbers()
-
validBaudNumbers
Get an array of valid baud rate numbers; used to store/load adapter speed option.- Specified by:
validBaudNumbersin interfaceSerialPortAdapter- Overrides:
validBaudNumbersin classAbstractSerialPortController- Returns:
- integer array of speeds, must match order and values from
SerialPortAdapter.validBaudRates()
-
defaultBaudIndex
Description copied from interface:SerialPortAdapterGet the index of the default port speed for this adapter from the validSpeeds and validRates arrays.- Specified by:
defaultBaudIndexin interfaceSerialPortAdapter- Overrides:
defaultBaudIndexin classAbstractSerialPortController- Returns:
- -1 to indicate not supported, unless overridden in adapter
-
getPacketizerOption
for a given readable choice return internal value or the default- Parameters:
s- string containing ?a packetizer name?- Returns:
- internal value
-
getPacketizer
- Parameters:
s- the packetizer to use in its readable form.- Returns:
- a LnPacketizer
-