Class LNCPSignalMast
- java.lang.Object
-
- jmri.implementation.AbstractNamedBean
-
- jmri.implementation.AbstractSignalMast
-
- jmri.implementation.DccSignalMast
-
- jmri.jmrix.loconet.LNCPSignalMast
-
- All Implemented Interfaces:
java.beans.VetoableChangeListener,java.lang.Comparable<NamedBean>,java.util.EventListener,PropertyChangeProvider,LocoNetListener,NamedBean,Signal,SignalMast
public class LNCPSignalMast extends DccSignalMast implements LocoNetListener
Extend jmri.SignalMast for signals implemented by an LNCP.This implementation writes out to the physical signal when it's commanded to change appearance, and updates its internal state when it hears commands from other places.
setAspect(java.lang.String)does not immediately change the local aspect. Instead, it produces the message on the network, waiting for that to return and do the local state change, notification, etc.This is a specific implementation for the RR-cirkits LNCP interface board. A more general implementation, which can work with any system(s), is available in
DccSignalMast.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jmri.NamedBean
NamedBean.BadNameException, NamedBean.BadSystemNameException, NamedBean.BadUserNameException, NamedBean.DisplayOptions, NamedBean.DuplicateSystemNameException
-
-
Field Summary
Fields Modifier and Type Field Description (package private) bytedccByteAddr1(package private) bytedccByteAddr2(package private) LnTrafficControllertc-
Fields inherited from class jmri.implementation.DccSignalMast
appearanceToOutput, c, dccSignalDecoderAddress, packetSendCount
-
Fields inherited from class jmri.implementation.AbstractSignalMast
aspect, disabledAspects, map, speed
-
Fields inherited from class jmri.implementation.AbstractNamedBean
listenerRefs, mSystemName, register
-
Fields inherited from interface jmri.NamedBean
DISPLAY_NAME_FORMAT, INCONSISTENT, PROPERTY_COMMENT, PROPERTY_ENABLED, PROPERTY_KNOWN_STATE, PROPERTY_STATE, PROPERTY_USERNAME, QUOTED_NAME_FORMAT, UNKNOWN
-
Fields inherited from interface jmri.Signal
PROPERTY_HELD, PROPERTY_LIT
-
Fields inherited from interface jmri.SignalMast
PROPERTY_ASPECT, PROPERTY_ASPECT_DISABLED, PROPERTY_ASPECT_ENABLED, PROPERTY_PERMISSIVE_SML_DISABLED
-
-
Constructor Summary
Constructors Constructor Description LNCPSignalMast(java.lang.String sys)LNCPSignalMast(java.lang.String sys, java.lang.String user)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddispose()Deactivate this object, so that it releases as many resources as possible and no longer effects others.(package private) voidinit()voidmessage(LocoNetMessage l)Member function that will be invoked by a LocoNetInterface implementation to forward a LocoNet message from the layout.voidsetAspect(java.lang.String aspect)Set aspect to a valid name in the current signal system definition.voidsetKnownState(java.lang.String aspect)-
Methods inherited from class jmri.implementation.DccSignalMast
configureFromName, getCommandStation, getDccSignalMastAddress, getDccSignalMastPacketSendCount, getOutputForAppearance, getUnlitId, isDCCAddressUsed, setDccSignalMastPacketSendCount, setLit, setOutputForAppearance, setUnlitId, useAddressOffSet, useAddressOffSet
-
Methods inherited from class jmri.implementation.AbstractSignalMast
allowUnLit, configureAspectTable, configureSignalSystemDefinition, getAllKnownAspects, getAppearanceMap, getAspect, getBeanType, getDisabledAspects, getHeld, getLit, getMastType, getSignalSystem, getSpeed, getState, getUsageReport, getValidAspects, isAspectDisabled, isAtStop, isCleared, isPermissiveSmlDisabled, isShowingRestricting, setAllowUnLit, setAspectDisabled, setAspectEnabled, setHeld, setMastType, setPermissiveSmlDisabled, setState, vetoableChange
-
Methods inherited from class jmri.implementation.AbstractNamedBean
addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListener, compareSystemNameSuffix, describeState, equals, firePropertyChange, getComment, getDisplayName, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListeners, getPropertyChangeListeners, getPropertyChangeListenersByReference, getPropertyKeys, getSystemName, getUserName, hashCode, removeProperty, removePropertyChangeListener, removePropertyChangeListener, setComment, setProperty, setUserName, toString, toStringSuffix, updateListenerRef
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jmri.NamedBean
addPropertyChangeListener, addPropertyChangeListener, compareSystemNameSuffix, compareTo, describeState, getComment, getDisplayName, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListenersByReference, getPropertyKeys, getRecommendedToolTip, getSystemName, getUserName, removeProperty, setComment, setProperty, setUserName, toString, updateListenerRef
-
Methods inherited from interface jmri.beans.PropertyChangeProvider
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
-
-
-
Field Detail
-
dccByteAddr1
byte dccByteAddr1
-
dccByteAddr2
byte dccByteAddr2
-
-
Constructor Detail
-
LNCPSignalMast
public LNCPSignalMast(java.lang.String sys, java.lang.String user)
-
LNCPSignalMast
public LNCPSignalMast(java.lang.String sys)
-
-
Method Detail
-
init
void init()
-
message
public void message(LocoNetMessage l)
Description copied from interface:LocoNetListenerMember function that will be invoked by a LocoNetInterface implementation to forward a LocoNet message from the layout.- Specified by:
messagein interfaceLocoNetListener- Parameters:
l- The received LocoNet message. Note that this same object may be presented to multiple users. It should not be modified here.
-
setAspect
public void setAspect(@Nonnull java.lang.String aspect)
Description copied from interface:SignalMastSet aspect to a valid name in the current signal system definition.- Specified by:
setAspectin interfaceSignalMast- Overrides:
setAspectin classDccSignalMast- Parameters:
aspect- the new aspect shown
-
setKnownState
public void setKnownState(java.lang.String aspect)
-
dispose
public void dispose()
Description copied from class:AbstractNamedBeanDeactivate this object, so that it releases as many resources as possible and no longer effects others.For example, if this object has listeners, after a call to this method it should no longer notify those listeners. Any native or system-wide resources it maintains should be released, including threads, files, etc.
It is an error to invoke any other methods on this object once dispose() has been called. Note, however, that there is no guarantee about behavior in that case.
Afterwards, references to this object may still exist elsewhere, preventing its garbage collection. But it's formally dead, and shouldn't be keeping any other objects alive. Therefore, this method should null out any references to other objects that this NamedBean contained.
- Specified by:
disposein interfaceNamedBean- Overrides:
disposein classAbstractNamedBean
-
-