aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/source/flbase.h
diff options
context:
space:
mode:
authorThomas Grill <xovo@users.sourceforge.net>2004-04-23 02:32:55 +0000
committerThomas Grill <xovo@users.sourceforge.net>2004-04-23 02:32:55 +0000
commitd0b6781beeffe75dad099ed7a6a6d93766c3fa71 (patch)
treece63b0e084c3eb47909d9eb34536aae34ae90b41 /externals/grill/flext/source/flbase.h
parent591d23920ae9097c68045cbb5133fcbf5b1f6401 (diff)
""
svn path=/trunk/; revision=1628
Diffstat (limited to 'externals/grill/flext/source/flbase.h')
-rw-r--r--externals/grill/flext/source/flbase.h31
1 files changed, 23 insertions, 8 deletions
diff --git a/externals/grill/flext/source/flbase.h b/externals/grill/flext/source/flbase.h
index b636dd1b..85633f20 100644
--- a/externals/grill/flext/source/flbase.h
+++ b/externals/grill/flext/source/flbase.h
@@ -2,7 +2,7 @@
flext - C++ layer for Max/MSP and pd (pure data) externals
-Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net)
+Copyright (c) 2001-2004 Thomas Grill (xovo@gmx.net)
For information on usage and redistribution, and for a DISCLAIMER OF ALL
WARRANTIES, see the file, "license.txt," in this distribution.
@@ -411,9 +411,12 @@ fts_module_t __##NAME##_module = {#NAME,#NAME,__##NAME##_initfun,0,0};
#define FLEXTTPN_PTR A_POINTER
#else
#define FLEXTTPN_INT A_INT
+ #define FLEXTTPN_DEFINT A_DEFINT
#endif
#define FLEXTTPN_FLOAT A_FLOAT
+ #define FLEXTTPN_DEFFLOAT A_DEFFLOAT
#define FLEXTTPN_SYM A_SYMBOL
+ #define FLEXTTPN_DEFSYM A_DEFSYMBOL
#define FLEXTTPN_VAR A_GIMME
#else
#define FLEXTTPN_NULL 0
@@ -422,29 +425,37 @@ fts_module_t __##NAME##_module = {#NAME,#NAME,__##NAME##_initfun,0,0};
#define FLEXTTPN_FLOAT 3
#define FLEXTTPN_SYM 4
#define FLEXTTPN_VAR 5
+ #define FLEXTTPN_DEFINT 6
+ #define FLEXTTPN_DEFFLOAT 7
+ #define FLEXTTPN_DEFSYM 8
#endif
// Shortcuts for PD/Max type arguments
#define FLEXTTYPE_void FLEXTTPN_NULL
#define CALLBTYPE_void void
#define FLEXTTYPE_float FLEXTTPN_FLOAT
+#define FLEXTTYPE_float0 FLEXTTPN_DEFFLOAT
#define CALLBTYPE_float float
#define FLEXTTYPE_t_float FLEXTTPN_FLOAT
#define CALLBTYPE_t_float t_float
#if FLEXT_SYS == FLEXT_SYS_PD
#define FLEXTTYPE_int FLEXTTPN_FLOAT
+#define FLEXTTYPE_int0 FLEXTTPN_DEFFLOAT
#define CALLBTYPE_int float
#elif FLEXT_SYS == FLEXT_SYS_MAX || FLEXT_SYS == FLEXT_SYS_JMAX
#define FLEXTTYPE_int FLEXTTPN_INT
+#define FLEXTTYPE_int0 FLEXTTPN_DEFINT
#define CALLBTYPE_int int
#else
#error
#endif
#define FLEXTTYPE_t_symptr FLEXTTPN_SYM
+#define FLEXTTYPE_t_symptr0 FLEXTTPN_DEFSYM
#define CALLBTYPE_t_symptr t_symptr
-#define FLEXTTYPE_t_symtype FLEXTTPN_SYM
+#define FLEXTTYPE_t_symtype FLEXTTYPE_t_symptr
+#define FLEXTTYPE_t_symtype0 FLEXTTYPE_t_symptr0
#define CALLBTYPE_t_symtype t_symptr
#define FLEXTTYPE_t_ptrtype FLEXTTPN_PTR
#define CALLBTYPE_t_ptrtype t_ptrtype
@@ -454,10 +465,14 @@ fts_module_t __##NAME##_module = {#NAME,#NAME,__##NAME##_initfun,0,0};
#define ARGMEMBER_int(a) GetInt(a)
+#define ARGMEMBER_int0(a) ARGMEMBER_int(a)
#define ARGMEMBER_float(a) GetFloat(a)
+#define ARGMEMBER_float0(a) ARGMEMBER_float(a)
#define ARGMEMBER_t_symptr(a) GetSymbol(a)
-#define ARGMEMBER_t_symtype(a) GetSymbol(a)
-#define ARGCAST(arg,tp) ARGMEMBER_##tp(arg)
+#define ARGMEMBER_t_symptr0(a) ARGMEMBER_t_symptr(a)
+#define ARGMEMBER_t_symtype(a) ARGMEMBER_t_symptr(a)
+#define ARGMEMBER_t_symtype0(a) ARGMEMBER_t_symptr0(a)
+#define ARGCAST(a,tp) ARGMEMBER_##tp(a)
#define REAL_NEW(NAME,NEW_CLASS,DSP,LIB) \
@@ -483,7 +498,7 @@ FLEXT_EXP(LIB) void FLEXT_STPF(NEW_CLASS,DSP)() \
FLEXT_OBJ_SETUP(NEW_CLASS,DSP,LIB)
#define REAL_NEW_1(NAME,NEW_CLASS,DSP,LIB, TYPE1) \
-flext_obj *NEW_CLASS::__init__(int ,t_atom *argv) \
+flext_obj *NEW_CLASS::__init__(int,t_atom *argv) \
{ \
return new NEW_CLASS(ARGCAST(argv[0],TYPE1)); \
} \
@@ -494,7 +509,7 @@ FLEXT_EXP(LIB) void FLEXT_STPF(NEW_CLASS,DSP)() \
FLEXT_OBJ_SETUP(NEW_CLASS,DSP,LIB)
#define REAL_NEW_2(NAME,NEW_CLASS,DSP,LIB, TYPE1,TYPE2) \
-flext_obj *NEW_CLASS::__init__(int ,t_atom *argv) \
+flext_obj *NEW_CLASS::__init__(int,t_atom *argv) \
{ \
return new NEW_CLASS(ARGCAST(argv[0],TYPE1),ARGCAST(argv[1],TYPE2)); \
} \
@@ -505,7 +520,7 @@ FLEXT_EXP(LIB) void FLEXT_STPF(NEW_CLASS,DSP)() \
FLEXT_OBJ_SETUP(NEW_CLASS,DSP,LIB)
#define REAL_NEW_3(NAME,NEW_CLASS,DSP,LIB, TYPE1, TYPE2, TYPE3) \
-flext_obj *NEW_CLASS::__init__(int ,t_atom *argv) \
+flext_obj *NEW_CLASS::__init__(int,t_atom *argv) \
{ \
return new NEW_CLASS(ARGCAST(argv[0],TYPE1),ARGCAST(argv[1],TYPE2),ARGCAST(argv[2],TYPE3)); \
} \
@@ -516,7 +531,7 @@ FLEXT_EXP(LIB) void FLEXT_STPF(NEW_CLASS,DSP)() \
FLEXT_OBJ_SETUP(NEW_CLASS,DSP,LIB)
#define REAL_NEW_4(NAME,NEW_CLASS,DSP,LIB, TYPE1,TYPE2, TYPE3, TYPE4) \
-flext_obj *NEW_CLASS::__init__(int ,t_atom *argv) \
+flext_obj *NEW_CLASS::__init__(int,t_atom *argv) \
{ \
return new NEW_CLASS(ARGCAST(argv[0],TYPE1),ARGCAST(argv[1],TYPE2),ARGCAST(argv[2],TYPE3),ARGCAST(argv[3],TYPE4)); \
} \