diff --git a/externals/iem/iem_adaptfilt/src/NLMSCC~.c b/externals/iem/iem_adaptfilt/src/NLMSCC~.c index 48f501acace66b24f65b717df50109d176942314..5824e1fb997d10b9d9293f1eacc10dafd6c12c2b 100644 --- a/externals/iem/iem_adaptfilt/src/NLMSCC~.c +++ b/externals/iem/iem_adaptfilt/src/NLMSCC~.c @@ -313,7 +313,22 @@ static void *NLMSCC_tilde_new(t_symbol *s, t_int argc, t_atom *argv) t_symbol *wmax_name; t_float beta=0.1f; t_float gammax=0.00001f; - + t_atom sane_defaults[6]; + + if (!argc) + { + post("NLMSCC~: warning: no arguments supplied: setting default values " + "to [NLMSCC~ 2 0.1 0.00001 a b c]"); + SETFLOAT(sane_defaults, 2.); + SETFLOAT(sane_defaults+1, 0.1); + SETFLOAT(sane_defaults+2, 0.00001); + SETSYMBOL(sane_defaults+3, gensym("a")); + SETSYMBOL(sane_defaults+4, gensym("b")); + SETSYMBOL(sane_defaults+5, gensym("c")); + argc = 6; + argv = sane_defaults; + } + if((argc >= 6) && IS_A_FLOAT(argv,0) && //IS_A_FLOAT/SYMBOL from iemlib.h IS_A_FLOAT(argv,1) && diff --git a/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c b/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c index f48f302cd121e3528c07324965f6b36397b1d0d4..b0f300e67c27ed64b94bf931d7e7b96f67d5af54 100644 --- a/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c +++ b/externals/iem/iem_adaptfilt/src/NLMSerr_in~.c @@ -221,7 +221,20 @@ static void *NLMSerr_in_tilde_new(t_symbol *s, t_int argc, t_atom *argv) t_symbol *w_name; t_float beta=0.01f; t_float gammax=0.00001f; - + t_atom sane_defaults[4]; + + if (!argc) + { + post("NLMSerr_in~: warning: no arguments supplied: setting default " + "values to [NLMSerr_in~ 2 0.01 0.00001 a]"); + SETFLOAT(sane_defaults, 2.); + SETFLOAT(sane_defaults+1, 0.01); + SETFLOAT(sane_defaults+2, 0.00001); + SETSYMBOL(sane_defaults+3, gensym("a")); + argc = 4; + argv = sane_defaults; + } + if((argc >= 4) && IS_A_FLOAT(argv,0) && //IS_A_FLOAT/SYMBOL from iemlib.h IS_A_FLOAT(argv,1) && diff --git a/externals/iem/iem_adaptfilt/src/NLMS~.c b/externals/iem/iem_adaptfilt/src/NLMS~.c index f54efc64de19b3a807d3428a3993a70b785370a0..ee225baa1f5b44300976fe996364f385bf810a5c 100644 --- a/externals/iem/iem_adaptfilt/src/NLMS~.c +++ b/externals/iem/iem_adaptfilt/src/NLMS~.c @@ -266,7 +266,20 @@ static void *NLMS_tilde_new(t_symbol *s, t_int argc, t_atom *argv) t_symbol *w_name; t_float beta=0.1f; t_float gammax=0.00001f; + t_atom sane_defaults[4]; + if (!argc) + { + post("NLMS~: warning: no arguments supplied: setting default " + "values to [NLMS~ 2 0.1 0.00001 a]"); + SETFLOAT(sane_defaults, 2.); + SETFLOAT(sane_defaults+1, 0.1); + SETFLOAT(sane_defaults+2, 0.00001); + SETSYMBOL(sane_defaults+3, gensym("a")); + argc = 4; + argv = sane_defaults; + } + if((argc >= 4) && IS_A_FLOAT(argv,0) && //IS_A_FLOAT/SYMBOL from iemlib.h IS_A_FLOAT(argv,1) && diff --git a/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c b/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c index 3153c0b98716d3ea1de66364ff1526919e632594..23a00d8d4fd57335e078995963c1bd69468c9393 100644 --- a/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c +++ b/externals/iem/iem_adaptfilt/src/n_CLNLMS~.c @@ -406,6 +406,23 @@ static void *n_CLNLMS_tilde_new(t_symbol *s, t_int argc, t_atom *argv) t_float gammax=0.00001f; t_float kappa = 1.0f; t_float leakage = 0.99f; + t_atom sane_defaults[7]; + + if (!argc) + { + post("n_CLNLMS~: warning: no arguments supplied: setting default " + "values to [n_CLNLMS~ 1 2 0.1 0.00001 1 0.99 a]"); + SETFLOAT(sane_defaults, 1.); + SETFLOAT(sane_defaults+1, 2.); + SETFLOAT(sane_defaults+2, 0.1); + SETFLOAT(sane_defaults+3, 0.00001); + SETFLOAT(sane_defaults+4, 1); + SETFLOAT(sane_defaults+5, 0.99); + SETSYMBOL(sane_defaults+6, gensym("a")); + argc = 7; + argv = sane_defaults; + } + if((argc >= 7) && IS_A_FLOAT(argv,0) && //IS_A_FLOAT/SYMBOL from iemlib.h diff --git a/externals/iem/iem_adaptfilt/src/n_CNLMS~.c b/externals/iem/iem_adaptfilt/src/n_CNLMS~.c index d1d6b514061814e945856674d19d1ff79091f974..1b636fc6150018a8bed50d923e9a6fc7b229044e 100644 --- a/externals/iem/iem_adaptfilt/src/n_CNLMS~.c +++ b/externals/iem/iem_adaptfilt/src/n_CNLMS~.c @@ -394,7 +394,23 @@ static void *n_CNLMS_tilde_new(t_symbol *s, t_int argc, t_atom *argv) t_float beta=0.1f; t_float gammax=0.00001f; t_float kappa = 1.0f; - + t_atom sane_defaults[6]; + + if (!argc) + { + post("n_CNLMS~: warning: no arguments supplied: setting default " + "values to [n_CLNLMS~ 1 2 0.1 0.00001 1 0.99 a]"); + SETFLOAT(sane_defaults, 1.); + SETFLOAT(sane_defaults+1, 2.); + SETFLOAT(sane_defaults+2, 0.1); + SETFLOAT(sane_defaults+3, 0.00001); + SETFLOAT(sane_defaults+4, 1); + SETSYMBOL(sane_defaults+5, gensym("a")); + argc = 6; + argv = sane_defaults; + } + + if((argc >= 6) && IS_A_FLOAT(argv,0) && //IS_A_FLOAT/SYMBOL from iemlib.h IS_A_FLOAT(argv,1) &&