jmri.implementation
Class MergSD2SignalHead

java.lang.Object
  extended by jmri.implementation.AbstractNamedBean
      extended by jmri.implementation.AbstractSignalHead
          extended by jmri.implementation.DefaultSignalHead
              extended by jmri.implementation.MergSD2SignalHead
All Implemented Interfaces:
Serializable, NamedBean, SignalHead

public class MergSD2SignalHead
extends DefaultSignalHead

Implement SignalHead for the MERG Signal Driver 2.

The Signal Driver, runs off of the output of a steady State Accessory decoder. and can be configured to run 2, 3 or 4 Aspect signals. With 2 or 3 aspect signals being able to have a feather included. The class assigns turnout positions for RED, YELLOW, GREEN and Double Yellow aspects. THE SD2 does not support flashing double yellow aspects on turnouts, an alternative method is required to do this, as per the MERG SD2 documentation. nb As there is no Double Yellow asigned within JMRI, we use the Flash Yellow instead.

For more info on the signals, see http://www.merg.info.

Author:
Kevin Dickerson Copyright (C) 2009
See Also:
Serialized Form

Field Summary
 
Fields inherited from class jmri.implementation.DefaultSignalHead
mFlashOn
 
Fields inherited from class jmri.implementation.AbstractSignalHead
mAppearance, mHeld, mLit
 
Fields inherited from interface jmri.SignalHead
DARK, FLASHGREEN, FLASHLUNAR, FLASHRED, FLASHYELLOW, GREEN, LUNAR, RED, YELLOW
 
Fields inherited from interface jmri.NamedBean
INCONSISTENT, UNKNOWN
 
Constructor Summary
MergSD2SignalHead(String sys, int aspect, NamedBeanHandle<Turnout> t1, NamedBeanHandle<Turnout> t2, NamedBeanHandle<Turnout> t3, boolean feather, boolean home)
           
MergSD2SignalHead(String sys, String user, int aspect, NamedBeanHandle<Turnout> t1, NamedBeanHandle<Turnout> t2, NamedBeanHandle<Turnout> t3, boolean feather, boolean home)
           
 
Method Summary
 void dispose()
          Remove references to and from this object, so that it can eventually be garbage-collected.
 int getAspects()
           
 boolean getFeather()
           
 boolean getHome()
           
 NamedBeanHandle<Turnout> getInput1()
           
 NamedBeanHandle<Turnout> getInput2()
           
 NamedBeanHandle<Turnout> getInput3()
           
 void setAppearance(int newAppearance)
           
 void setAspects(int i)
           
 void setFeather(boolean boo)
           
 void setHome(boolean boo)
           
 void setInput1(NamedBeanHandle<Turnout> t)
           
 void setInput2(NamedBeanHandle<Turnout> t)
           
 void setInput3(NamedBeanHandle<Turnout> t)
           
 void setLit(boolean newLit)
           
protected  void updateOutput()
          Type-specific routine to handle output to the layout hardware.
 
Methods inherited from class jmri.implementation.DefaultSignalHead
getValidStateNames, getValidStates, setHeld, startFlash, stopFlash
 
Methods inherited from class jmri.implementation.AbstractSignalHead
getAppearance, getAppearanceName, getAppearanceName, getDefaultStateName, getDefaultValidStateNames, getDefaultValidStates, getHeld, getLit, getState, setState
 
Methods inherited from class jmri.implementation.AbstractNamedBean
addPropertyChangeListener, firePropertyChange, getComment, getDisplayName, getNumPropertyChangeListeners, getProperty, getPropertyChangeListeners, getSystemName, getUserName, removePropertyChangeListener, setComment, setProperty, setUserName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface jmri.NamedBean
addPropertyChangeListener, getComment, getDisplayName, getNumPropertyChangeListeners, getProperty, getSystemName, getUserName, removePropertyChangeListener, setComment, setProperty, setUserName
 

Constructor Detail

MergSD2SignalHead

public MergSD2SignalHead(String sys,
                         String user,
                         int aspect,
                         NamedBeanHandle<Turnout> t1,
                         NamedBeanHandle<Turnout> t2,
                         NamedBeanHandle<Turnout> t3,
                         boolean feather,
                         boolean home)

MergSD2SignalHead

public MergSD2SignalHead(String sys,
                         int aspect,
                         NamedBeanHandle<Turnout> t1,
                         NamedBeanHandle<Turnout> t2,
                         NamedBeanHandle<Turnout> t3,
                         boolean feather,
                         boolean home)
Method Detail

setAppearance

public void setAppearance(int newAppearance)
Specified by:
setAppearance in interface SignalHead
Overrides:
setAppearance in class DefaultSignalHead

setLit

public void setLit(boolean newLit)
Specified by:
setLit in interface SignalHead
Overrides:
setLit in class DefaultSignalHead

updateOutput

protected void updateOutput()
Description copied from class: DefaultSignalHead
Type-specific routine to handle output to the layout hardware. Does not notify listeners of changes; that's done elsewhere. Should use the following variables to determine what to send:

Specified by:
updateOutput in class DefaultSignalHead

dispose

public void dispose()
Remove references to and from this object, so that it can eventually be garbage-collected.

Specified by:
dispose in interface NamedBean
Overrides:
dispose in class AbstractNamedBean

getInput1

public NamedBeanHandle<Turnout> getInput1()

getInput2

public NamedBeanHandle<Turnout> getInput2()

getInput3

public NamedBeanHandle<Turnout> getInput3()

getAspects

public int getAspects()

getFeather

public boolean getFeather()

getHome

public boolean getHome()

setInput1

public void setInput1(NamedBeanHandle<Turnout> t)

setInput2

public void setInput2(NamedBeanHandle<Turnout> t)

setInput3

public void setInput3(NamedBeanHandle<Turnout> t)

setAspects

public void setAspects(int i)

setFeather

public void setFeather(boolean boo)

setHome

public void setHome(boolean boo)


Copyright © 1997 - 2009 JMRI Community.
JMRI, DecoderPro, PanelPro, SoundPro, DispatcherPro and associated logos are our trademarks.

Additional information on copyright, trademarks and licenses is linked here.
Site hosted by: Get JMRI Model Railroad Interface at SourceForge.net. Fast, secure and Free Open Source software downloads