Package jmri.jmrix.loconet
Class LnPacketizerStrict
java.lang.Object
jmri.jmrix.loconet.LnTrafficController
jmri.jmrix.loconet.LnPacketizer
jmri.jmrix.loconet.LnPacketizerStrict
- All Implemented Interfaces:
LocoNetInterface
Converts Stream-based I/O to/from LocoNet messages. The "LocoNetInterface"
side sends/receives LocoNetMessage objects. The connection to a
LnPortController is via a pair of *Streams, which then carry sequences of
characters for transmission.
Messages come to this via the main GUI thread, and are forwarded back to listeners in that same thread. Reception and transmission are handled in dedicated threads by RcvHandler and XmtHandler objects. Those are internal classes defined here. The thread priorities are:
- RcvHandler - at highest available priority
- XmtHandler - down one, which is assumed to be above the GUI
- (everything else)
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classCaptive class to handle incoming characters.(package private) classCaptive class to handle transmissionNested classes/interfaces inherited from class jmri.jmrix.loconet.LnPacketizer
LnPacketizer.Echo, LnPacketizer.RcvHandler, LnPacketizer.XmtHandler -
Field Summary
FieldsFields inherited from class jmri.jmrix.loconet.LnPacketizer
controller, echo, istream, ostream, rcvHandler, rcvThread, threadStopRequest, xmtHandler, xmtList, xmtThreadFields inherited from class jmri.jmrix.loconet.LnTrafficController
listeners, memo, receivedByteCount, receivedMsgCount, transmittedMsgCountFields inherited from interface jmri.jmrix.loconet.LocoNetInterface
ALL, POWER, PROGRAMMING, SENSORS, SLOTINFO, TURNOUTS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidInvoked at startup to start the threads needed here.Methods inherited from class jmri.jmrix.loconet.LnPacketizer
connectPort, disconnectPort, dispose, isXmtBusy, messageTransmitted, readByteProtected, sendLocoNetMessage, status, terminateThreadsMethods inherited from class jmri.jmrix.loconet.LnTrafficController
addLocoNetListener, getReceivedByteCount, getReceivedMsgCount, getSystemConnectionMemo, getTransmittedMsgCount, notify, removeLocoNetListener, resetStatistics, setSystemConnectionMemo
-
Field Details
-
maxWaitCount
-
-
Constructor Details
-
LnPacketizerStrict
-
-
Method Details
-
startThreads
Invoked at startup to start the threads needed here.- Overrides:
startThreadsin classLnPacketizer
-