Package jmri.jmrix.powerline.dmx512
Class SpecificDmxLight
- java.lang.Object
-
- jmri.implementation.AbstractNamedBean
-
- jmri.implementation.AbstractLight
-
- jmri.implementation.AbstractVariableLight
-
- jmri.jmrix.powerline.SerialLight
-
- jmri.jmrix.powerline.dmx512.SpecificDmxLight
-
- All Implemented Interfaces:
java.lang.Comparable<NamedBean>,AnalogIO,PropertyChangeProvider,DigitalIO,Light,NamedBean,VariableLight
- Direct Known Subclasses:
SpecificLight
public class SpecificDmxLight extends SerialLight
Implementation of the Light class for DMX based subclasses.DMX maps the value of 0.0 to 1.0 to values of 0 to 255.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface jmri.AnalogIO
AnalogIO.AbsoluteOrRelative
-
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 protected intmaxDimStep(package private) SerialTrafficControllertc-
Fields inherited from class jmri.jmrix.powerline.SerialLight
devicecode, housecode, idhighbyte, idlowbyte, idmiddlebyte, unitid
-
Fields inherited from class jmri.implementation.AbstractVariableLight
alarmSyncUpdate, internalClock, minuteChangeListener, mLastTransitionDate, mNextTransitionTs, mTransitionDuration, mTransitionTargetIntensity
-
Fields inherited from class jmri.implementation.AbstractLight
lightControlList, mActive, mCurrentIntensity, mEnabled, mMaxIntensity, mMinIntensity, mState
-
Fields inherited from class jmri.implementation.AbstractNamedBean
listenerRefs, mSystemName, register
-
Fields inherited from interface jmri.Light
FAST_CLOCK_CONTROL, INTERMEDIATE, NO_CONTROL, PROPERTY_TARGET_INTENSITY, SENSOR_CONTROL, TIMED_ON_CONTROL, TRANSITIONING, TRANSITIONINGHIGHER, TRANSITIONINGLOWER, TRANSITIONINGTOFULLOFF, TRANSITIONINGTOFULLON, TURNOUT_STATUS_CONTROL, TWO_SENSOR_CONTROL
-
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.VariableLight
PROPERTY_CURRENT_INTENSITY, PROPERTY_MAX_INTENSITY, PROPERTY_MIN_INTENSITY
-
-
Constructor Summary
Constructors Constructor Description SpecificDmxLight(java.lang.String systemName, SerialTrafficController tc)Create a Light object, with only system name.SpecificDmxLight(java.lang.String systemName, SerialTrafficController tc, java.lang.String userName)Create a Light object, with both system and user names.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected intgetNumberOfSteps()Number of steps from dim to bright is maintained in specific SerialTrafficController implementationprotected voidsendIntensity(double intensity)Set the intensity for the DMX hardware to reach a specific intensity.protected voidsendOnOffCommand(int newState)Send a On/Off Command to the hardware-
Methods inherited from class jmri.jmrix.powerline.SerialLight
initializeLight, initIntensity
-
Methods inherited from class jmri.implementation.AbstractVariableLight
describeState, getAbsoluteOrRelative, getCommandedAnalogValue, getCurrentIntensity, getMax, getMaxIntensity, getMin, getMinIntensity, getResolution, getState, getTargetIntensity, getTransitionTime, isTransitionAvailable, isTransitioning, newInternalMinute, notifyTargetIntensityChange, setCommandedAnalogValue, setMaxIntensity, setMinIntensity, setObservedAnalogValue, setState, setState, setTargetIntensity, setTransitionTime, startTransition
-
Methods inherited from class jmri.implementation.AbstractLight
activateLight, addLightControl, clearLightControls, deactivateLight, doNewState, getBeanType, getEnabled, getLightControlList, getState, getUsageReport, notifyStateChange, setEnabled
-
Methods inherited from class jmri.implementation.AbstractNamedBean
addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListener, compareSystemNameSuffix, dispose, 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, vetoableChange
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface jmri.AnalogIO
getKnownAnalogValue
-
Methods inherited from interface jmri.Light
activateLight, addLightControl, clearLightControls, deactivateLight, getCommandedState, getEnabled, getKnownState, getLightControlList, getState, setCommandedState, setEnabled
-
Methods inherited from interface jmri.NamedBean
addPropertyChangeListener, addPropertyChangeListener, compareSystemNameSuffix, compareTo, dispose, getBeanType, getComment, getDisplayName, getDisplayName, getListenerRef, getListenerRefs, getNumPropertyChangeListeners, getProperty, getPropertyChangeListenersByReference, getPropertyKeys, getRecommendedToolTip, getSystemName, getUsageReport, getUserName, removeProperty, setComment, setProperty, setUserName, toString, updateListenerRef, vetoableChange
-
Methods inherited from interface jmri.beans.PropertyChangeProvider
addPropertyChangeListener, addPropertyChangeListener, getPropertyChangeListeners, getPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener
-
Methods inherited from interface jmri.VariableLight
isConsistentState, isConsistentValue, requestUpdateFromLayout
-
-
-
-
Field Detail
-
maxDimStep
protected int maxDimStep
-
-
Constructor Detail
-
SpecificDmxLight
public SpecificDmxLight(java.lang.String systemName, SerialTrafficController tc)
Create a Light object, with only system name.'systemName' was previously validated in SerialLightManager
- Parameters:
systemName- system nametc- traffic controller
-
SpecificDmxLight
public SpecificDmxLight(java.lang.String systemName, SerialTrafficController tc, java.lang.String userName)
Create a Light object, with both system and user names.'systemName' was previously validated in SerialLightManager
- Parameters:
systemName- system nametc- traffic controlleruserName- user name
-
-
Method Detail
-
sendIntensity
protected void sendIntensity(double intensity)
Set the intensity for the DMX hardware to reach a specific intensity. Acts immediately, and changes no general state.- Specified by:
sendIntensityin classAbstractVariableLight- Parameters:
intensity- new intensity
-
getNumberOfSteps
protected int getNumberOfSteps()
Number of steps from dim to bright is maintained in specific SerialTrafficController implementation- Specified by:
getNumberOfStepsin classAbstractVariableLight- Returns:
- number of steps
-
sendOnOffCommand
protected void sendOnOffCommand(int newState)
Send a On/Off Command to the hardware- Overrides:
sendOnOffCommandin classSerialLight- Parameters:
newState- new state
-
-