Class SampleAutomaton2

java.lang.Object
jmri.jmrit.automat.AbstractAutomaton
jmri.jmrit.automat.SampleAutomaton2
All Implemented Interfaces:
Runnable

public class SampleAutomaton2 extends AbstractAutomaton
This sample Automaton watches a Sensor, and adjusts the momentum of a locomotive using ops-mode programming when the sensor state changes.

The sensor and decoder are hardcoded, as this is an example of just the Automaton function. Adding a GUI to configure these would be straight-forward. The values could be passed via the constructor, or the constructor (which can run in any required thread) could invoke a dialog.

For test purposes, one of these objects can be created and invoked by a SampleAutomaton2Action.

For more information on JMRI support for automation classes, please see the JMRI Layout Automation in Java page.

See Also:
  • Field Details

  • Constructor Details

  • Method Details

    • init

      protected void init()
      By default, monitors sensor "32" and controls locomotive 1234(long).
      Overrides:
      init in class AbstractAutomaton
    • handle

      protected boolean handle()
      Watch "sensor", and when it changes the momentum CV to match.
      Overrides:
      handle in class AbstractAutomaton
      Returns:
      Always returns true to continue operation
    • setMomentum

      void setMomentum(int now)
      Set CV3, acceleration momentum, to match the sensor state. When the sensor is active, set the momentum to 30; when inactive, set the momentum to 0.
      Parameters:
      now - The current value of the sensor state.