Package jmri.jmrix.lenz
Class XNetSimulatorPortController
java.lang.Object
jmri.jmrix.AbstractPortController
jmri.jmrix.AbstractSerialPortController
jmri.jmrix.lenz.XNetSimulatorPortController
- All Implemented Interfaces:
XNetPortController,PortAdapter,SerialPortAdapter
- Direct Known Subclasses:
XNetSimulatorAdapter
public abstract class XNetSimulatorPortController
extends AbstractSerialPortController
implements XNetPortController
Abstract base for classes representing an XNet communications port
-
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
Fields 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 TypeMethodDescriptionabstract DataInputStreamGet the InputStream from the port.abstract DataOutputStreamGet the outputStream to the port.Get theSystemConnectionMemoassociated with this object.booleanIndicate whether the Command Station is currently providing a timeslot to this port controller.booleanokToSend()Can the port accept additional characters?abstract voidsetOutputBufferEmpty(boolean s) We need a way to say if the output buffer is empty or not.voidsetTimeSlot(boolean timeslot) Set a variable indicating whether or not the command station is providing a timeslot.abstract booleanstatus()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.AbstractSerialPortController
activatePort, activatePort, activatePort, closeConnection, closeSerialPort, configureBaudRate, configureBaudRateFromIndex, configureBaudRateFromNumber, configureLeads, configureLeadsAndFlowControl, configureLeadsAndFlowControl, connect, currentBaudNumber, defaultBaudIndex, getActualPortNames, getCurrentBaudIndex, getCurrentBaudNumber, getCurrentBaudRate, getCurrentPortName, getFlowControl, 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
connect, 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
configure, configureOption1, configureOption2, configureOption3, configureOption4, getManufacturer, getPortNames, openPort, setManufacturer
-
Constructor Details
-
XNetSimulatorPortController
public XNetSimulatorPortController()
-
-
Method Details
-
getInputStream
Description copied from class:AbstractPortControllerGet the InputStream from the port.- Specified by:
getInputStreamin interfacePortAdapter- Overrides:
getInputStreamin classAbstractSerialPortController- Returns:
- the InputStream from the port
-
getOutputStream
Description copied from class:AbstractPortControllerGet the outputStream to the port.- Specified by:
getOutputStreamin interfacePortAdapter- Overrides:
getOutputStreamin classAbstractSerialPortController- Returns:
- the outputStream to the port
-
status
Check 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 interfaceXNetPortController- Overrides:
statusin classAbstractPortController- Returns:
- true if OK, at least as far as known
-
okToSend
Can the port accept additional characters? This might go false for short intervals, but it might also stick off if something goes wrong.- Specified by:
okToSendin interfaceXNetPortController- Returns:
- true if OK to send, else false.
-
hasTimeSlot
Indicate whether the Command Station is currently providing a timeslot to this port controller.- Specified by:
hasTimeSlotin interfaceXNetPortController- Returns:
- true if the Command Station is currently providing a timeslot.
-
setTimeSlot
Set a variable indicating whether or not the command station is providing a timeslot.This method should be called with the paramter set to false if a "Command Station No Longer Providing a timeslot for communications" (01 05 04) is received.
This method should be called with the parameter set to true if a "Command Station is providing a timeslot for communications again." (01 07 06) is received.
- Specified by:
setTimeSlotin interfaceXNetPortController- Parameters:
timeslot- true if a timeslot is being sent, false otherwise.
-
setOutputBufferEmpty
We need a way to say if the output buffer is empty or not.- Specified by:
setOutputBufferEmptyin interfaceXNetPortController- Parameters:
s- true to set buffer empty, else false.
-
getSystemConnectionMemo
Description copied from class:AbstractPortControllerGet theSystemConnectionMemoassociated 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:
getSystemConnectionMemoin interfacePortAdapter- Overrides:
getSystemConnectionMemoin classAbstractPortController- Returns:
- the currently associated SystemConnectionMemo
-
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()
-