[PD-cvs] externals/grill/flext/source fldsp.h, 1.20, 1.21 flext.h, 1.28, 1.29 flstdc.h, 1.37, 1.38
Thomas Grill
xovo at users.sourceforge.net
Mon May 29 12:19:29 CEST 2006
Update of /cvsroot/pure-data/externals/grill/flext/source
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23250/source
Modified Files:
fldsp.h flext.h flstdc.h
Log Message:
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
Index: fldsp.h
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/fldsp.h,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -d -r1.20 -r1.21
*** fldsp.h 15 May 2006 23:03:52 -0000 1.20
--- fldsp.h 29 May 2006 10:19:27 -0000 1.21
***************
*** 65,70 ****
{
int i = CntInSig();
! // we have at least one actual dsp in vector
return vecs+(i?i:1);
}
--- 65,76 ----
{
int i = CntInSig();
! // in PD we have at least one actual dsp in vector
! #if FLEXT_SYS == FLEXT_SYS_PD
return vecs+(i?i:1);
+ #elif FLEXT_SYS == FLEXT_SYS_MAX
+ return vecs+i;
+ #else
+ #error
+ #endif
}
Index: flstdc.h
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flstdc.h,v
retrieving revision 1.37
retrieving revision 1.38
diff -C2 -d -r1.37 -r1.38
*** flstdc.h 19 Nov 2005 23:10:54 -0000 1.37
--- flstdc.h 29 May 2006 10:19:27 -0000 1.38
***************
*** 97,100 ****
--- 97,105 ----
/* 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
***************
*** 118,122 ****
#endif
-
// necessary for the old OS9 SDK
extern "C" {
--- 123,126 ----
***************
*** 138,142 ****
#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;
--- 142,145 ----
***************
*** 188,221 ****
#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 <fts/fts.h>
!
! // 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;
#endif // FLEXT_SYS
--- 191,200 ----
#endif
! #ifdef _MSC_VER
! #pragma pack(pop,flext_maxsdk)
! #endif
+ #else
+ #error Platform not supported
#endif // FLEXT_SYS
Index: flext.h
===================================================================
RCS file: /cvsroot/pure-data/externals/grill/flext/source/flext.h,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** flext.h 15 May 2006 23:03:52 -0000 1.28
--- flext.h 29 May 2006 10:19:27 -0000 1.29
***************
*** 57,66 ****
- #if FLEXT_SYS == FLEXT_SYS_MAX && FLEXT_OS == FLEXT_OS_WIN
- // for wmax alignment must be 2 bytes!
- #pragma pack(2)
- #endif
-
-
// include all the flext interface definitions
#include "fldefs.h"
--- 57,60 ----
***************
*** 72,79 ****
#include "fldsp.h"
- /*
- #if FLEXT_SYS == FLEXT_SYS_MAX && FLEXT_OS == FLEXT_OS_WIN
- #pragma pack(pop)
- #endif
- */
#endif // FLEXT_H
--- 66,68 ----
More information about the Pd-cvs
mailing list