From bd3d7f243bb5a105b99ce701774cf3d402396576 Mon Sep 17 00:00:00 2001 From: musil Date: Wed, 8 Nov 2006 16:24:39 +0000 Subject: change sig*.c to *~.c and sig* to *_tilde change makefiles svn path=/trunk/externals/iemlib/; revision=6235 --- src/iem_t3_lib/sigt3_sig.c | 200 --------------------------------------------- 1 file changed, 200 deletions(-) delete mode 100644 src/iem_t3_lib/sigt3_sig.c (limited to 'src/iem_t3_lib/sigt3_sig.c') diff --git a/src/iem_t3_lib/sigt3_sig.c b/src/iem_t3_lib/sigt3_sig.c deleted file mode 100644 index 59ddbdb..0000000 --- a/src/iem_t3_lib/sigt3_sig.c +++ /dev/null @@ -1,200 +0,0 @@ -/* For information on usage and redistribution, and for a DISCLAIMER OF ALL -* WARRANTIES, see the file, "LICENSE.txt," in this distribution. - -iem_t3_lib written by Gerhard Eckel, Thomas Musil, Copyright (c) IEM KUG Graz Austria 2000 - 2005 */ - -#ifdef _MSC_VER -#pragma warning( disable : 4244 ) -#pragma warning( disable : 4305 ) -#endif - -#include "m_pd.h" -#include "iemlib.h" -#include -#include -#include - -/* -------------------------- sigt3_sig~ ------------------------------ */ -static t_class *sigt3_sig_class; - -typedef struct _sigt3_sig -{ - t_object x_obj; - t_clock *x_clock; - float x_old_val; - float x_new_val; - float *x_beg; - int x_n; - int x_t3_bang_samps; - int x_transient; - float x_ms2samps; - float x_ticks2ms; -} t_sigt3_sig; - -static void sigt3_sig_tick(t_sigt3_sig *x) -{ - float *trans = x->x_beg, val; - int n = x->x_n, t3_bang_samps, i; - - t3_bang_samps = x->x_t3_bang_samps; - if(!x->x_transient) - { - val = x->x_old_val; - for(i=0; ix_transient = 1; - } - val = x->x_old_val = x->x_new_val; - for(i=t3_bang_samps; ix_clock); - x->x_new_val = x->x_old_val; -} - -static void sigt3_sig_list(t_sigt3_sig *x, t_symbol *s, int ac, t_atom *av) -{ - if((ac == 2)&&IS_A_FLOAT(av,0)&&IS_A_FLOAT(av,1)) - { - int n = x->x_n, t3_bang_samps, ticks; - - t3_bang_samps = (int)((float)atom_getfloatarg(0, ac, av)*x->x_ms2samps); - x->x_new_val = (float)atom_getfloatarg(1, ac, av); - if(t3_bang_samps < 0) - t3_bang_samps = 0; - ticks = t3_bang_samps / n; - x->x_t3_bang_samps = t3_bang_samps - n*ticks; - if(ticks < 1) - sigt3_sig_tick(x); - else - clock_delay(x->x_clock, (double)ticks * (double)x->x_ticks2ms); - } -} - -static t_int *sigt3_sig_perform(t_int *w) -{ - t_float *out = (t_float *)(w[1]); - t_sigt3_sig *x = (t_sigt3_sig *)(w[2]); - int n = (int)(w[3]); - - if(x->x_transient) - { - float *trans = x->x_beg; - - while(n--) - *out++ = *trans++; - x->x_transient = 0; - } - else - { - float val = x->x_new_val; - - while(n--) - *out++ = val; - } - return (w+4); -} - -static t_int *sigt3_sig_perf8(t_int *w) -{ - t_float *out = (t_float *)(w[1]); - t_sigt3_sig *x = (t_sigt3_sig *)(w[2]); - int n = (int)(w[3]), i; - - if(x->x_transient) - { - float *trans = x->x_beg; - - for(i=0; ix_transient = 0; - } - else - { - float val = x->x_new_val; - - for(i=0; is_n > x->x_n) - { - freebytes(x->x_beg, x->x_n*sizeof(float)); - x->x_n = sp[0]->s_n; - x->x_beg = (float *)getbytes(x->x_n*sizeof(float)); - } - else - x->x_n = sp[0]->s_n; - x->x_ms2samps = 0.001*(float)sp[0]->s_sr; - x->x_ticks2ms = (float)x->x_n / x->x_ms2samps; - i = x->x_n; - val = x->x_new_val; - trans = x->x_beg; - while(i--) - *trans++ = val; - - if((sp[0]->s_n)&7) - dsp_add(sigt3_sig_perform, 3, sp[0]->s_vec, x, sp[0]->s_n); - else - dsp_add(sigt3_sig_perf8, 3, sp[0]->s_vec, x, sp[0]->s_n); -} - -static void sigt3_sig_free(t_sigt3_sig *x) -{ - if(x->x_beg) - freebytes(x->x_beg, x->x_n*sizeof(float)); - clock_free(x->x_clock); -} - -static void *sigt3_sig_new(t_floatarg init_val) -{ - t_sigt3_sig *x = (t_sigt3_sig *)pd_new(sigt3_sig_class); - - x->x_new_val = x->x_old_val = init_val; - x->x_n = (int)sys_getblksize(); - x->x_beg = (float *)getbytes(x->x_n*sizeof(float)); - x->x_t3_bang_samps = x->x_transient = 0; - x->x_ms2samps = 0.001 * (float)sys_getsr(); - x->x_ticks2ms = (float)x->x_n / x->x_ms2samps; - x->x_clock = clock_new(x, (t_method)sigt3_sig_tick); - outlet_new(&x->x_obj, &s_signal); - return (x); -} - -void sigt3_sig_setup(void) -{ - sigt3_sig_class = class_new(gensym("t3_sig~"), (t_newmethod)sigt3_sig_new, - (t_method)sigt3_sig_free, sizeof(t_sigt3_sig), 0, A_DEFFLOAT, 0); - class_addmethod(sigt3_sig_class, (t_method)sigt3_sig_dsp, gensym("dsp"), 0); - class_addmethod(sigt3_sig_class, (t_method)sigt3_sig_stop, gensym("stop"), 0); - class_addlist(sigt3_sig_class, (t_method)sigt3_sig_list); - class_sethelpsymbol(sigt3_sig_class, gensym("iemhelp/help-t3_sig~")); -} -- cgit v1.2.1