Package jmri.jmrix.loconet.usb_dcs240
Class UsbDcs240Adapter
- java.lang.Object
-
- jmri.jmrix.AbstractPortController
-
- jmri.jmrix.AbstractSerialPortController
-
- jmri.jmrix.loconet.LnPortController
-
- jmri.jmrix.loconet.locobuffer.LocoBufferAdapter
-
- jmri.jmrix.loconet.usb_dcs240.UsbDcs240Adapter
-
- All Implemented Interfaces:
PortAdapter
,SerialPortAdapter
public class UsbDcs240Adapter extends LocoBufferAdapter
Update the code in jmri.jmrix.loconet.locobuffer so that it refers to the option settings for the Digitrax DCS240's USB interfaceBased on PR3Adapter.java
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jmri.jmrix.AbstractPortController
AbstractPortController.Option
-
-
Field Summary
-
Fields inherited from class jmri.jmrix.loconet.locobuffer.LocoBufferAdapter
validOption1, validSpeeds, validSpeedValues
-
Fields inherited from class jmri.jmrix.loconet.LnPortController
commandStationNames, commandStationType, commandStationTypes, mInterrogateAtStart, mLoconetProtocolAutoDetect, mTranspondingAvailable, mTurnoutExtraSpace, mTurnoutNoRetry
-
Fields inherited from class jmri.jmrix.AbstractSerialPortController
mBaudRate, mPort
-
Fields inherited from class jmri.jmrix.AbstractPortController
allowConnectionRecovery, manufacturerName, option1Name, option2Name, option3Name, option4Name, options, reconnectinterval, reconnectMaxAttempts, reconnectMaxInterval
-
-
Constructor Summary
Constructors Constructor Description UsbDcs240Adapter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String[]
commandStationOptions()
The DCS240 USB interface can be used as a "Standalone Programmer", or with various LocoNet command stations, or as an interface to a "Standalone LocoNet".void
configure()
Set up all of the other objects to operate with a DCS240 USB interface connected to this port.int
defaultBaudIndex()
Get the index of the default port speed for this adapter from the validSpeeds and validRates arrays.UsbDcs240SystemConnectionMemo
getSystemConnectionMemo()
Get theSystemConnectionMemo
associated with this object.protected void
setSerialPort(purejavacomm.SerialPort activeSerialPort)
Sets up the serial port characteristics.int[]
validBaudNumbers()
Get an array of valid baud rate numbers; used to store/load adapter speed option.java.lang.String[]
validBaudRates()
Get an array of valid baud rate strings; used to display valid options in Connections Preferences.-
Methods inherited from class jmri.jmrix.loconet.locobuffer.LocoBufferAdapter
getCommandStationListWithStandaloneLN, getInputStream, getOutputStream, getPacketizer, getPacketizerOption, getPortNames, okToSend, openPort, status
-
Methods inherited from class jmri.jmrix.loconet.LnPortController
setCommandStationType, setCommandStationType, setInterrogateOnStart, setLoconetProtocolAutoDetect, setTranspondingAvailable, setTurnoutHandling
-
Methods inherited from class jmri.jmrix.AbstractSerialPortController
closeConnection, configureBaudRate, configureBaudRateFromIndex, configureBaudRateFromNumber, configureLeadsAndFlowControl, configureLeadsAndFlowControl, connect, currentBaudNumber, getCurrentBaudIndex, getCurrentBaudNumber, getCurrentBaudRate, getCurrentPortName, handlePortBusy, handlePortNotFound, reconnectFromLoop, resetupConnection, setPort, setPortEventLogging
-
Methods 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, recover, safeSleep, setClosed, setDisabled, setManufacturer, setOpened, setOptionState, setReconnectMaxAttempts, setReconnectMaxInterval, setSystemConnectionMemo, setSystemPrefix, setUserName
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods 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, setUserName
-
Methods inherited from interface jmri.jmrix.SerialPortAdapter
configureOption1, configureOption2, configureOption3, configureOption4, getManufacturer, setManufacturer
-
-
-
-
Constructor Detail
-
UsbDcs240Adapter
public UsbDcs240Adapter()
-
-
Method Detail
-
setSerialPort
protected void setSerialPort(purejavacomm.SerialPort activeSerialPort) throws purejavacomm.UnsupportedCommOperationException
Sets up the serial port characteristics. Always uses flow control, which is not considered a user-settable option. Sets the DCS240 USB interface for the appropriate operating mode, based on the selected "command station type".- Overrides:
setSerialPort
in classLocoBufferAdapter
- Parameters:
activeSerialPort
- the port to be configured- Throws:
purejavacomm.UnsupportedCommOperationException
- Usually if the hardware isn't present or capable
-
configure
public void configure()
Set up all of the other objects to operate with a DCS240 USB interface connected to this port. This overrides the version in loconet.locobuffer, but it has to duplicate much of the functionality there, so the code is basically copied.- Specified by:
configure
in interfacePortAdapter
- Specified by:
configure
in interfaceSerialPortAdapter
- Overrides:
configure
in classLocoBufferAdapter
-
validBaudRates
public java.lang.String[] validBaudRates()
Get an array of valid baud rate strings; used to display valid options in Connections Preferences.- Specified by:
validBaudRates
in interfaceSerialPortAdapter
- Overrides:
validBaudRates
in classLocoBufferAdapter
- Returns:
- String[] containing the single valid baud rate, "57,600".
-
validBaudNumbers
public int[] validBaudNumbers()
Get an array of valid baud rate numbers; used to store/load adapter speed option.- Specified by:
validBaudNumbers
in interfaceSerialPortAdapter
- Overrides:
validBaudNumbers
in classLocoBufferAdapter
- Returns:
- int[] containing the single valid baud rate, 57600.
-
defaultBaudIndex
public int defaultBaudIndex()
Description copied from interface:SerialPortAdapter
Get the index of the default port speed for this adapter from the validSpeeds and validRates arrays.- Specified by:
defaultBaudIndex
in interfaceSerialPortAdapter
- Overrides:
defaultBaudIndex
in classLocoBufferAdapter
- Returns:
- -1 to indicate not supported, unless overridden in adapter
-
commandStationOptions
public java.lang.String[] commandStationOptions()
The DCS240 USB interface can be used as a "Standalone Programmer", or with various LocoNet command stations, or as an interface to a "Standalone LocoNet". Provide those options.- Returns:
- an array of strings containing the various command station names and name(s) of modes without command stations
-
getSystemConnectionMemo
public UsbDcs240SystemConnectionMemo getSystemConnectionMemo()
Description copied from class:AbstractPortController
Get theSystemConnectionMemo
associated with this object.This method should only be overridden to ensure that a specific subclass of SystemConnectionMemo is returned. The recommended pattern is:
public MySystemConnectionMemo getSystemConnectionMemo() { return (MySystemConnectionMemo) super.getSystemConnectionMemo(); }
- Specified by:
getSystemConnectionMemo
in interfacePortAdapter
- Overrides:
getSystemConnectionMemo
in classLnPortController
- Returns:
- the currently associated SystemConnectionMemo
-
-