SoCounter(3IV)NAMESoCounter (SoCounter) - triggered integer counter
INHERITS FROM
SoBase > SoFieldContainer > SoEngine > SoCounterSYNOPSIS
#include <Inventor_c/engines/SoCounter.h>
Inputs from class SoCounter:
SoSFShort min
SoSFShort max
SoSFShort step
SoSFTrigger trigger
SoSFShort reset
Outputs from class SoCounter:
(SoSFShort) output
(SoSFTrigger) syncOut
Functions from class SoCounter:
SoCounter * SoCounterCreate()
Functions from class SoEngine:
SoType SoCounterGetTypeId()
int SoCounterGetOuts(const SoCounter *this,
SoEngineOutputList *list)
SoEngineOutput * SoCounterGetOut(const SoCounter *this, const char
*outputName)
SbBool SoCounterGetOutName(const SoCounter *this, const
SoEngineOutput *output, SbName *outputName)
SoEngine * SoCounterCopy(const SoCounter *this)
SoEngine * SoCounterGetByName(const char *name)
int SoCounterGetByNameList(const char *name, SoEngineList
*list)
Functions from class SoFieldContainer:
SoType SoCounterGetClassTypeId()
void SoCounterSetToDflts(SoCounter *this)
SbBool SoCounterHasDfltVals(const SoCounter *this)
SbBool SoCounterFldsAreEq(const SoCounter *this, const
SoFieldContainer *fc)
void SoCounterCopyFieldVals(SoCounter *this, const
SoFieldContainer *fc, SbBool copyConnections =
FALSE)
SbBool SoCounterSet(SoCounter *this, const char
*fieldDataString)
Page 1SoCounter(3IV)
void SoCounterGet(SoCounter *this, SbString
*fieldDataString)
int SoCounterGetFields(const SoCounter *this, SoFieldList
*resultList)
SoField * SoCounterGetField(const SoCounter *this, const char
*fieldName)
SbBool SoCounterGetFieldName(const SoCounter *this, const
SoField *field, SbName *fieldName)
SbBool SoCounterIsNotifyEnabled(const SoCounter *this)
SbBool SoCounterEnableNotify(SoCounter *this, SbBool flag)
Functions from class SoBase:
void SoCounterRef(SoCounter *this)
void SoCounterUnref(const SoCounter *this)
void SoCounterUnrefNoDelete(const SoCounter *this)
void SoCounterTouch(SoCounter *this)
SbBool SoCounterIsOfType(const SoCounter *this, SoType type)
void SoCounterSetName(SoCounter *this, const char *name)
SbName SoCounterGetName(const SoCounter *this)
DESCRIPTION
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.
INPUTS
SoSFShort min
Minimum value for the counter.
SoSFShort max
Maximum value for the counter.
Page 2SoCounter(3IV)
SoSFShort step
Counter step value.
SoSFTrigger trigger
Go to the next step.
SoSFShort reset
At the next trigger, reset the counter to the specified value.
OUTPUTS
(SoSFShort) output
Counts min-to-max in step increments.
(SoSFTrigger) syncOut
Triggers at cycle start.
FUNCTIONSSoCounter * SoCounterCreate()
Constructor
FILE FORMAT/DEFAULTS
Counter {
min 0
max 1
step 1
trigger
reset 0
}
SEE ALSO
SoTimeCounter, SoEngineOutput
Page 3