aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/source/fldsp.h
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2005-10-11 22:22:48 +0000
committerThomas Grill <xovo@users.sourceforge.net>2005-10-11 22:22:48 +0000
commit8edeb549041f2adce5d83ae071499f5a72e5db40 (patch)
treef624083d336434f88c3ba7796eec7c9dc12cc5b2 /externals/grill/flext/source/fldsp.h
parent887f305d37cef754d3a50104b9e312ce01e2815c (diff)
bugfixes and optimizations, especially for DSP under Max/MSP
fixed and cleaned up library related stuff, especially co-existance of Max message and DSP library objects eliminate jmax code fixed dsp vector offset bug better separation between build styles - better handling of click callback - more compatible handling of attributes in patcher (hiding is now an option - define FLEXT_ATTRHIDE) svn path=/trunk/; revision=3695
Diffstat (limited to 'externals/grill/flext/source/fldsp.h')
-rw-r--r--externals/grill/flext/source/fldsp.h18
1 files changed, 8 insertions, 10 deletions
diff --git a/externals/grill/flext/source/fldsp.h b/externals/grill/flext/source/fldsp.h
index b85bbe07..b766ed8d 100644
--- a/externals/grill/flext/source/fldsp.h
+++ b/externals/grill/flext/source/fldsp.h
@@ -33,6 +33,8 @@ class FLEXT_SHARE FLEXT_CLASSDEF(flext_dsp):
{
FLEXT_HEADER_S(FLEXT_CLASSDEF(flext_dsp),flext_base,Setup)
+ friend class FLEXT_SHARE FLEXT_CLASSDEF(flext_base);
+
public:
/*! \defgroup FLEXT_DSP Flext dsp class
@@ -148,10 +150,6 @@ protected:
FLEXT_CLASSDEF(flext_dsp)();
-#if FLEXT_SYS == FLEXT_SYS_MAX
- virtual bool Init();
-#endif
-
virtual void Exit();
private:
@@ -164,15 +162,15 @@ private:
// setup function
static void Setup(t_classid c);
- // callback functions
-#if FLEXT_SYS == FLEXT_SYS_MAX
- static void cb_dsp(t_class *c,t_signal **s,short *count);
-#else
- static void cb_dsp(t_class *c,t_signal **s);
- static void cb_enable(t_class *c,t_float on);
+#if FLEXT_SYS == FLEXT_SYS_PD
+ static void cb_enable(flext_hdr *c,t_float on);
bool dspon;
#endif
+ static inline flext_dsp *thisObject(flext_hdr *c) { return FLEXT_CAST<flext_dsp *>(c->data); }
+
+ void SetupDsp(t_signal **sp);
+
// dsp stuff
static t_int *dspmeth(t_int *w);
};