From 494d0c177cf16562157b888bd936404579016ac8 Mon Sep 17 00:00:00 2001 From: Thomas Grill Date: Fri, 23 May 2003 18:34:12 +0000 Subject: "" svn path=/trunk/; revision=650 --- externals/grill/flext/source/flbind.cpp | 1 - externals/grill/flext/source/flclass.h | 11 ++++++++++- externals/grill/flext/source/flcwmax.h | 1 + externals/grill/flext/source/flcwpd-x.h | 1 + externals/grill/flext/source/flext.h | 2 +- externals/grill/flext/source/flsimd.cpp | 16 +++++++++++++++- 6 files changed, 28 insertions(+), 4 deletions(-) (limited to 'externals/grill/flext/source') diff --git a/externals/grill/flext/source/flbind.cpp b/externals/grill/flext/source/flbind.cpp index d2a00129..a0af2ce0 100644 --- a/externals/grill/flext/source/flbind.cpp +++ b/externals/grill/flext/source/flbind.cpp @@ -140,7 +140,6 @@ bool flext_base::UnbindMethod(const t_symbol *sym,bool (*fun)(flext_base *,t_sym bool ok = false; if(bindhead) { - void *d = NULL; binditem *it = NULL; if(sym) { it = (binditem *)bindhead->Find(sym,0); diff --git a/externals/grill/flext/source/flclass.h b/externals/grill/flext/source/flclass.h index 4cbeb03f..e1b46c52 100644 --- a/externals/grill/flext/source/flclass.h +++ b/externals/grill/flext/source/flclass.h @@ -220,6 +220,9 @@ public: //! Output integer (index n starts with 0) void ToOutInt(int n,int f) const; + //! Output boolean (index n starts with 0) + void ToOutBool(int n,bool f) const { ToOutInt(n,f?1:0); } + //! Output symbol (index n starts with 0) void ToOutSymbol(int n,const t_symbol *s) const; //! Output string aka symbol (index n starts with 0) @@ -250,6 +253,9 @@ public: //! Output integer (index n starts with 0) void ToQueueInt(int n,int f) const; + //! Output boolean (index n starts with 0) + void ToQueueBool(int n,bool f) const { ToQueueInt(n,f?1:0); } + //! Output symbol (index n starts with 0) void ToQueueSymbol(int n,const t_symbol *s) const; //! Output string aka symbol (to appointed outlet) @@ -275,6 +281,9 @@ public: //! Send integer to self (inlet n) void ToSelfInt(int n,int f) const; + //! Send boolean to self (inlet n) + void ToSelfBool(int n,bool f) const { ToSelfInt(n,f?1:0); } + //! Send symbol to self (inlet n) void ToSelfSymbol(int n,const t_symbol *s) const; //! Send string aka symbol to self (inlet 0) @@ -389,7 +398,7 @@ public: @{ */ -#if FLEXT_SYS == FLEXT_SYS_PD +#if FLEXT_SYS == FLEXT_SYS_PD || FLEXT_SYS == FLEXT_SYS_MAX //! Bind object to a symbol bool Bind(const t_symbol *sym); //! Unbind object from a symbol diff --git a/externals/grill/flext/source/flcwmax.h b/externals/grill/flext/source/flcwmax.h index a0c17832..56fe03c3 100644 --- a/externals/grill/flext/source/flcwmax.h +++ b/externals/grill/flext/source/flcwmax.h @@ -20,6 +20,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #endif #define FLEXT_SYS 1 +#define FLEXT_USE_SIMD #ifndef _CW_NOPRECOMP #include diff --git a/externals/grill/flext/source/flcwpd-x.h b/externals/grill/flext/source/flcwpd-x.h index 3d7256f1..3a5087ae 100755 --- a/externals/grill/flext/source/flcwpd-x.h +++ b/externals/grill/flext/source/flcwpd-x.h @@ -18,6 +18,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #endif #define FLEXT_SYS 2 +#define FLEXT_USE_SIMD #define TARGET_API_MAC_CARBON 1 #define _POSIX_C_SOURCE diff --git a/externals/grill/flext/source/flext.h b/externals/grill/flext/source/flext.h index 34f80ab3..7472e4a1 100644 --- a/externals/grill/flext/source/flext.h +++ b/externals/grill/flext/source/flext.h @@ -26,7 +26,7 @@ WARRANTIES, see the file, "license.txt," in this distribution. #define FLEXT_VERSION 404 //! \brief flext version string -#define FLEXT_VERSTR "0.4.4pre" +#define FLEXT_VERSTR "0.4.4" //! @} diff --git a/externals/grill/flext/source/flsimd.cpp b/externals/grill/flext/source/flsimd.cpp index bebf3d97..9786e4e7 100755 --- a/externals/grill/flext/source/flsimd.cpp +++ b/externals/grill/flext/source/flsimd.cpp @@ -35,8 +35,14 @@ WARRANTIES, see the file, "license.txt," in this distribution. #include // SSE #include // SSE2 #include // 3DNow! +// #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__MWERKS__) +// #include #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__MWERKS__) - #include "Altivec.h" + #include + #include + #elif FLEXT_CPU == FLEXT_CPU_PPC && defined(__GNUG__) + #include + #include #endif #endif // FLEXT_USE_SIMD @@ -345,6 +351,14 @@ void flext::CopySamples(t_sample *dst,const t_sample *src,int cnt) #else #error t_sample data type has illegal size #endif +#elif FLEXT_OS == FLEXT_OS_MAC && defined(__VEC__) && defined(__VECTOROPS__) + { + int n = cnt>>2,n4 = n<<2; + cnt -= n4; + vScopy(n4,src,dst); + src += n4,dst += n4; + while(cnt--) *(dst++) = *(src++); + } #endif // _MSC_VER #endif // FLEXT_USE_SIMD { -- cgit v1.2.1