1 #include "../src/m_pd.h"
2 #include <../src/m_fixed.h>
4 static t_class
*clip_class
;
14 static void *clip_new(t_floatarg lo
, t_floatarg hi
)
16 t_clip
*x
= (t_clip
*)pd_new(clip_class
);
19 outlet_new(&x
->x_obj
, gensym("signal"));
20 floatinlet_new(&x
->x_obj
, &x
->x_lo
);
21 floatinlet_new(&x
->x_obj
, &x
->x_hi
);
26 static t_int
*clip_perform(t_int
*w
)
28 t_clip
*x
= (t_clip
*)(w
[1]);
29 t_sample
*in
= (t_sample
*)(w
[2]);
30 t_sample
*out
= (t_sample
*)(w
[3]);
47 static void clip_dsp(t_clip
*x
, t_signal
**sp
)
49 dsp_add(clip_perform
, 4, x
, sp
[0]->s_vec
, sp
[1]->s_vec
, sp
[0]->s_n
);
52 void clip_tilde_setup(void)
54 clip_class
= class_new(gensym("clip~"), (t_newmethod
)clip_new
, 0,
55 sizeof(t_clip
), 0, A_DEFFLOAT
, A_DEFFLOAT
, 0);
56 CLASS_MAINSIGNALIN(clip_class
, t_clip
, x_f
);
57 class_addmethod(clip_class
, (t_method
)clip_dsp
, gensym("dsp"), 0);