3
/*--------------- decimator ---------------*/
5
static t_class *decimator_class;
7
typedef struct _decimator
14
static void decimator_perform(t_decimator *x, t_float in)
18
outlet_float(x->x_obj.ob_outlet, in);
19
x->m_state=x->m_factor;
28
static void decimator_setFactor(t_decimator *x, t_float factor)
30
x->m_factor=(int)factor - 1;
33
static void decimator_clear(t_decimator *x)
39
static void *decimator_new(t_float factor)
42
t_decimator *x=(t_decimator *)pd_new(decimator_class);
43
outlet_new(&x->x_obj, gensym("float"));
45
if (factor<1) factor=2;
47
decimator_setFactor(x, factor);
53
void decimator_setup(void)
55
decimator_class = class_new(gensym("decimator"),
56
(t_newmethod)decimator_new, 0,
60
class_addfloat(decimator_class, (t_method)decimator_perform);
61
class_addmethod(decimator_class, (t_method)decimator_clear,
62
gensym("clear"), A_GIMME, NULL);
63
class_addmethod(decimator_class, (t_method)decimator_setFactor,
64
gensym("factor"), A_DEFFLOAT, NULL);