Class AbstractTurnout

java.lang.Object
jmri.implementation.AbstractNamedBean
jmri.implementation.AbstractTurnout
All Implemented Interfaces:
PropertyChangeListener, Comparable<NamedBean>, EventListener, PropertyChangeProvider, DigitalIO, NamedBean, Turnout
Direct Known Subclasses:
AcelaTurnout, CbusTurnout, DCCppTurnout, EasyDccTurnout, EcosTurnout, IpocsTurnout, JMRIClientTurnout, LnTurnout, MarklinTurnout, MqttTurnout, MrcTurnout, Mx1Turnout, NceTurnout, OlcbTurnout, RaspberryPiTurnout, SerialTurnout, SerialTurnout, SerialTurnout, SerialTurnout, SerialTurnout, SerialTurnout, SerialTurnout, SprogCSTurnout, SprogTurnout, SRCPTurnout, TamsTurnout, XBeeTurnout, XNetTurnout, XpaTurnout

public abstract class AbstractTurnout
extends AbstractNamedBean
implements Turnout, PropertyChangeListener
Abstract base for the Turnout interface.

Implements basic feedback modes:

  • NONE feedback, where the KnownState and CommandedState track each other.
  • ONESENSOR feedback where the state of a single sensor specifies THROWN vs CLOSED
  • TWOSENSOR feedback, where one sensor specifies THROWN and another CLOSED.
If you want to implement some other feedback, override and modify setCommandedState() here.

Implements the parameter binding support.

Note that we consider it an error for there to be more than one object that corresponds to a particular physical turnout on the layout.