int32 value
bool32.rising increment trigger
bool32.rising decrement trigger
bool32 mom
bool32 b
bool32 a
int32 output
int32 value
int32 min
int32 max
int32 preset
int val;
int encoderPos;
int encoderLast;
int n;
encoderPos = 0;
encoderLast = 0;
n = 0;
val = 0;
if (inlet_value == param_value) {
outlet_a = 1;
n = inlet_trig;
if ((encoderLast == 0) && (n > 0)) {
if (inlet_dir == 0) {
if (param_preset + encoderPos > param_min) {
encoderPos = encoderPos - 1;
}
} else {
if (param_preset + encoderPos < param_max) {
encoderPos = encoderPos + 1;
}
}
}
encoderLast = n;
if (val == inlet_mom) {
val = !inlet_mom;
}
} else {
outlet_a = 0;
}
outlet_o = param_preset + encoderPos;
outlet_b = val;