From 494a07a361fe4ee0e54f77468a976b1a77818770 Mon Sep 17 00:00:00 2001 From: Tom Schouten Date: Fri, 12 Sep 2003 22:26:57 +0000 Subject: creb 0.9.0 svn path=/trunk/externals/creb/; revision=956 --- modules++/Makefile | 2 +- modules++/filterortho.cc | 26 ++++++++++++++------------ 2 files changed, 15 insertions(+), 13 deletions(-) (limited to 'modules++') diff --git a/modules++/Makefile b/modules++/Makefile index 1329f4b..65ba97a 100644 --- a/modules++/Makefile +++ b/modules++/Makefile @@ -1,7 +1,7 @@ include ../Makefile.config current: all -all: biquadseries.o filterortho.o +all: biquadseries.o filterortho.o blosc.o clean: diff --git a/modules++/filterortho.cc b/modules++/filterortho.cc index 11c6aac..c80552b 100644 --- a/modules++/filterortho.cc +++ b/modules++/filterortho.cc @@ -30,7 +30,7 @@ typedef struct filterortho_struct { t_object x_obj; t_float x_f; - DSPIfilterOrtho filterortho; + DSPIfilterOrtho *filterortho; } t_filterortho; void filterortho_bang(t_filterortho *x) @@ -68,11 +68,12 @@ static t_int *filterortho_perform(t_int *w) static void filterortho_dsp(t_filterortho *x, t_signal **sp) { - dsp_add(filterortho_perform, 4, &(x->filterortho), sp[0]->s_n, sp[0]->s_vec, sp[1]->s_vec); + dsp_add(filterortho_perform, 4, x->filterortho, sp[0]->s_n, sp[0]->s_vec, sp[1]->s_vec); } -void filterortho_free(void) +void filterortho_free(t_filterortho *x) { + delete x->filterortho; } @@ -80,21 +81,22 @@ t_class *filterortho_class; -void setLP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho.setLP(f / sys_getsr(), Q);} -void setHP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho.setHP(f / sys_getsr(), Q);} -void setBP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho.setBP(f / sys_getsr(), Q);} -void setBR(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho.setBR(f / sys_getsr(), Q);} -void setAP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho.setAP(f / sys_getsr(), Q);} +void setLP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho->setLP(f / sys_getsr(), Q);} +void setHP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho->setHP(f / sys_getsr(), Q);} +void setBP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho->setBP(f / sys_getsr(), Q);} +void setBR(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho->setBR(f / sys_getsr(), Q);} +void setAP(t_filterortho *x, t_floatarg f, t_floatarg Q) {x->filterortho->setAP(f / sys_getsr(), Q);} -void setLS(t_filterortho *x, t_floatarg f, t_floatarg A) {x->filterortho.setLS(f / sys_getsr(), A);} -void setHS(t_filterortho *x, t_floatarg f, t_floatarg A) {x->filterortho.setHS(f / sys_getsr(), A);} +void setLS(t_filterortho *x, t_floatarg f, t_floatarg A) {x->filterortho->setLS(f / sys_getsr(), A);} +void setHS(t_filterortho *x, t_floatarg f, t_floatarg A) {x->filterortho->setHS(f / sys_getsr(), A);} -void setEQ(t_filterortho *x, t_floatarg f, t_floatarg Q, t_floatarg A) {x->filterortho.setEQ(f / sys_getsr(), Q, A);} +void setEQ(t_filterortho *x, t_floatarg f, t_floatarg Q, t_floatarg A) {x->filterortho->setEQ(f / sys_getsr(), Q, A);} void *filterortho_new() { t_filterortho *x = (t_filterortho *)pd_new(filterortho_class); + x->filterortho = new DSPIfilterOrtho(); outlet_new(&x->x_obj, gensym("signal")); setLP(x, 10000, 2); return (void *)x; @@ -107,12 +109,12 @@ extern "C" { void filterortho_tilde_setup(void) { //post("filterortho~ v0.1"); - filterortho_class = class_new(gensym("filterortho~"), (t_newmethod)filterortho_new, (t_method)filterortho_free, sizeof(t_filterortho), 0, A_NULL); CLASS_MAINSIGNALIN(filterortho_class, t_filterortho, x_f); + class_addmethod(filterortho_class, (t_method)filterortho_bang, gensym("bang"), A_NULL); class_addmethod(filterortho_class, (t_method)filterortho_dsp, gensym("dsp"), A_NULL); -- cgit v1.2.1