Commit a0f5633e authored by pokergaming's avatar pokergaming
Browse files

*ported fixes for crasher when sending a "dsp" message to tilde objects. ...

*ported fixes for crasher when sending a "dsp" message to tilde objects.  Backported from Pd Vanilla commits [8019b5] and [5769c5]
parent 0ee3f5f7
......@@ -132,14 +132,14 @@ static void plus_setup(void)
{
plus_class = class_new(gensym("+~"), (t_newmethod)plus_new, 0,
sizeof(t_plus), 0, A_GIMME, 0);
class_addmethod(plus_class, (t_method)plus_dsp, gensym("dsp"), 0);
class_addmethod(plus_class, (t_method)plus_dsp, gensym("dsp"), A_CANT, 0);
CLASS_MAINSIGNALIN(plus_class, t_plus, x_f);
class_sethelpsymbol(plus_class, gensym("sigbinops"));
scalarplus_class = class_new(gensym("+~"), 0, 0,
sizeof(t_scalarplus), 0, 0);
CLASS_MAINSIGNALIN(scalarplus_class, t_scalarplus, x_f);
class_addmethod(scalarplus_class, (t_method)scalarplus_dsp, gensym("dsp"),
0);
A_CANT, 0);
class_sethelpsymbol(scalarplus_class, gensym("sigbinops"));
}
......@@ -263,13 +263,13 @@ static void minus_setup(void)
minus_class = class_new(gensym("-~"), (t_newmethod)minus_new, 0,
sizeof(t_minus), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(minus_class, t_minus, x_f);
class_addmethod(minus_class, (t_method)minus_dsp, gensym("dsp"), 0);
class_addmethod(minus_class, (t_method)minus_dsp, gensym("dsp"), A_CANT, 0);
class_sethelpsymbol(minus_class, gensym("sigbinops"));
scalarminus_class = class_new(gensym("-~"), 0, 0,
sizeof(t_scalarminus), 0, 0);
CLASS_MAINSIGNALIN(scalarminus_class, t_scalarminus, x_f);
class_addmethod(scalarminus_class, (t_method)scalarminus_dsp, gensym("dsp"),
0);
A_CANT, 0);
class_sethelpsymbol(scalarminus_class, gensym("sigbinops"));
}
......@@ -394,13 +394,13 @@ static void times_setup(void)
times_class = class_new(gensym("*~"), (t_newmethod)times_new, 0,
sizeof(t_times), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(times_class, t_times, x_f);
class_addmethod(times_class, (t_method)times_dsp, gensym("dsp"), 0);
class_addmethod(times_class, (t_method)times_dsp, gensym("dsp"), A_CANT, 0);
class_sethelpsymbol(times_class, gensym("sigbinops"));
scalartimes_class = class_new(gensym("*~"), 0, 0,
sizeof(t_scalartimes), 0, 0);
CLASS_MAINSIGNALIN(scalartimes_class, t_scalartimes, x_f);
class_addmethod(scalartimes_class, (t_method)scalartimes_dsp, gensym("dsp"),
0);
A_CANT, 0);
class_sethelpsymbol(scalartimes_class, gensym("sigbinops"));
}
......@@ -536,13 +536,13 @@ static void over_setup(void)
over_class = class_new(gensym("/~"), (t_newmethod)over_new, 0,
sizeof(t_over), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(over_class, t_over, x_f);
class_addmethod(over_class, (t_method)over_dsp, gensym("dsp"), 0);
class_addmethod(over_class, (t_method)over_dsp, gensym("dsp"), A_CANT, 0);
class_sethelpsymbol(over_class, gensym("sigbinops"));
scalarover_class = class_new(gensym("/~"), 0, 0,
sizeof(t_scalarover), 0, 0);
CLASS_MAINSIGNALIN(scalarover_class, t_scalarover, x_f);
class_addmethod(scalarover_class, (t_method)scalarover_dsp, gensym("dsp"),
0);
A_CANT, 0);
class_sethelpsymbol(scalarover_class, gensym("sigbinops"));
}
......@@ -678,13 +678,13 @@ static void max_setup(void)
max_class = class_new(gensym("max~"), (t_newmethod)max_new, 0,
sizeof(t_max), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(max_class, t_max, x_f);
class_addmethod(max_class, (t_method)max_dsp, gensym("dsp"), 0);
class_addmethod(max_class, (t_method)max_dsp, gensym("dsp"), A_CANT, 0);
class_sethelpsymbol(max_class, gensym("sigbinops"));
scalarmax_class = class_new(gensym("max~"), 0, 0,
sizeof(t_scalarmax), 0, 0);
CLASS_MAINSIGNALIN(scalarmax_class, t_scalarmax, x_f);
class_addmethod(scalarmax_class, (t_method)scalarmax_dsp, gensym("dsp"),
0);
A_CANT, 0);
class_sethelpsymbol(scalarmax_class, gensym("sigbinops"));
}
......@@ -820,13 +820,13 @@ static void min_setup(void)
min_class = class_new(gensym("min~"), (t_newmethod)min_new, 0,
sizeof(t_min), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(min_class, t_min, x_f);
class_addmethod(min_class, (t_method)min_dsp, gensym("dsp"), 0);
class_addmethod(min_class, (t_method)min_dsp, gensym("dsp"), A_CANT, 0);
class_sethelpsymbol(min_class, gensym("sigbinops"));
scalarmin_class = class_new(gensym("min~"), 0, 0,
sizeof(t_scalarmin), 0, 0);
CLASS_MAINSIGNALIN(scalarmin_class, t_scalarmin, x_f);
class_addmethod(scalarmin_class, (t_method)scalarmin_dsp, gensym("dsp"),
0);
A_CANT, 0);
class_sethelpsymbol(scalarmin_class, gensym("sigbinops"));
}
......
......@@ -125,7 +125,7 @@ static void tabwrite_tilde_setup(void)
sizeof(t_tabwrite_tilde), 0, A_DEFSYM, 0);
CLASS_MAINSIGNALIN(tabwrite_tilde_class, t_tabwrite_tilde, x_f);
class_addmethod(tabwrite_tilde_class, (t_method)tabwrite_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(tabwrite_tilde_class, (t_method)tabwrite_tilde_set,
gensym("set"), A_SYMBOL, 0);
class_addmethod(tabwrite_tilde_class, (t_method)tabwrite_tilde_stop,
......@@ -258,7 +258,7 @@ static void tabplay_tilde_setup(void)
(t_newmethod)tabplay_tilde_new, (t_method)tabplay_tilde_free,
sizeof(t_tabplay_tilde), 0, A_DEFSYM, 0);
class_addmethod(tabplay_tilde_class, (t_method)tabplay_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(tabplay_tilde_class, (t_method)tabplay_tilde_stop,
gensym("stop"), 0);
class_addmethod(tabplay_tilde_class, (t_method)tabplay_tilde_set,
......@@ -357,7 +357,7 @@ static void tabread_tilde_setup(void)
sizeof(t_tabread_tilde), 0, A_DEFSYM, 0);
CLASS_MAINSIGNALIN(tabread_tilde_class, t_tabread_tilde, x_f);
class_addmethod(tabread_tilde_class, (t_method)tabread_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(tabread_tilde_class, (t_method)tabread_tilde_set,
gensym("set"), A_SYMBOL, 0);
}
......@@ -488,7 +488,7 @@ static void tabread4_tilde_setup(void)
sizeof(t_tabread4_tilde), 0, A_DEFSYM, 0);
CLASS_MAINSIGNALIN(tabread4_tilde_class, t_tabread4_tilde, x_f);
class_addmethod(tabread4_tilde_class, (t_method)tabread4_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(tabread4_tilde_class, (t_method)tabread4_tilde_set,
gensym("set"), A_SYMBOL, 0);
}
......@@ -678,7 +678,7 @@ static void tabosc4_tilde_setup(void)
sizeof(t_tabosc4_tilde), 0, A_DEFSYM, 0);
CLASS_MAINSIGNALIN(tabosc4_tilde_class, t_tabosc4_tilde, x_f);
class_addmethod(tabosc4_tilde_class, (t_method)tabosc4_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(tabosc4_tilde_class, (t_method)tabosc4_tilde_set,
gensym("set"), A_SYMBOL, 0);
class_addmethod(tabosc4_tilde_class, (t_method)tabosc4_tilde_ft1,
......@@ -769,7 +769,8 @@ static void tabsend_setup(void)
tabsend_class = class_new(gensym("tabsend~"), (t_newmethod)tabsend_new,
0, sizeof(t_tabsend), 0, A_DEFSYM, 0);
CLASS_MAINSIGNALIN(tabsend_class, t_tabsend, x_f);
class_addmethod(tabsend_class, (t_method)tabsend_dsp, gensym("dsp"), 0);
class_addmethod(tabsend_class, (t_method)tabsend_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ------------------------ tabreceive~ ------------------------- */
......@@ -836,7 +837,7 @@ static void tabreceive_setup(void)
(t_newmethod)tabreceive_new, 0,
sizeof(t_tabreceive), 0, A_DEFSYM, 0);
class_addmethod(tabreceive_class, (t_method)tabreceive_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ---------- tabread: control, non-interpolating ------------------------ */
......
......@@ -79,7 +79,8 @@ static void sig_tilde_setup(void)
sig_tilde_class = class_new(gensym("sig~"), (t_newmethod)sig_tilde_new, 0,
sizeof(t_sig), 0, A_DEFFLOAT, 0);
class_addfloat(sig_tilde_class, (t_method)sig_tilde_float);
class_addmethod(sig_tilde_class, (t_method)sig_tilde_dsp, gensym("dsp"), 0);
class_addmethod(sig_tilde_class, (t_method)sig_tilde_dsp, gensym("dsp"),
A_CANT, 0);
}
/* -------------------------- line~ ------------------------------ */
......@@ -220,7 +221,7 @@ static void line_tilde_setup(void)
sizeof(t_line), 0, 0);
class_addfloat(line_tilde_class, (t_method)line_tilde_float);
class_addmethod(line_tilde_class, (t_method)line_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(line_tilde_class, (t_method)line_tilde_stop,
gensym("stop"), 0);
}
......@@ -404,7 +405,7 @@ static void vline_tilde_setup(void)
(t_method)vline_tilde_stop, sizeof(t_vline), 0, 0);
class_addfloat(vline_tilde_class, (t_method)vline_tilde_float);
class_addmethod(vline_tilde_class, (t_method)vline_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(vline_tilde_class, (t_method)vline_tilde_stop,
gensym("stop"), 0);
}
......@@ -458,7 +459,7 @@ static void snapshot_tilde_setup(void)
sizeof(t_snapshot), 0, 0);
CLASS_MAINSIGNALIN(snapshot_tilde_class, t_snapshot, x_f);
class_addmethod(snapshot_tilde_class, (t_method)snapshot_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(snapshot_tilde_class, (t_method)snapshot_tilde_set,
gensym("set"), A_DEFFLOAT, 0);
class_addbang(snapshot_tilde_class, snapshot_tilde_bang);
......@@ -545,7 +546,8 @@ static void vsnapshot_tilde_setup(void)
vsnapshot_tilde_new, (t_method)vsnapshot_tilde_ff,
sizeof(t_vsnapshot), 0, 0);
CLASS_MAINSIGNALIN(vsnapshot_tilde_class, t_vsnapshot, x_f);
class_addmethod(vsnapshot_tilde_class, (t_method)vsnapshot_tilde_dsp, gensym("dsp"), 0);
class_addmethod(vsnapshot_tilde_class, (t_method)vsnapshot_tilde_dsp,
gensym("dsp"), A_CANT, 0);
class_addbang(vsnapshot_tilde_class, vsnapshot_tilde_bang);
}
......@@ -683,7 +685,8 @@ void env_tilde_setup(void )
env_tilde_class = class_new(gensym("env~"), (t_newmethod)env_tilde_new,
(t_method)env_tilde_ff, sizeof(t_sigenv), 0, A_DEFFLOAT, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(env_tilde_class, t_sigenv, x_f);
class_addmethod(env_tilde_class, (t_method)env_tilde_dsp, gensym("dsp"), 0);
class_addmethod(env_tilde_class, (t_method)env_tilde_dsp, gensym("dsp"),
A_CANT, 0);
}
/* --------------------- threshold~ ----------------------------- */
......@@ -818,7 +821,7 @@ static void threshold_tilde_setup( void)
class_addmethod(threshold_tilde_class, (t_method)threshold_tilde_ft1,
gensym("ft1"), A_FLOAT, 0);
class_addmethod(threshold_tilde_class, (t_method)threshold_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ------------------------ global setup routine ------------------------- */
......
......@@ -134,7 +134,7 @@ static void sigdelwrite_setup(void)
sizeof(t_sigdelwrite), 0, A_DEFSYM, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(sigdelwrite_class, t_sigdelwrite, x_f);
class_addmethod(sigdelwrite_class, (t_method)sigdelwrite_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addmethod(sigdelwrite_class, (t_method)sigdelwrite_clear,
gensym("clear"), 0);
}
......@@ -228,7 +228,7 @@ static void sigdelread_setup(void)
(t_newmethod)sigdelread_new, 0,
sizeof(t_sigdelread), 0, A_DEFSYM, A_DEFFLOAT, 0);
class_addmethod(sigdelread_class, (t_method)sigdelread_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
class_addfloat(sigdelread_class, (t_method)sigdelread_float);
}
......@@ -318,7 +318,7 @@ static void sigvd_setup(void)
{
sigvd_class = class_new(gensym("vd~"), (t_newmethod)sigvd_new, 0,
sizeof(t_sigvd), 0, A_DEFSYM, 0);
class_addmethod(sigvd_class, (t_method)sigvd_dsp, gensym("dsp"), 0);
class_addmethod(sigvd_class, (t_method)sigvd_dsp, gensym("dsp"), A_CANT, 0);
CLASS_MAINSIGNALIN(sigvd_class, t_sigvd, x_f);
}
......
......@@ -126,12 +126,14 @@ static void sigfft_setup(void)
sigfft_class = class_new(gensym("fft~"), sigfft_new, 0,
sizeof(t_sigfft), 0, 0);
CLASS_MAINSIGNALIN(sigfft_class, t_sigfft, x_f);
class_addmethod(sigfft_class, (t_method)sigfft_dsp, gensym("dsp"), 0);
class_addmethod(sigfft_class, (t_method)sigfft_dsp, gensym("dsp"),
A_CANT, 0);
sigifft_class = class_new(gensym("ifft~"), sigifft_new, 0,
sizeof(t_sigfft), 0, 0);
CLASS_MAINSIGNALIN(sigifft_class, t_sigfft, x_f);
class_addmethod(sigifft_class, (t_method)sigifft_dsp, gensym("dsp"), 0);
class_addmethod(sigifft_class, (t_method)sigifft_dsp, gensym("dsp"),
A_CANT, 0);
class_sethelpsymbol(sigifft_class, gensym("fft~"));
}
......@@ -188,7 +190,8 @@ static void sigrfft_setup(void)
sigrfft_class = class_new(gensym("rfft~"), sigrfft_new, 0,
sizeof(t_sigrfft), 0, 0);
CLASS_MAINSIGNALIN(sigrfft_class, t_sigrfft, x_f);
class_addmethod(sigrfft_class, (t_method)sigrfft_dsp, gensym("dsp"), 0);
class_addmethod(sigrfft_class, (t_method)sigrfft_dsp, gensym("dsp"),
A_CANT, 0);
class_sethelpsymbol(sigrfft_class, gensym("fft~"));
}
......@@ -248,7 +251,8 @@ static void sigrifft_setup(void)
sigrifft_class = class_new(gensym("rifft~"), sigrifft_new, 0,
sizeof(t_sigrifft), 0, 0);
CLASS_MAINSIGNALIN(sigrifft_class, t_sigrifft, x_f);
class_addmethod(sigrifft_class, (t_method)sigrifft_dsp, gensym("dsp"), 0);
class_addmethod(sigrifft_class, (t_method)sigrifft_dsp, gensym("dsp"),
A_CANT, 0);
class_sethelpsymbol(sigrifft_class, gensym("fft~"));
}
......@@ -336,7 +340,8 @@ static void sigframp_setup(void)
sigframp_class = class_new(gensym("framp~"), sigframp_new, 0,
sizeof(t_sigframp), 0, 0);
CLASS_MAINSIGNALIN(sigframp_class, t_sigframp, x_f);
class_addmethod(sigframp_class, (t_method)sigframp_dsp, gensym("dsp"), 0);
class_addmethod(sigframp_class, (t_method)sigframp_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ------------------------ global setup routine ------------------------- */
......
......@@ -102,7 +102,8 @@ void sighip_setup(void)
sighip_class = class_new(gensym("hip~"), (t_newmethod)sighip_new, 0,
sizeof(t_sighip), 0, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(sighip_class, t_sighip, x_f);
class_addmethod(sighip_class, (t_method)sighip_dsp, gensym("dsp"), 0);
class_addmethod(sighip_class, (t_method)sighip_dsp, gensym("dsp"),
A_CANT, 0);
class_addmethod(sighip_class, (t_method)sighip_ft1,
gensym("ft1"), A_FLOAT, 0);
class_addmethod(sighip_class, (t_method)sighip_clear, gensym("clear"), 0);
......@@ -192,7 +193,8 @@ void siglop_setup(void)
siglop_class = class_new(gensym("lop~"), (t_newmethod)siglop_new, 0,
sizeof(t_siglop), 0, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(siglop_class, t_siglop, x_f);
class_addmethod(siglop_class, (t_method)siglop_dsp, gensym("dsp"), 0);
class_addmethod(siglop_class, (t_method)siglop_dsp, gensym("dsp"),
A_CANT, 0);
class_addmethod(siglop_class, (t_method)siglop_ft1,
gensym("ft1"), A_FLOAT, 0);
class_addmethod(siglop_class, (t_method)siglop_clear, gensym("clear"), 0);
......@@ -326,7 +328,8 @@ void sigbp_setup(void)
sigbp_class = class_new(gensym("bp~"), (t_newmethod)sigbp_new, 0,
sizeof(t_sigbp), 0, A_DEFFLOAT, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(sigbp_class, t_sigbp, x_f);
class_addmethod(sigbp_class, (t_method)sigbp_dsp, gensym("dsp"), 0);
class_addmethod(sigbp_class, (t_method)sigbp_dsp, gensym("dsp"),
A_CANT, 0);
class_addmethod(sigbp_class, (t_method)sigbp_ft1,
gensym("ft1"), A_FLOAT, 0);
class_addmethod(sigbp_class, (t_method)sigbp_ft2,
......@@ -452,7 +455,8 @@ void sigbiquad_setup(void)
sigbiquad_class = class_new(gensym("biquad~"), (t_newmethod)sigbiquad_new,
0, sizeof(t_sigbiquad), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(sigbiquad_class, t_sigbiquad, x_f);
class_addmethod(sigbiquad_class, (t_method)sigbiquad_dsp, gensym("dsp"), 0);
class_addmethod(sigbiquad_class, (t_method)sigbiquad_dsp, gensym("dsp"),
A_CANT, 0);
class_addlist(sigbiquad_class, sigbiquad_list);
class_addmethod(sigbiquad_class, (t_method)sigbiquad_set, gensym("set"),
A_GIMME, 0);
......@@ -534,7 +538,7 @@ void sigsamphold_setup(void)
class_addmethod(sigsamphold_class, (t_method)sigsamphold_reset,
gensym("reset"), A_GIMME, 0);
class_addmethod(sigsamphold_class, (t_method)sigsamphold_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ---------------- rpole~ - real one-pole filter (raw) ----------------- */
......@@ -607,7 +611,7 @@ void sigrpole_setup(void)
class_addmethod(sigrpole_class, (t_method)sigrpole_clear,
gensym("clear"), 0);
class_addmethod(sigrpole_class, (t_method)sigrpole_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ---------------- rzero~ - real one-zero filter (raw) ----------------- */
......@@ -679,7 +683,7 @@ void sigrzero_setup(void)
class_addmethod(sigrzero_class, (t_method)sigrzero_clear,
gensym("clear"), 0);
class_addmethod(sigrzero_class, (t_method)sigrzero_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ---------- rzero_rev~ - real, reverse one-zero filter (raw) ------------ */
......@@ -752,7 +756,7 @@ void sigrzero_rev_setup(void)
class_addmethod(sigrzero_rev_class, (t_method)sigrzero_rev_clear,
gensym("clear"), 0);
class_addmethod(sigrzero_rev_class, (t_method)sigrzero_rev_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* -------------- cpole~ - complex one-pole filter (raw) --------------- */
......@@ -845,7 +849,7 @@ void sigcpole_setup(void)
class_addmethod(sigcpole_class, (t_method)sigcpole_clear,
gensym("clear"), 0);
class_addmethod(sigcpole_class, (t_method)sigcpole_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* -------------- czero~ - complex one-pole filter (raw) --------------- */
......@@ -935,7 +939,7 @@ void sigczero_setup(void)
class_addmethod(sigczero_class, (t_method)sigczero_clear,
gensym("clear"), 0);
class_addmethod(sigczero_class, (t_method)sigczero_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* -------------- czero_rev~ - complex one-pole filter (raw) --------------- */
......@@ -1027,7 +1031,7 @@ void sigczero_rev_setup(void)
class_addmethod(sigczero_rev_class, (t_method)sigczero_rev_clear,
gensym("clear"), 0);
class_addmethod(sigczero_rev_class, (t_method)sigczero_rev_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ------------------------ setup routine ------------------------- */
......
......@@ -66,7 +66,8 @@ static void sigsend_setup(void)
(t_method)sigsend_free, sizeof(t_sigsend), 0, A_DEFSYM, 0);
class_addcreator((t_newmethod)sigsend_new, gensym("s~"), A_DEFSYM, 0);
CLASS_MAINSIGNALIN(sigsend_class, t_sigsend, x_f);
class_addmethod(sigsend_class, (t_method)sigsend_dsp, gensym("dsp"), 0);
class_addmethod(sigsend_class, (t_method)sigsend_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ----------------------------- receive~ ----------------------------- */
......@@ -182,7 +183,7 @@ static void sigreceive_setup(void)
class_addmethod(sigreceive_class, (t_method)sigreceive_set, gensym("set"),
A_SYMBOL, 0);
class_addmethod(sigreceive_class, (t_method)sigreceive_dsp, gensym("dsp"),
0);
A_CANT, 0);
class_sethelpsymbol(sigreceive_class, gensym("send~"));
}
......@@ -257,7 +258,8 @@ static void sigcatch_setup(void)
{
sigcatch_class = class_new(gensym("catch~"), (t_newmethod)sigcatch_new,
(t_method)sigcatch_free, sizeof(t_sigcatch), CLASS_NOINLET, A_DEFSYM, 0);
class_addmethod(sigcatch_class, (t_method)sigcatch_dsp, gensym("dsp"), 0);
class_addmethod(sigcatch_class, (t_method)sigcatch_dsp, gensym("dsp"),
A_CANT, 0);
class_sethelpsymbol(sigcatch_class, gensym("throw~"));
}
......@@ -343,7 +345,8 @@ static void sigthrow_setup(void)
class_addmethod(sigthrow_class, (t_method)sigthrow_set, gensym("set"),
A_SYMBOL, 0);
CLASS_MAINSIGNALIN(sigthrow_class, t_sigthrow, x_f);
class_addmethod(sigthrow_class, (t_method)sigthrow_dsp, gensym("dsp"), 0);
class_addmethod(sigthrow_class, (t_method)sigthrow_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ----------------------- global setup routine ---------------- */
......
......@@ -59,7 +59,7 @@ static void clip_setup(void)
clip_class = class_new(gensym("clip~"), (t_newmethod)clip_new, 0,
sizeof(t_clip), 0, A_DEFFLOAT, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(clip_class, t_clip, x_f);
class_addmethod(clip_class, (t_method)clip_dsp, gensym("dsp"), 0);
class_addmethod(clip_class, (t_method)clip_dsp, gensym("dsp"), A_CANT, 0);
}
/* sigrsqrt - reciprocal square root good to 8 mantissa bits */
......@@ -171,7 +171,8 @@ void sigrsqrt_setup(void)
/* an old name for it: */
class_addcreator(sigrsqrt_new, gensym("q8_rsqrt~"), 0);
CLASS_MAINSIGNALIN(sigrsqrt_class, t_sigrsqrt, x_f);
class_addmethod(sigrsqrt_class, (t_method)sigrsqrt_dsp, gensym("dsp"), 0);
class_addmethod(sigrsqrt_class, (t_method)sigrsqrt_dsp, gensym("dsp"),
A_CANT, 0);
}
......@@ -223,7 +224,8 @@ void sigsqrt_setup(void)
sizeof(t_sigsqrt), 0, 0);
class_addcreator(sigsqrt_new, gensym("q8_sqrt~"), 0); /* old name */
CLASS_MAINSIGNALIN(sigsqrt_class, t_sigsqrt, x_f);
class_addmethod(sigsqrt_class, (t_method)sigsqrt_dsp, gensym("dsp"), 0);
class_addmethod(sigsqrt_class, (t_method)sigsqrt_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ------------------------------ wrap~ -------------------------- */
......@@ -268,7 +270,8 @@ void sigwrap_setup(void)
sigwrap_class = class_new(gensym("wrap~"), (t_newmethod)sigwrap_new, 0,
sizeof(t_sigwrap), 0, 0);
CLASS_MAINSIGNALIN(sigwrap_class, t_sigwrap, x_f);
class_addmethod(sigwrap_class, (t_method)sigwrap_dsp, gensym("dsp"), 0);
class_addmethod(sigwrap_class, (t_method)sigwrap_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ------------------------------ mtof_tilde~ -------------------------- */
......@@ -316,7 +319,8 @@ void mtof_tilde_setup(void)
mtof_tilde_class = class_new(gensym("mtof~"), (t_newmethod)mtof_tilde_new, 0,
sizeof(t_mtof_tilde), 0, 0);
CLASS_MAINSIGNALIN(mtof_tilde_class, t_mtof_tilde, x_f);
class_addmethod(mtof_tilde_class, (t_method)mtof_tilde_dsp, gensym("dsp"), 0);
class_addmethod(mtof_tilde_class, (t_method)mtof_tilde_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ------------------------------ ftom_tilde~ -------------------------- */
......@@ -359,7 +363,8 @@ void ftom_tilde_setup(void)
ftom_tilde_class = class_new(gensym("ftom~"), (t_newmethod)ftom_tilde_new, 0,
sizeof(t_ftom_tilde), 0, 0);
CLASS_MAINSIGNALIN(ftom_tilde_class, t_ftom_tilde, x_f);
class_addmethod(ftom_tilde_class, (t_method)ftom_tilde_dsp, gensym("dsp"), 0);
class_addmethod(ftom_tilde_class, (t_method)ftom_tilde_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ------------------------------ dbtorms~ -------------------------- */
......@@ -408,7 +413,8 @@ void dbtorms_tilde_setup(void)
dbtorms_tilde_class = class_new(gensym("dbtorms~"), (t_newmethod)dbtorms_tilde_new, 0,
sizeof(t_dbtorms_tilde), 0, 0);
CLASS_MAINSIGNALIN(dbtorms_tilde_class, t_dbtorms_tilde, x_f);
class_addmethod(dbtorms_tilde_class, (t_method)dbtorms_tilde_dsp, gensym("dsp"), 0);
class_addmethod(dbtorms_tilde_class, (t_method)dbtorms_tilde_dsp,
gensym("dsp"), A_CANT, 0);
}
/* ------------------------------ rmstodb~ -------------------------- */
......@@ -456,7 +462,8 @@ void rmstodb_tilde_setup(void)
rmstodb_tilde_class = class_new(gensym("rmstodb~"), (t_newmethod)rmstodb_tilde_new, 0,
sizeof(t_rmstodb_tilde), 0, 0);
CLASS_MAINSIGNALIN(rmstodb_tilde_class, t_rmstodb_tilde, x_f);
class_addmethod(rmstodb_tilde_class, (t_method)rmstodb_tilde_dsp, gensym("dsp"), 0);
class_addmethod(rmstodb_tilde_class, (t_method)rmstodb_tilde_dsp,
gensym("dsp"), A_CANT, 0);
}
/* ------------------------------ dbtopow~ -------------------------- */
......@@ -505,7 +512,8 @@ void dbtopow_tilde_setup(void)
dbtopow_tilde_class = class_new(gensym("dbtopow~"), (t_newmethod)dbtopow_tilde_new, 0,
sizeof(t_dbtopow_tilde), 0, 0);
CLASS_MAINSIGNALIN(dbtopow_tilde_class, t_dbtopow_tilde, x_f);
class_addmethod(dbtopow_tilde_class, (t_method)dbtopow_tilde_dsp, gensym("dsp"), 0);
class_addmethod(dbtopow_tilde_class, (t_method)dbtopow_tilde_dsp,
gensym("dsp"), A_CANT, 0);
}
/* ------------------------------ powtodb~ -------------------------- */
......@@ -553,7 +561,8 @@ void powtodb_tilde_setup(void)
powtodb_tilde_class = class_new(gensym("powtodb~"), (t_newmethod)powtodb_tilde_new, 0,
sizeof(t_powtodb_tilde), 0, 0);
CLASS_MAINSIGNALIN(powtodb_tilde_class, t_powtodb_tilde, x_f);
class_addmethod(powtodb_tilde_class, (t_method)powtodb_tilde_dsp, gensym("dsp"), 0);
class_addmethod(powtodb_tilde_class, (t_method)powtodb_tilde_dsp,
gensym("dsp"), A_CANT, 0);
}
/* ----------------------------- pow ----------------------------- */
......@@ -647,12 +656,13 @@ static void pow_tilde_setup(void)
pow_tilde_class = class_new(gensym("pow~"), (t_newmethod)pow_tilde_new, 0,
sizeof(t_pow_tilde), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(pow_tilde_class, t_pow_tilde, x_f);
class_addmethod(pow_tilde_class, (t_method)pow_tilde_dsp, gensym("dsp"), 0);
class_addmethod(pow_tilde_class, (t_method)pow_tilde_dsp, gensym("dsp"),
A_CANT, 0);
scalarpow_tilde_class = class_new(gensym("pow~"), 0, 0,
sizeof(t_scalarpow_tilde), 0, 0);
CLASS_MAINSIGNALIN(scalarpow_tilde_class, t_scalarpow_tilde, x_f);
class_addmethod(scalarpow_tilde_class, (t_method)scalarpow_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ----------------------------- exp ----------------------------- */
......@@ -692,7 +702,8 @@ static void exp_tilde_setup(void)
exp_tilde_class = class_new(gensym("exp~"), (t_newmethod)exp_tilde_new, 0,
sizeof(t_exp_tilde), 0, 0);
CLASS_MAINSIGNALIN(exp_tilde_class, t_exp_tilde, x_f);
class_addmethod(exp_tilde_class, (t_method)exp_tilde_dsp, gensym("dsp"), 0);
class_addmethod(exp_tilde_class, (t_method)exp_tilde_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ----------------------------- log ----------------------------- */
......@@ -791,13 +802,14 @@ static void log_tilde_setup(void)
log_tilde_class = class_new(gensym("log~"), (t_newmethod)log_tilde_new, 0,
sizeof(t_log_tilde), 0, A_GIMME, 0);
CLASS_MAINSIGNALIN(log_tilde_class, t_log_tilde, x_f);
class_addmethod(log_tilde_class, (t_method)log_tilde_dsp, gensym("dsp"), 0);
class_addmethod(log_tilde_class, (t_method)log_tilde_dsp, gensym("dsp"),
A_CANT, 0);
scalarlog_tilde_class = class_new(gensym("log~"), 0, 0,
sizeof(t_scalarlog_tilde), 0, 0);
CLASS_MAINSIGNALIN(scalarlog_tilde_class, t_scalarlog_tilde, x_f);
class_addmethod(scalarlog_tilde_class, (t_method)scalarlog_tilde_dsp,
gensym("dsp"), 0);
gensym("dsp"), A_CANT, 0);
}
/* ----------------------------- abs ----------------------------- */
......@@ -840,7 +852,8 @@ static void abs_tilde_setup(void)
abs_tilde_class = class_new(gensym("abs~"), (t_newmethod)abs_tilde_new, 0,
sizeof(t_abs_tilde), 0, 0);
CLASS_MAINSIGNALIN(abs_tilde_class, t_abs_tilde, x_f);
class_addmethod(abs_tilde_class, (t_method)abs_tilde_dsp, gensym("dsp"), 0);
class_addmethod(abs_tilde_class, (t_method)abs_tilde_dsp, gensym("dsp"),
A_CANT, 0);
}
/* ------------------------ global setup routine ------------------------- */
......
......@@ -123,7 +123,8 @@ static void phasor_setup(void)
phasor_class = class_new(gensym("phasor~"), (t_newmethod)phasor_new, 0,
sizeof(t_phasor), 0, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(phasor_class, t_phasor, x_f);
class_addmethod(phasor_class, (t_method)phasor_dsp, gensym("dsp"), 0);
class_addmethod(phasor_class, (t_method)phasor_dsp, gensym("dsp"),
A_CANT, 0);
class_addmethod(phasor_class, (t_method)phasor_ft1,
gensym("ft1"), A_FLOAT, 0);
}
......@@ -230,7 +231,7 @@ static void cos_setup(void)
cos_class = class_new(gensym("cos~"), (t_newmethod)cos_new, 0,
sizeof(t_cos), 0, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(cos_class, t_cos, x_f);
class_addmethod(cos_class, (t_method)cos_dsp, gensym("dsp"), 0);
class_addmethod(cos_class, (t_method)cos_dsp, gensym("dsp"), A_CANT, 0);
cos_maketable();
}
......@@ -330,7 +331,7 @@ static void osc_setup(void)
osc_class = class_new(gensym("osc~"), (t_newmethod)osc_new, 0,
sizeof(t_osc), 0, A_DEFFLOAT, 0);
CLASS_MAINSIGNALIN(osc_class, t_osc, x_f);
class_addmethod(osc_class, (t_method)osc_dsp, gensym("dsp"), 0);
class_addmethod(osc_class, (t_method)osc_dsp, gensym("dsp"), A_CANT, 0);
class_addmethod(osc_class, (t_method)osc_ft1, gensym("ft1"), A_FLOAT, 0);
cos_maketable();
......@@ -454,7 +455,8 @@ void sigvcf_setup(void)