Class SoCounter
- java.lang.Object
-
- com.openinventor.inventor.Inventor
-
- com.openinventor.inventor.misc.SoBase
-
- com.openinventor.inventor.fields.SoFieldContainer
-
- com.openinventor.inventor.engines.SoEngine
-
- com.openinventor.inventor.engines.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 thetrigger
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 thanmax
, the counter is set tomax
. - If
reset
is less thanmin
, the counter is set tomin
. - 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
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
-
Field Summary
Fields Modifier and Type Field Description SoSFShort
max
Maximum value for the counter.SoSFShort
min
Minimum value for the counter.SoEngineOutput
output
(SoSFShort
) Counts min-to-max in step increments.SoSFShort
reset
At the next trigger, reset the counter to the specified value.SoSFShort
step
Counter step value.SoEngineOutput
syncOut
(SoSFTrigger
) Triggers at cycle start.SoSFTrigger
trigger
Go to the next step.-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description SoCounter()
Constructor.
-
Method Summary
-
Methods inherited from class com.openinventor.inventor.engines.SoEngine
copy, getByName, getOutput, getOutputName
-
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
-
Methods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable, touch
-
Methods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
-
-
-
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.
-
output
public final SoEngineOutput output
(SoSFShort
) Counts min-to-max in step increments.
-
syncOut
public final SoEngineOutput syncOut
(SoSFTrigger
) Triggers at cycle start.
-
-