Package jmri.jmrix.roco
Class RocoXNetThrottle
- java.lang.Object
-
- jmri.beans.PropertyChangeSupport
-
- jmri.jmrix.AbstractThrottle
-
- jmri.jmrix.lenz.XNetThrottle
-
- jmri.jmrix.roco.RocoXNetThrottle
-
- All Implemented Interfaces:
java.util.EventListener,PropertyChangeFirer,PropertyChangeProvider,DccThrottle,AbstractMRListener,XNetListener,Throttle
- Direct Known Subclasses:
Z21XNetThrottle
public class RocoXNetThrottle extends XNetThrottle
An implementation of DccThrottle with code specific to a Roco XpressNet connection.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class jmri.jmrix.lenz.XNetThrottle
XNetThrottle.RequestMessage
-
-
Field Summary
-
Fields inherited from class jmri.jmrix.lenz.XNetThrottle
address, isAvailable, requestList, requestState, statTimeoutValue, statusTask, tc, THROTTLEFUNCSENT, THROTTLEHIGHMOMSTATSENT, THROTTLEHIGHSTATSENT, THROTTLEIDLE, THROTTLEMOMSTATSENT, THROTTLESPEEDSENT, THROTTLESTATSENT
-
Fields inherited from class jmri.jmrix.AbstractThrottle
active, adapterMemo, FUNCTION_GROUPS, isForward, speedSetting, speedStepMode, start
-
Fields inherited from class jmri.beans.PropertyChangeSupport
propertyChangeSupport
-
Fields inherited from interface jmri.Throttle
CONNECTED, DISPATCH_ENABLED, F0, F0Momentary, F1, F10, F10Momentary, F11, F11Momentary, F12, F12Momentary, F13, F13Momentary, F14, F14Momentary, F15, F15Momentary, F16, F16Momentary, F17, F17Momentary, F18, F18Momentary, F19, F19Momentary, F1Momentary, F2, F20, F20Momentary, F21, F21Momentary, F22, F22Momentary, F23, F23Momentary, F24, F24Momentary, F25, F25Momentary, F26, F26Momentary, F27, F27Momentary, F28, F28Momentary, F2Momentary, F3, F3Momentary, F4, F4Momentary, F5, F5Momentary, F6, F6Momentary, F7, F7Momentary, F8, F8Momentary, F9, F9Momentary, ISFORWARD, RELEASE_ENABLED, SPEEDINCREMENT, SPEEDSETTING, SPEEDSTEPMODE, SPEEDSTEPS
-
-
Constructor Summary
Constructors Constructor Description RocoXNetThrottle(XNetSystemConnectionMemo memo, XNetTrafficController controller)Constructor.RocoXNetThrottle(XNetSystemConnectionMemo memo, LocoAddress address, XNetTrafficController controller)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidsendEmergencyStop()Since XpressNet has a seperate Opcode for emergency stop, we're setting this up as a seperate protected function.protected voidsendFunctionHighMomentaryStatusRequest()Send a request to get the status of functions from the command station.protected voidsendFunctionStatusInformationRequest()Send a request to get the status of functions from the command station.protected voidsendMomentaryFunctionGroup1()Send the XpressNet message to set the Momentary state of locomotive functions F0, F1, F2, F3, F4.protected voidsendMomentaryFunctionGroup2()Send the XpressNet message to set the momentary state of functions F5, F6, F7, F8.protected voidsendMomentaryFunctionGroup3()Send the XpressNet message to set the momentary state of functions F9, F10, F11, F12.protected voidsendMomentaryFunctionGroup4()Send the XpressNet message to set the momentary state of functions F13, F14, F15, F16, F17, F18, F19, F20.protected voidsendMomentaryFunctionGroup5()Send the XpressNet message to set the momentary state of functions F21, F22, F23, F24, F25, F26, F27, F28.voidthrottleDispose()Dispose when finished with this object.-
Methods inherited from class jmri.jmrix.lenz.XNetThrottle
checkForFunctionMomentaryValueChange, csVersionSupportFn13to28, csVersionSupportFn29to68, getDccAddress, getDccAddressHigh, getDccAddressLow, getLocoAddress, message, message, notifyNewDirection, notifyNewSpeedStepMode, notifyTimeout, parseFunctionHighInformation, parseFunctionHighMomentaryInformation, parseFunctionInformation, parseFunctionMomentaryInformation, parseSpeedAndAvailability, parseSpeedAndDirection, queueMessage, sendFunctionGroup1, sendFunctionGroup10, sendFunctionGroup2, sendFunctionGroup3, sendFunctionGroup4, sendFunctionGroup5, sendFunctionGroup6, sendFunctionGroup7, sendFunctionGroup8, sendFunctionGroup9, sendFunctionHighInformationRequest, sendMomentaryFunctionGroup10, sendMomentaryFunctionGroup6, sendMomentaryFunctionGroup7, sendMomentaryFunctionGroup8, sendMomentaryFunctionGroup9, sendQueuedMessage, sendStatusInformationRequest, setDccAddress, setIsAvailable, setIsForward, setSpeedSetting, setSpeedStepMode, setXNetTrafficController, startStatusTimer, stopStatusTimer
-
Methods inherited from class jmri.jmrix.AbstractThrottle
addPropertyChangeListener, dispatch, dispose, finishRecord, getFunction, getFunctionMomentary, getFunctionMomentaryNoWarn, getFunctionNoWarn, getFunctions, getFunctionsMomentary, getIsForward, getMemo, getRosterEntry, getSpeedIncrement, getSpeedSetting, getSpeedStepMode, intSpeed, intSpeed, notifyThrottleDisconnect, notifyThrottleDispatchEnabled, notifyThrottleReleaseEnabled, record, release, removePropertyChangeListener, sendFunctionGroup, setFunction, setFunctionMomentary, setRosterEntry, setSpeedSetting, setSpeedSettingAgain, startClock, updateFunction, updateFunctionMomentary
-
Methods inherited from class jmri.beans.PropertyChangeSupport
addPropertyChangeListener, fireIndexedPropertyChange, fireIndexedPropertyChange, fireIndexedPropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface jmri.beans.PropertyChangeProvider
addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener
-
Methods inherited from interface jmri.Throttle
getF0, getF0Momentary, getF1, getF10, getF10Momentary, getF11, getF11Momentary, getF12, getF12Momentary, getF13, getF13Momentary, getF14, getF14Momentary, getF15, getF15Momentary, getF16, getF16Momentary, getF17, getF17Momentary, getF18, getF18Momentary, getF19, getF19Momentary, getF1Momentary, getF2, getF20, getF20Momentary, getF21, getF21Momentary, getF22, getF22Momentary, getF23, getF23Momentary, getF24, getF24Momentary, getF25, getF25Momentary, getF26, getF26Momentary, getF27, getF27Momentary, getF28, getF28Momentary, getF2Momentary, getF3, getF3Momentary, getF4, getF4Momentary, getF5, getF5Momentary, getF6, getF6Momentary, getF7, getF7Momentary, getF8, getF8Momentary, getF9, getF9Momentary, setF0, setF0Momentary, setF1, setF10, setF10Momentary, setF11, setF11Momentary, setF12, setF12Momentary, setF13, setF13Momentary, setF14, setF14Momentary, setF15, setF15Momentary, setF16, setF16Momentary, setF17, setF17Momentary, setF18, setF18Momentary, setF19, setF19Momentary, setF1Momentary, setF2, setF20, setF20Momentary, setF21, setF21Momentary, setF22, setF22Momentary, setF23, setF23Momentary, setF24, setF24Momentary, setF25, setF25Momentary, setF26, setF26Momentary, setF27, setF27Momentary, setF28, setF28Momentary, setF2Momentary, setF3, setF3Momentary, setF4, setF4Momentary, setF5, setF5Momentary, setF6, setF6Momentary, setF7, setF7Momentary, setF8, setF8Momentary, setF9, setF9Momentary
-
-
-
-
Constructor Detail
-
RocoXNetThrottle
public RocoXNetThrottle(XNetSystemConnectionMemo memo, XNetTrafficController controller)
Constructor.- Parameters:
memo- system connection.controller- traffic controller.
-
RocoXNetThrottle
public RocoXNetThrottle(XNetSystemConnectionMemo memo, LocoAddress address, XNetTrafficController controller)
Constructor.- Parameters:
memo- system connection.address- loco address.controller- traffic controller.
-
-
Method Detail
-
sendMomentaryFunctionGroup1
protected void sendMomentaryFunctionGroup1()
Description copied from class:XNetThrottleSend the XpressNet message to set the Momentary state of locomotive functions F0, F1, F2, F3, F4.- Overrides:
sendMomentaryFunctionGroup1in classXNetThrottle
-
sendMomentaryFunctionGroup2
protected void sendMomentaryFunctionGroup2()
Description copied from class:XNetThrottleSend the XpressNet message to set the momentary state of functions F5, F6, F7, F8.- Overrides:
sendMomentaryFunctionGroup2in classXNetThrottle
-
sendMomentaryFunctionGroup3
protected void sendMomentaryFunctionGroup3()
Description copied from class:XNetThrottleSend the XpressNet message to set the momentary state of functions F9, F10, F11, F12.- Overrides:
sendMomentaryFunctionGroup3in classXNetThrottle
-
sendMomentaryFunctionGroup4
protected void sendMomentaryFunctionGroup4()
Description copied from class:XNetThrottleSend the XpressNet message to set the momentary state of functions F13, F14, F15, F16, F17, F18, F19, F20.- Overrides:
sendMomentaryFunctionGroup4in classXNetThrottle
-
sendMomentaryFunctionGroup5
protected void sendMomentaryFunctionGroup5()
Description copied from class:XNetThrottleSend the XpressNet message to set the momentary state of functions F21, F22, F23, F24, F25, F26, F27, F28.- Overrides:
sendMomentaryFunctionGroup5in classXNetThrottle
-
sendFunctionStatusInformationRequest
protected void sendFunctionStatusInformationRequest()
Description copied from class:XNetThrottleSend a request to get the status of functions from the command station.- Overrides:
sendFunctionStatusInformationRequestin classXNetThrottle
-
sendFunctionHighMomentaryStatusRequest
protected void sendFunctionHighMomentaryStatusRequest()
Description copied from class:XNetThrottleSend a request to get the status of functions from the command station.- Overrides:
sendFunctionHighMomentaryStatusRequestin classXNetThrottle
-
sendEmergencyStop
protected void sendEmergencyStop()
Description copied from class:XNetThrottleSince XpressNet has a seperate Opcode for emergency stop, we're setting this up as a seperate protected function.- Overrides:
sendEmergencyStopin classXNetThrottle
-
throttleDispose
public void throttleDispose()
Dispose when finished with this object. After this, further usage of this Throttle object will result in a JmriException.This is quite problematic, because a using object doesn't know when it's the last user.
- Overrides:
throttleDisposein classXNetThrottle
-
-