Class SoCounter

  • All Implemented Interfaces:
    SafeDisposable

    public class SoCounter
    extends SoEngine
    Triggered integer counter. This engine is a counter that outputs numbers, starting at a minimum value, increasing by a step value, and ending with a number that does not exceed the maximum value. It outputs the next number whenever the trigger input is touched. When the maximum number is reached, it starts counting from the beginning again.

    At any time the counter can be reset to a specific value by setting the reset input field to that value. The next time the counter is triggered it will start counting from there. Note that the counter will always output numbers based on the min, max and step values, and setting the reset value does not affect those input fields. If the reset value is not a legal counter value, the counter will still behave as though it is.

    • If reset is greater than max, the counter is set to max.
    • If reset is less than min, the counter is set to min.
    • If reset is between steps, the counter is set to the lower step value.

    Each time a counting cycle is started, the syncOut output is triggered. This output can be used to synchronize some other event with the counting cycle.

    File format/default:

    Counter {

      min 0
      max 1
      step 1
      trigger
      reset 0
    }

    See Also:
    SoTimeCounter, SoEngineOutput
    • Field Detail

      • min

        public final SoSFShort min
        Minimum value for the counter.
      • max

        public final SoSFShort max
        Maximum value for the counter.
      • step

        public final SoSFShort step
        Counter step value.
      • trigger

        public final SoSFTrigger trigger
        Go to the next step.
      • reset

        public final SoSFShort reset
        At the next trigger, reset the counter to the specified value.
    • Constructor Detail

      • SoCounter

        public SoCounter()
        Constructor.