From 55fcd829cd66c6482ca5d2524c11f49e3ba883cf Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Mon, 29 May 2006 10:19:27 +0000 Subject: more robust structure pack setting for Max/MSP @ Windows attribute generation is now determined exclusively by the object class setup (not library as before). some minor changes after valgrind run - preprocessor symbol FLEXT_COMPATIBLE - if defined don't implement specialities of either PD or Max/MSP fixed bug for Max/MSP when there's no signal inlet - Max: fixed reported bug (#67), where list elements are distributed over inlets svn path=/trunk/; revision=5148 --- externals/grill/flext/source/flstdc.h | 41 +++++++++-------------------------- 1 file changed, 10 insertions(+), 31 deletions(-) (limited to 'externals/grill/flext/source/flstdc.h') diff --git a/externals/grill/flext/source/flstdc.h b/externals/grill/flext/source/flstdc.h index 3d699ce1..4d913afe 100644 --- a/externals/grill/flext/source/flstdc.h +++ b/externals/grill/flext/source/flstdc.h @@ -96,6 +96,11 @@ typedef t_clock t_qelem; /* Max/MSP definitions start here */ +// 2-byte alignment for Max/MSP structures +#ifdef _MSC_VER +#pragma pack(push,flext_maxsdk) +#pragma pack(2) +#endif // Include the relevant Max/MSP header files @@ -117,7 +122,6 @@ typedef t_clock t_qelem; #define WIN_EXT_VERSION 1 #endif - // necessary for the old OS9 SDK extern "C" { @@ -137,7 +141,6 @@ extern "C" { #undef WIN_VERSION - typedef t_pxobject t_sigobj; // that's the all-in-one object type of Max/MSP (not very memory-efficent, i guess) typedef t_patcher t_canvas; @@ -187,36 +190,12 @@ typedef void t_binbuf; #define critical_exit(N) #endif -#elif FLEXT_SYS == FLEXT_SYS_JMAX - -extern "C" { - // Wow, the jMax developers made excessive use of C++ reserved words - // good hit! - #define typeid c_typeid_ - #define template c_template_ - #define this c_this_ - #define class c_class_ - - #include - - // undefine them again - #undef typeid - #undef template - #undef this - #undef class -} - -typedef fts_dsp_object t_sigobj; -typedef void t_canvas; // decide type later on - -typedef char t_symbol; -typedef fts_atom_t t_atom; -typedef fts_class_t t_class; -typedef float t_sample; // is there no sample type in jMax? - -typedef fts_timebase_entry_t t_clock; -typedef fts_timebase_entry_t t_qelem; +#ifdef _MSC_VER +#pragma pack(pop,flext_maxsdk) +#endif +#else +#error Platform not supported #endif // FLEXT_SYS -- cgit v1.2.1