From 966b830f95253c0c3c3b4675189270954ab9e153 Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Fri, 28 Jan 2005 04:57:18 +0000 Subject: Max: use high-priority click instead of qelem for message-posting svn path=/trunk/; revision=2551 --- externals/grill/flext/source/flinternal.h | 13 +++++++------ externals/grill/flext/source/flqueue.cpp | 9 ++++++--- externals/grill/flext/source/flsupport.cpp | 21 ++++++++++----------- externals/grill/flext/source/flsupport.h | 6 +----- 4 files changed, 24 insertions(+), 25 deletions(-) (limited to 'externals/grill/flext/source') diff --git a/externals/grill/flext/source/flinternal.h b/externals/grill/flext/source/flinternal.h index 65ca8ea8..82c3b0fe 100644 --- a/externals/grill/flext/source/flinternal.h +++ b/externals/grill/flext/source/flinternal.h @@ -46,12 +46,12 @@ WARRANTIES, see the file, "license.txt," in this distribution. #define add_anything(clss,meth) class_addanything(clss,meth) -#define newout_signal(clss) outlet_new(clss,gensym("signal")) -#define newout_float(clss) outlet_new(clss,gensym("float")) -#define newout_flint(clss) outlet_new(clss,gensym("float")) -#define newout_list(clss) outlet_new(clss,gensym("list")) -#define newout_symbol(clss) outlet_new(clss,gensym("symbol")) -#define newout_anything(clss) outlet_new(clss,gensym("anything")) +#define newout_signal(clss) outlet_new(clss,const_cast(flext::sym_signal)) +#define newout_float(clss) outlet_new(clss,const_cast(flext::sym_float)) +#define newout_flint(clss) outlet_new(clss,const_cast(flext::sym_float)) +#define newout_list(clss) outlet_new(clss,const_cast(flext::sym_list)) +#define newout_symbol(clss) outlet_new(clss,const_cast(flext::sym_symbol)) +#define newout_anything(clss) outlet_new(clss,const_cast(flext::sym_anything)) #define outlet_flint(o,v) outlet_float(o,(float)(v)) @@ -60,6 +60,7 @@ typedef t_perfroutine t_dspmethod; #define qelem_new clock_new #define qelem_free clock_free #define qelem_set clock_set +#define qelem_front clock_set #define qelem_unset clock_unset #define CRITON() diff --git a/externals/grill/flext/source/flqueue.cpp b/externals/grill/flext/source/flqueue.cpp index e6ec9326..151bcb5e 100755 --- a/externals/grill/flext/source/flqueue.cpp +++ b/externals/grill/flext/source/flqueue.cpp @@ -207,7 +207,8 @@ static Queue queue; #if FLEXT_QMODE == 2 static flext::ThrCond qthrcond; #elif FLEXT_QMODE == 0 -static t_qelem *qclk = NULL; +//static t_qelem *qclk = NULL; +static t_clock *qclk = NULL; #endif @@ -308,7 +309,8 @@ static void Trigger() #endif #elif FLEXT_SYS == FLEXT_SYS_MAX #if FLEXT_QMODE == 0 - qelem_set(qclk); +// qelem_front(qclk); + clock_delay(qclk,0); #endif #elif FLEXT_SYS == FLEXT_SYS_JMAX #if FLEXT_QMODE == 0 @@ -344,7 +346,8 @@ void flext_base::StartQueue() #elif FLEXT_QMODE == 2 LaunchThread(QWorker,NULL); #elif FLEXT_QMODE == 0 && (FLEXT_SYS == FLEXT_SYS_PD || FLEXT_SYS == FLEXT_SYS_MAX) - qclk = (t_qelem *)(qelem_new(NULL,(t_method)QTick)); +// qclk = (t_qelem *)(qelem_new(NULL,(t_method)QTick)); + qclk = (t_clock *)(clock_new(NULL,(t_method)QTick)); #else #error Not implemented! #endif diff --git a/externals/grill/flext/source/flsupport.cpp b/externals/grill/flext/source/flsupport.cpp index 1c19f546..2748c0d1 100644 --- a/externals/grill/flext/source/flsupport.cpp +++ b/externals/grill/flext/source/flsupport.cpp @@ -30,14 +30,12 @@ const t_symbol *flext::sym_bang = NULL; const t_symbol *flext::sym_list = NULL; const t_symbol *flext::sym_pointer = NULL; const t_symbol *flext::sym_int = NULL; +const t_symbol *flext::sym_signal = NULL; #if FLEXT_SYS != FLEXT_SYS_JMAX const t_symbol *flext::sym_anything = NULL; #endif -#if FLEXT_SYS == FLEXT_SYS_PD -const t_symbol *flext::sym_signal = NULL; -#endif int flext::Version() { return FLEXT_VERSION; } const char *flext::VersionStr() { return FLEXT_VERSTR; } @@ -51,14 +49,14 @@ void flext::Setup() else issetup = true; #if FLEXT_SYS == FLEXT_SYS_PD - sym__ = gensym(""); - sym_anything = gensym("anything"); - sym_pointer = gensym("pointer"); - sym_float = gensym("float"); - sym_symbol = gensym("symbol"); - sym_bang = gensym("bang"); - sym_list = gensym("list"); - sym_signal = gensym("signal"); + sym__ = &s_; + sym_anything = &s_anything; + sym_pointer = &s_pointer; + sym_float = &s_float; + sym_symbol = &s_symbol; + sym_bang = &s_bang; + sym_list = &s_list; + sym_signal = &s_signal; sym_int = gensym("int"); #elif FLEXT_SYS == FLEXT_SYS_MAX sym__ = gensym(""); @@ -68,6 +66,7 @@ void flext::Setup() sym_bang = gensym("bang"); sym_list = gensym("list"); sym_anything = gensym("anything"); + sym_signal = gensym("signal"); #elif FLEXT_SYS == FLEXT_SYS_JMAX sym__ = fts_new_symbol("");; // is there a static symbol for that? sym_int = fts_s_int; diff --git a/externals/grill/flext/source/flsupport.h b/externals/grill/flext/source/flsupport.h index 8d6b5d3d..95bf8ea6 100644 --- a/externals/grill/flext/source/flsupport.h +++ b/externals/grill/flext/source/flsupport.h @@ -346,12 +346,8 @@ public: */ static const t_symbol *sym_pointer; -#if FLEXT_SYS == FLEXT_SYS_PD - /*! \brief Symbol constant for "signal" - \note PD only - */ + //! Symbol constant for "signal" static const t_symbol *sym_signal; -#endif //! \note This is used in macros where the type of the arg is not clear static const t_symbol *MakeSymbol(const t_symbol *s) { return s; } -- cgit v1.2.1