sel b 16 4t pulseD

select one out of 16 booleans, chainable, 4 tracks, pulse output
Author: Johannes Taelman
License: BSD
Github: jaffa/sel/sel b 16 4t PD.axo

Inlets

int32 in

bool32 default value channel 1

bool32 default value channel 2

bool32 default value channel 3

bool32 default value channel 4

Outlets

int32 chain out (in-16)

bool32.pulse output channel 1

bool32.pulse output channel 2

bool32.pulse output channel 3

bool32.pulse output channel 4

Parameters

bin16 p1

bin16 p2

bin16 p3

bin16 p4

Displays

int32.bar16 in

Declaration
int in_prev;
Init
in_prev = 0;
Control Rate
if ((inlet_in >= 0) && (inlet_in < 16)) {
  outlet_o1 = (inlet_in != in_prev) && (param_p1 & (1 << inlet_in));
  outlet_o2 = (inlet_in != in_prev) && (param_p2 & (1 << inlet_in));
  outlet_o3 = (inlet_in != in_prev) && (param_p3 & (1 << inlet_in));
  outlet_o4 = (inlet_in != in_prev) && (param_p4 & (1 << inlet_in));
} else {
  outlet_o1 = inlet_def1;
  outlet_o2 = inlet_def2;
  outlet_o3 = inlet_def3;
  outlet_o4 = inlet_def4;
}
outlet_chain = inlet_in - 16;
disp_in = inlet_in;
in_prev = inlet_in;

Privacy

© 2024 Zrna Research