diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7d906a6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +build/ +externals/ diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..df2e46c --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "source/max-sdk-base"] + path = source/max-sdk-base + url = https://github.com/Cycling74/max-sdk-base.git diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 0000000..7dc8361 --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,49 @@ +cmake_minimum_required(VERSION 3.19) + +string(REGEX REPLACE "(.*)/" "" THIS_FOLDER_NAME "${CMAKE_CURRENT_SOURCE_DIR}") +project(${THIS_FOLDER_NAME}) + +if (APPLE) + if (${CMAKE_GENERATOR} MATCHES "Xcode") + if (${XCODE_VERSION} VERSION_LESS 10) + message(STATUS "Xcode 10 or higher is required. Please install from the Mac App Store.") + return () + elseif(${XCODE_VERSION} VERSION_GREATER_EQUAL 12) + set(C74_BUILD_FAT YES) + endif () + endif () + + if (NOT CMAKE_OSX_ARCHITECTURES) + if(C74_BUILD_FAT) + set(CMAKE_OSX_ARCHITECTURES "x86_64;arm64" CACHE STRING "macOS architecture" FORCE) + else() + set(CMAKE_OSX_ARCHITECTURES ${CMAKE_SYSTEM_PROCESSOR} CACHE STRING "macOS architecture" FORCE) + endif() + message("CMAKE_OSX_ARCHITECTURES set to ${CMAKE_OSX_ARCHITECTURES}") + endif() +endif() + +MACRO(SUBDIRLIST result curdir) + FILE(GLOB children RELATIVE ${curdir} ${curdir}/*) + SET(dirlist "") + FOREACH(child ${children}) + IF(IS_DIRECTORY ${curdir}/${child}) + LIST(APPEND dirlist ${child}) + ENDIF() + ENDFOREACH() + SET(${result} ${dirlist}) +ENDMACRO() + +# Generate a project for every folder in the "source/category" folder +SUBDIRLIST(CATEGORY_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/source) +foreach (cat_dir ${CATEGORY_DIRS}) + SUBDIRLIST(PROJECT_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/source/${cat_dir}) + foreach (project_dir ${PROJECT_DIRS}) + set(project_path ${CMAKE_CURRENT_SOURCE_DIR}/source/${cat_dir}/${project_dir}) + #message("checking in: ${project_path}") + if (EXISTS "${project_path}/CMakeLists.txt") + message("Generating: ${project_dir}") + add_subdirectory(${project_path}) + endif () + endforeach () +endforeach () diff --git a/README.md b/README.md index e984286..d0fac00 100644 --- a/README.md +++ b/README.md @@ -2,3 +2,35 @@ A toolkit of Max objects to use real-time linear predictive coding in creative projects This project was initially developed in 2007 at Stanford's Center for Computer Research in Music and Acoustics (CCRMA), but it hasn't seen much attention since then. Contributions are welcome. + + +## Building + +``` +mkdir build +cd build +``` + +### Mac + +Run `cmake -G Xcode ..` + +Next run `cmake --build .` or open the Xcode project from this "build" folder and use the GUI. + +Note: you can add the `-j4` option where "4" is the number of cores to use. This can help to speed up your builds, though sometimes the error output is interleaved in such a way as to make troubleshooting more difficult. + +If you are running on a Mac M1 machine, you will likely see an error `cannot be loaded due to system security policy` when loading your externals in Max. To resolve this, you can ad-hoc codesign your external with `codesign --force --deep -s - myobject.mxo`. + +### Windows + +You can run `cmake --help` to get a list of the options available. Assuming some version of Visual Studio 2019, the commands to generate the projects will look like this: + +`cmake -G "Visual Studio 16 2019" ..` + +Or using Visual Studio 2017 it will look like this: + +`cmake -G "Visual Studio 15 2017 Win64" ..` + +Having generated the projects, you can now build by opening the .sln file in the build folder with the Visual Studio app (just double-click the .sln file) or you can build on the command line like this: + +`cmake --build . --config Release` diff --git a/src/lpcToolkitDemo.maxpat b/extras/lpcToolkitDemo.maxpat similarity index 100% rename from src/lpcToolkitDemo.maxpat rename to extras/lpcToolkitDemo.maxpat diff --git a/src/mbc.allpole~/mbc.allpole~.maxhelp b/help/mbc.allpole~.maxhelp similarity index 100% rename from src/mbc.allpole~/mbc.allpole~.maxhelp rename to help/mbc.allpole~.maxhelp diff --git a/src/mbc.blit~/mbc.blit~.maxhelp b/help/mbc.blit~.maxhelp similarity index 100% rename from src/mbc.blit~/mbc.blit~.maxhelp rename to help/mbc.blit~.maxhelp diff --git a/src/mbc.coeffDisp~/mbc.coeffDisp~.maxhelp b/help/mbc.coeffDisp~.maxhelp similarity index 100% rename from src/mbc.coeffDisp~/mbc.coeffDisp~.maxhelp rename to help/mbc.coeffDisp~.maxhelp diff --git a/src/mbc.errfilt~/mbc.errfilt~.maxhelp b/help/mbc.errfilt~.maxhelp similarity index 100% rename from src/mbc.errfilt~/mbc.errfilt~.maxhelp rename to help/mbc.errfilt~.maxhelp diff --git a/src/mbc.lpc~/mbc.lpc~.maxhelp b/help/mbc.lpc~.maxhelp similarity index 100% rename from src/mbc.lpc~/mbc.lpc~.maxhelp rename to help/mbc.lpc~.maxhelp diff --git a/src/mbc.pitch~/mbc.pitch~.maxhelp b/help/mbc.pitch~.maxhelp similarity index 100% rename from src/mbc.pitch~/mbc.pitch~.maxhelp rename to help/mbc.pitch~.maxhelp diff --git a/misc/README b/misc/README deleted file mode 100644 index 4bb3578..0000000 --- a/misc/README +++ /dev/null @@ -1,8 +0,0 @@ -This a collection of Max/MSP objects for performing linear prediction coding. - -Please copy the contents of the lpctoolkit-help folder into the msp-help folder in your Cycling74 directory, and the lpctoolkit-externals files into the msp-externals folder in your Cycling74 directory. - -For more information please visit http://markcartwright.com/projects/lpc-toolkit - -Mark Cartwright -mcartwright@gmail.com diff --git a/misc/bundlePackage b/misc/bundlePackage deleted file mode 100755 index 332f29b..0000000 --- a/misc/bundlePackage +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash - -rm -rf lpcoolkit - -mkdir -p lpctoolkit/lpctoolkit-externals -mkdir -p lpctoolkit/lpctoolkit-help - -find ../sdk-build/* -name '*.mxo' -exec cp -r {} ./lpctoolkit/lpctoolkit-externals/. \; -find ../src/* -name '*.maxhelp' -exec cp -r {} ./lpctoolkit/lpctoolkit-help/. \; -cp -r ../src/lpcToolkitDemo.maxpat ./lpctoolkit/lpctoolkit-help/. -cp README ./lpctoolkit/. - diff --git a/package-info.json.in b/package-info.json.in new file mode 100644 index 0000000..ed3d8fe --- /dev/null +++ b/package-info.json.in @@ -0,0 +1,24 @@ +{ + "author" : "Mark Cartwright", + "description" : "A toolkit of Max objects to use real-time linear predictive coding in creative projects.", + "homepatcher" : "lpcToolkitDemo.maxpat", + "max_version_min" : "8.0", "max_version_max" : "none", + "name" : "@C74_PACKAGE_NAME@", + "os" : { + "macintosh" : { + "platform" : [ "x64", "aarch64" ], + "min_version" : "none" + }, + "windows" : { + "platform" : [ "x64" ], + "min_version" : "none" + } + }, + "package_extra" : { + "reverse_domain" : "com.markcartwright", + "copyright" : "Copyright 2010 Mark Cartwright" + }, + "tags" : [ ], + "version" : "@GIT_VERSION_MAJ@.@GIT_VERSION_MIN@.@GIT_VERSION_SUB@", + "website" : "http://www.github.com/mcartwright/LPC-Toolkit" +} diff --git a/sdk-build/mbc.allpole~.mxo/Contents/Info.plist b/sdk-build/mbc.allpole~.mxo/Contents/Info.plist deleted file mode 100644 index 1f88d18..0000000 --- a/sdk-build/mbc.allpole~.mxo/Contents/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - mbc.allpole~ - CFBundleIdentifier - com.mcartwright.mbc.allpole~ - CFBundleInfoDictionaryVersion - 6.0 - CFBundleLongVersionString - mbc.allpole~ 5.1.1, Copyright 2010 Mark Cartwright - CFBundlePackageType - iLaX - CFBundleShortVersionString - 5.1.1 - CFBundleSignature - max2 - CFBundleVersion - 5.1.1 - CSResourcesFileMapped - - - diff --git a/sdk-build/mbc.allpole~.mxo/Contents/MacOS/mbc.allpole~ b/sdk-build/mbc.allpole~.mxo/Contents/MacOS/mbc.allpole~ deleted file mode 100755 index aab695d..0000000 Binary files a/sdk-build/mbc.allpole~.mxo/Contents/MacOS/mbc.allpole~ and /dev/null differ diff --git a/sdk-build/mbc.allpole~.mxo/Contents/PkgInfo b/sdk-build/mbc.allpole~.mxo/Contents/PkgInfo deleted file mode 100644 index 0febb6e..0000000 --- a/sdk-build/mbc.allpole~.mxo/Contents/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -iLaXmax2 \ No newline at end of file diff --git a/sdk-build/mbc.blit~.mxo/Contents/Info.plist b/sdk-build/mbc.blit~.mxo/Contents/Info.plist deleted file mode 100644 index e409e73..0000000 --- a/sdk-build/mbc.blit~.mxo/Contents/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - mbc.blit~ - CFBundleIdentifier - com.mcartwright.mbc.blit~ - CFBundleInfoDictionaryVersion - 6.0 - CFBundleLongVersionString - mbc.blit~ 5.1.1, Copyright 2010 Mark Cartwright - CFBundlePackageType - iLaX - CFBundleShortVersionString - 5.1.1 - CFBundleSignature - max2 - CFBundleVersion - 5.1.1 - CSResourcesFileMapped - - - diff --git a/sdk-build/mbc.blit~.mxo/Contents/MacOS/mbc.blit~ b/sdk-build/mbc.blit~.mxo/Contents/MacOS/mbc.blit~ deleted file mode 100755 index a885a61..0000000 Binary files a/sdk-build/mbc.blit~.mxo/Contents/MacOS/mbc.blit~ and /dev/null differ diff --git a/sdk-build/mbc.blit~.mxo/Contents/PkgInfo b/sdk-build/mbc.blit~.mxo/Contents/PkgInfo deleted file mode 100644 index 0febb6e..0000000 --- a/sdk-build/mbc.blit~.mxo/Contents/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -iLaXmax2 \ No newline at end of file diff --git a/sdk-build/mbc.coeffDisp~.mxo/Contents/Info.plist b/sdk-build/mbc.coeffDisp~.mxo/Contents/Info.plist deleted file mode 100644 index f79f07a..0000000 --- a/sdk-build/mbc.coeffDisp~.mxo/Contents/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - mbc.coeffDisp~ - CFBundleIdentifier - com.mcartwright.mbc.coeffDisp~ - CFBundleInfoDictionaryVersion - 6.0 - CFBundleLongVersionString - mbc.coeffDisp~ 5.1.1, Copyright 2010 Mark Cartwright - CFBundlePackageType - iLaX - CFBundleShortVersionString - 5.1.1 - CFBundleSignature - max2 - CFBundleVersion - 5.1.1 - CSResourcesFileMapped - - - diff --git a/sdk-build/mbc.coeffDisp~.mxo/Contents/MacOS/mbc.coeffDisp~ b/sdk-build/mbc.coeffDisp~.mxo/Contents/MacOS/mbc.coeffDisp~ deleted file mode 100755 index a0121ad..0000000 Binary files a/sdk-build/mbc.coeffDisp~.mxo/Contents/MacOS/mbc.coeffDisp~ and /dev/null differ diff --git a/sdk-build/mbc.coeffDisp~.mxo/Contents/PkgInfo b/sdk-build/mbc.coeffDisp~.mxo/Contents/PkgInfo deleted file mode 100644 index 0febb6e..0000000 --- a/sdk-build/mbc.coeffDisp~.mxo/Contents/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -iLaXmax2 \ No newline at end of file diff --git a/sdk-build/mbc.errfilt~.mxo/Contents/Info.plist b/sdk-build/mbc.errfilt~.mxo/Contents/Info.plist deleted file mode 100644 index 3694465..0000000 --- a/sdk-build/mbc.errfilt~.mxo/Contents/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - mbc.errfilt~ - CFBundleIdentifier - com.mcartwright.mbc.errfilt~ - CFBundleInfoDictionaryVersion - 6.0 - CFBundleLongVersionString - mbc.errfilt~ 5.1.1, Copyright 2010 Mark Cartwright - CFBundlePackageType - iLaX - CFBundleShortVersionString - 5.1.1 - CFBundleSignature - max2 - CFBundleVersion - 5.1.1 - CSResourcesFileMapped - - - diff --git a/sdk-build/mbc.errfilt~.mxo/Contents/MacOS/mbc.errfilt~ b/sdk-build/mbc.errfilt~.mxo/Contents/MacOS/mbc.errfilt~ deleted file mode 100755 index 7e5966c..0000000 Binary files a/sdk-build/mbc.errfilt~.mxo/Contents/MacOS/mbc.errfilt~ and /dev/null differ diff --git a/sdk-build/mbc.errfilt~.mxo/Contents/PkgInfo b/sdk-build/mbc.errfilt~.mxo/Contents/PkgInfo deleted file mode 100644 index 0febb6e..0000000 --- a/sdk-build/mbc.errfilt~.mxo/Contents/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -iLaXmax2 \ No newline at end of file diff --git a/sdk-build/mbc.lpc~.mxo/Contents/Info.plist b/sdk-build/mbc.lpc~.mxo/Contents/Info.plist deleted file mode 100644 index 7ad18d1..0000000 --- a/sdk-build/mbc.lpc~.mxo/Contents/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - mbc.lpc~ - CFBundleIdentifier - com.mcartwright.mbc.lpc~ - CFBundleInfoDictionaryVersion - 6.0 - CFBundleLongVersionString - mbc.lpc~ 5.1.1, Copyright 2010 Mark Cartwright - CFBundlePackageType - iLaX - CFBundleShortVersionString - 5.1.1 - CFBundleSignature - max2 - CFBundleVersion - 5.1.1 - CSResourcesFileMapped - - - diff --git a/sdk-build/mbc.lpc~.mxo/Contents/MacOS/mbc.lpc~ b/sdk-build/mbc.lpc~.mxo/Contents/MacOS/mbc.lpc~ deleted file mode 100755 index f8bc601..0000000 Binary files a/sdk-build/mbc.lpc~.mxo/Contents/MacOS/mbc.lpc~ and /dev/null differ diff --git a/sdk-build/mbc.lpc~.mxo/Contents/PkgInfo b/sdk-build/mbc.lpc~.mxo/Contents/PkgInfo deleted file mode 100644 index 0febb6e..0000000 --- a/sdk-build/mbc.lpc~.mxo/Contents/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -iLaXmax2 \ No newline at end of file diff --git a/sdk-build/mbc.pitch~.mxo/Contents/Info.plist b/sdk-build/mbc.pitch~.mxo/Contents/Info.plist deleted file mode 100644 index d6ba49e..0000000 --- a/sdk-build/mbc.pitch~.mxo/Contents/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - mbc.pitch~ - CFBundleIdentifier - com.mcartwright.mbc.pitch~ - CFBundleInfoDictionaryVersion - 6.0 - CFBundleLongVersionString - mbc.pitch~ 5.1.1, Copyright 2010 Mark Cartwright - CFBundlePackageType - iLaX - CFBundleShortVersionString - 5.1.1 - CFBundleSignature - max2 - CFBundleVersion - 5.1.1 - CSResourcesFileMapped - - - diff --git a/sdk-build/mbc.pitch~.mxo/Contents/MacOS/mbc.pitch~ b/sdk-build/mbc.pitch~.mxo/Contents/MacOS/mbc.pitch~ deleted file mode 100755 index 48ba7f9..0000000 Binary files a/sdk-build/mbc.pitch~.mxo/Contents/MacOS/mbc.pitch~ and /dev/null differ diff --git a/sdk-build/mbc.pitch~.mxo/Contents/PkgInfo b/sdk-build/mbc.pitch~.mxo/Contents/PkgInfo deleted file mode 100644 index 0febb6e..0000000 --- a/sdk-build/mbc.pitch~.mxo/Contents/PkgInfo +++ /dev/null @@ -1 +0,0 @@ -iLaXmax2 \ No newline at end of file diff --git a/source/max-sdk-base b/source/max-sdk-base new file mode 160000 index 0000000..b6d635c --- /dev/null +++ b/source/max-sdk-base @@ -0,0 +1 @@ +Subproject commit b6d635cc69bac680c35a63fcfebba9d523ab0d6c diff --git a/source/projects/mbc.allpole_tilde/CMakeLists.txt b/source/projects/mbc.allpole_tilde/CMakeLists.txt new file mode 100644 index 0000000..8357b6b --- /dev/null +++ b/source/projects/mbc.allpole_tilde/CMakeLists.txt @@ -0,0 +1,27 @@ +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-pretarget.cmake) + +############################################################# +# MAX EXTERNAL +############################################################# + +include_directories( + "${MAX_SDK_INCLUDES}" + "${MAX_SDK_MSP_INCLUDES}" + "${MAX_SDK_JIT_INCLUDES}" +) + +file(GLOB PROJECT_SRC + "*.h" + "*.c" + "*.cpp" +) +add_library( + ${PROJECT_NAME} + MODULE + ${PROJECT_SRC} +) +find_library(ACCELERATE Accelerate REQUIRED) +target_link_libraries(${PROJECT_NAME} PUBLIC ${ACCELERATE}) + + +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-posttarget.cmake) diff --git a/src/mbc.allpole~/mbc.allpole~.c b/source/projects/mbc.allpole_tilde/mbc.allpole~.c similarity index 89% rename from src/mbc.allpole~/mbc.allpole~.c rename to source/projects/mbc.allpole_tilde/mbc.allpole~.c index 89e4953..3a8ce95 100755 --- a/src/mbc.allpole~/mbc.allpole~.c +++ b/source/projects/mbc.allpole_tilde/mbc.allpole~.c @@ -26,8 +26,8 @@ typedef struct _allpole t_mbcfloat* a_aBuff; //filter coeff input buffer t_mbcfloat* a_y; //filter memory t_mbcfloat* a_tempVec; //temporary buff for vector math - float a_a1; //deemph coeff - float a_y1; //deemph filter memory + double a_a1; //deemph coeff + double a_y1; //deemph filter memory t_mbcfloat* a_Ar; //tube areas t_mbcfloat** a_A; //for parcor to coeff conversion t_mbcfloat* a_K; //parcor coefficients @@ -38,8 +38,8 @@ typedef struct _allpole long a_order; long a_deemph; int a_coeffType; //type of coeffecients: CT_PARCOR,CT_FILTER,CT_AREA - float a_fs; //sampling rate - int a_vsize; //vector size + double a_fs; //sampling rate + long a_vsize; //vector size } t_allpole; enum coeffTypes @@ -57,11 +57,11 @@ void allpole_assist(t_allpole *x, void *b, long m, long a, char *s); void allpole_float(t_allpole *x, double f); -void allpole_dsp(t_allpole *x, t_signal **sp, short *count); +void allpole_dsp64(t_allpole *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags); //t_int *allpole_perf_filter(t_int *w); //t_int *allpole_perf_area(t_int *w); -t_int *allpole_perf_parcor(t_int *w); -t_int *allpole_perf_parcorI(t_int *w); +void allpole_perf_parcor(t_allpole *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); +void allpole_perf_parcorI(t_allpole *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); //t_int *allpole_perf_filterI(t_int *w); //t_int *allpole_perf_areaI(t_int *w); void allpole_interp(t_allpole *x, t_floatarg interp); @@ -71,15 +71,15 @@ void allpole_init(t_allpole *x); void allpole_free(t_allpole *x); void allpole_free_arrays(t_allpole *x); void allpole_clear(t_allpole *x); -inline void allpole_highOrdFilter(t_allpole* x, int N, int order, t_float* in, t_float* out); -inline void allpole_solveForFiltCoefs(t_allpole* x, int order); -inline void allpole_deemphFilter(t_allpole *x, int N, float* vec); +static inline void allpole_highOrdFilter(t_allpole* x, int N, int order, double* in, double* out); +static inline void allpole_solveForFiltCoefs(t_allpole* x, int order); +static inline void allpole_deemphFilter(t_allpole *x, int N, double* vec); //////////////////////// global class pointer variable void *allpole_class; -int main(void) +void ext_main(void *r) { // object initialization, note the use of dsp_free for the freemethod, which is required // unless you need to free allocated memory, in which case you should call dsp_free from @@ -99,7 +99,7 @@ int main(void) c = class_new("mbc.allpole~", (method)allpole_new, (method)allpole_free, (long)sizeof(t_allpole), 0L, A_GIMME, 0); - class_addmethod(c, (method)allpole_dsp, "dsp", A_CANT, 0); + class_addmethod(c, (method)allpole_dsp64, "dsp64", A_CANT, 0); class_addmethod(c, (method)allpole_interp,"interp",A_DEFFLOAT,0); class_addmethod(c, (method)allpole_order,"order",A_DEFLONG,0); class_addmethod(c, (method)allpole_clear,"clear",0); @@ -109,8 +109,6 @@ int main(void) class_dspinit(c); // new style object version of dsp_initclass(); class_register(CLASS_BOX, c); // register class as a box class allpole_class = c; - - return 0; } //perform for FILTER COEFFICIENTS, INTERPOLATION OFF @@ -180,22 +178,22 @@ int main(void) }*/ //perform for PARCOR COEFFICIENTS, INTERPOLATION OFF -t_int *allpole_perf_parcor(t_int *w) +void allpole_perf_parcor(t_allpole *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { - t_float *in = (t_float *)(w[1]); - t_float *coeffIn = (t_float *)(w[2]); - t_float *coeffIdxIn = (t_float *)(w[3]); - t_float *G_n = (t_float *)(w[4]); - t_allpole *x = (t_allpole *)(w[5]); - t_float *out = (t_float *)(w[6]); - int N = (int)(w[7]); + double *in = ins[0]; + double *coeffIn = ins[1]; + double *coeffIdxIn = ins[2]; + double *G_n = ins[3]; + + double *out = outs[0]; + long N = sampleframes; int order = x->a_order; int i, n; for (n=0; n < N; n++) { - if(IS_NAN_FLOAT(G_n[n])) G_n[n] = 0.0; - if(IS_NAN_FLOAT(coeffIn[n])) coeffIn[n] = 0.0; + if(IS_NAN_DOUBLE(G_n[n])) G_n[n] = 0.0; + if(IS_NAN_DOUBLE(coeffIn[n])) coeffIn[n] = 0.0; } //look at coefficient index, if not zeros, buffer in coefficients @@ -224,27 +222,25 @@ t_int *allpole_perf_parcor(t_int *w) { allpole_deemphFilter(x, N, out); } - - return (w+8); } -t_int *allpole_perf_parcorI(t_int *w) +void allpole_perf_parcorI(t_allpole *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { - t_float *in = (t_float *)(w[1]); - t_float *coeffIn = (t_float *)(w[2]); - t_float *coeffIdxIn = (t_float *)(w[3]); - t_float *G_n = (t_float *)(w[4]); - t_allpole *x = (t_allpole *)(w[5]); - t_float *out = (t_float *)(w[6]); - int N = (int)(w[7]); + double *in = ins[0]; + double *coeffIn = ins[1]; + double *coeffIdxIn = ins[2]; + double *G_n = ins[3]; + + double *out = outs[0]; + int N = sampleframes; int order = x->a_order; int i, n; - float interpDiv; //interpolation denominator + double interpDiv; //interpolation denominator for (n=0; n < N; n++) { - if(IS_NAN_FLOAT(G_n[n])) G_n[n] = 0.0; - if(IS_NAN_FLOAT(coeffIn[n])) coeffIn[n] = 0.0; + if(IS_NAN_DOUBLE(G_n[n])) G_n[n] = 0.0; + if(IS_NAN_DOUBLE(coeffIn[n])) coeffIn[n] = 0.0; } //look at coefficient index, if not zeros, buffer in coefficients @@ -289,10 +285,7 @@ t_int *allpole_perf_parcorI(t_int *w) if (x->a_deemph) { allpole_deemphFilter(x, N, out); - } - - - return (w+8); + } } /* @@ -686,10 +679,10 @@ t_int *allpole_perf_parcor(t_int *w) void allpole_init(t_allpole *x) { int i; - x->a_a = (t_mbcfloat *) getbytes16( MAX_ORDER * sizeof(t_mbcfloat)); + x->a_a = (t_mbcfloat *) getbytes( MAX_ORDER * sizeof(t_mbcfloat)); x->a_aBuff = (t_mbcfloat *) getbytes( MAX_ORDER * sizeof(t_mbcfloat)); - x->a_y = (t_mbcfloat *) getbytes16( MAX_ORDER * sizeof(t_mbcfloat)); - x->a_tempVec = (t_mbcfloat *) getbytes16( MAX_ORDER * sizeof(t_mbcfloat)); + x->a_y = (t_mbcfloat *) getbytes( MAX_ORDER * sizeof(t_mbcfloat)); + x->a_tempVec = (t_mbcfloat *) getbytes( MAX_ORDER * sizeof(t_mbcfloat)); x->a_Ar = (t_mbcfloat *) getbytes( MAX_ORDER * sizeof(t_mbcfloat)); x->a_K = (t_mbcfloat *) getbytes( (MAX_ORDER + 1) * sizeof(t_mbcfloat)); x->a_interpCoeff = (t_mbcfloat *) getbytes( (MAX_ORDER + 1) * sizeof(t_mbcfloat)); @@ -712,7 +705,7 @@ void allpole_free_arrays(t_allpole *x) { int i; if (x->a_a) { - freebytes16((char *)x->a_a, MAX_ORDER * sizeof(t_mbcfloat)); + freebytes((char *)x->a_a, MAX_ORDER * sizeof(t_mbcfloat)); x->a_a = NULL; } if (x->a_aBuff) { @@ -720,11 +713,11 @@ void allpole_free_arrays(t_allpole *x) x->a_aBuff = NULL; } if (x->a_y) { - freebytes16((char *)x->a_y, MAX_ORDER * sizeof(t_mbcfloat)); + freebytes((char *)x->a_y, MAX_ORDER * sizeof(t_mbcfloat)); x->a_y = NULL; } if (x->a_tempVec) { - freebytes16((char *)x->a_tempVec, MAX_ORDER * sizeof(t_mbcfloat)); + freebytes((char *)x->a_tempVec, MAX_ORDER * sizeof(t_mbcfloat)); x->a_tempVec = NULL; } if (x->a_Ar) { @@ -781,11 +774,11 @@ void allpole_clear(t_allpole *x) { // this function is called when the DAC is enabled, and "registers" a function // for the signal chain. in this case, "allpole_perform" -void allpole_dsp(t_allpole *x, t_signal **sp, short *count) +void allpole_dsp64(t_allpole *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags) { //NOTE: need to specify parcor, filter, or area perform string !!!!!! - x->a_fs = sp[0]->s_sr; - x->a_vsize = sp[0]->s_n; + x->a_fs = samplerate; + x->a_vsize = maxvectorsize; allpole_clear(x); @@ -796,7 +789,7 @@ void allpole_dsp(t_allpole *x, t_signal **sp, short *count) //break; case CT_PARCOR: - dsp_add(allpole_perf_parcorI, 7, sp[0]->s_vec, sp[1]->s_vec, sp[2]->s_vec, sp[3]->s_vec, x, sp[4]->s_vec, sp[0]->s_n); + object_method(dsp64, gensym("dsp_add64"), x, allpole_perf_parcorI); break; case CT_AREA: @@ -814,7 +807,7 @@ void allpole_dsp(t_allpole *x, t_signal **sp, short *count) //break; case CT_PARCOR: - dsp_add(allpole_perf_parcor, 7, sp[0]->s_vec, sp[1]->s_vec, sp[2]->s_vec, sp[3]->s_vec, x, sp[4]->s_vec, sp[0]->s_n); + object_method(dsp64, gensym("dsp_add64"), x, allpole_perf_parcor); break; case CT_AREA: @@ -830,10 +823,10 @@ void allpole_dsp(t_allpole *x, t_signal **sp, short *count) void allpole_interp(t_allpole *x, t_floatarg interp) { - x->a_interp = (float)interp; + x->a_interp = interp; int i; int order = x->a_order; - float interpDiv; + double interpDiv; switch (x->a_coeffType) { case CT_FILTER: @@ -907,7 +900,7 @@ void *allpole_new(t_symbol *s, long argc, t_atom *argv) return NULL; } - if (x = (t_allpole *)object_alloc(allpole_class)) { + if ((x = (t_allpole *)object_alloc(allpole_class))) { dsp_setup((t_pxobject *)x, 1); // MSP inlets: arg is # of inlets and is REQUIRED! // use 0 if you don't need inlets @@ -981,12 +974,12 @@ void *allpole_new(t_symbol *s, long argc, t_atom *argv) } return (x); } -inline void allpole_deemphFilter(t_allpole *x, int N, float* vec) +inline void allpole_deemphFilter(t_allpole *x, int N, double* vec) { int n; - float a1 = x->a_a1; - float y1 = x->a_y1; + double a1 = x->a_a1; + double y1 = x->a_y1; for (n=N; n!=0; n--) { @@ -1023,7 +1016,7 @@ inline void allpole_solveForFiltCoefs(t_allpole* x, int order) } #if defined(MBC_VDSP) -inline void allpole_highOrdFilter(t_allpole* x, int N, int order, t_float* in, t_float* out) +inline void allpole_highOrdFilter(t_allpole* x, int N, int order, double* in, double* out) { int n, i; t_mbcfloat val; @@ -1040,7 +1033,7 @@ inline void allpole_highOrdFilter(t_allpole* x, int N, int order, t_float* in, t } } #else -inline void allpole_highOrdFilter(t_allpole* x, int N, int order, t_float* in, t_float* out) +inline void allpole_highOrdFilter(t_allpole* x, int N, int order, double* in, double* out) { int n, i; t_mbcfloat val; diff --git a/source/projects/mbc.blit_tilde/CMakeLists.txt b/source/projects/mbc.blit_tilde/CMakeLists.txt new file mode 100644 index 0000000..3af3a99 --- /dev/null +++ b/source/projects/mbc.blit_tilde/CMakeLists.txt @@ -0,0 +1,24 @@ +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-pretarget.cmake) + +############################################################# +# MAX EXTERNAL +############################################################# + +include_directories( + "${MAX_SDK_INCLUDES}" + "${MAX_SDK_MSP_INCLUDES}" + "${MAX_SDK_JIT_INCLUDES}" +) + +file(GLOB PROJECT_SRC + "*.h" + "*.c" + "*.cpp" +) +add_library( + ${PROJECT_NAME} + MODULE + ${PROJECT_SRC} +) + +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-posttarget.cmake) \ No newline at end of file diff --git a/src/mbc.blit~/mbc.blit~.c b/source/projects/mbc.blit_tilde/mbc.blit~.c similarity index 79% rename from src/mbc.blit~/mbc.blit~.c rename to source/projects/mbc.blit_tilde/mbc.blit~.c index c6b2ef5..29ab5b7 100755 --- a/src/mbc.blit~/mbc.blit~.c +++ b/source/projects/mbc.blit_tilde/mbc.blit~.c @@ -46,11 +46,13 @@ void *blit_new(t_symbol *s, long argc, t_atom *argv); void blit_free(t_blit *x); void blit_assist(t_blit *x, void *b, long m, long a, char *s); -void blit_dsp(t_blit *x, t_signal **sp, short *count); -t_int *blit_sigperf(t_int *w); //signal frequency input - bandlimited -t_int *blit_fltperf(t_int *w); //float frequency input - bandlimited -t_int *blit_sigperf_a(t_int *w); //signal frequency input - aliased -t_int *blit_fltperf_a(t_int *w); //float frequency input - aliased +void blit_dsp64(t_blit *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags); + +void blit_sigperf(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); //signal frequency input - bandlimited +void blit_fltperf(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); //float frequency input - bandlimited +void blit_sigperf_a(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); //signal frequency input - aliased +void blit_fltperf_a(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); //float frequency input - aliased + void blit_float(t_blit *x, double f); void blit_int(t_blit *x, long n); void blit_sincGen(t_blit *x); @@ -59,7 +61,7 @@ void blit_winGen(double *win, long N); void *blit_class; -int main(void) +void ext_main(void *r) { // object initialization, note the use of dsp_free for the freemethod, which is required // unless you need to free allocated memory, in which case you should call dsp_free from @@ -81,23 +83,20 @@ int main(void) class_addmethod(c, (method)blit_float, "float", A_FLOAT, 0); class_addmethod(c, (method)blit_int, "int", A_LONG, 0); - class_addmethod(c, (method)blit_dsp, "dsp", A_CANT, 0); + class_addmethod(c, (method)blit_dsp64, "dsp64", A_CANT, 0); class_addmethod(c, (method)blit_assist, "assist", A_CANT, 0); class_dspinit(c); // new style object version of dsp_initclass(); class_register(CLASS_BOX, c); // register class as a box class blit_class = c; - - return 0; } -t_int *blit_sigperf(t_int *w) { +void blit_sigperf(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { int i; - t_float *pinc = (t_float *)(w[1]); - t_blit *x = (t_blit *)(w[2]); - t_float *out = (t_float *)(w[3]); - int n = (int)(w[4]); + double *pinc = ins[0]; + double *out = outs[0]; + long n = sampleframes; float thresh = x->b_fs; double phase = x->b_phase; float phasen1 = phase; @@ -145,17 +144,14 @@ t_int *blit_sigperf(t_int *w) { } x->b_phase = phase; - - return (w+5); } -t_int *blit_fltperf(t_int *w) { +void blit_fltperf(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { int i; - t_blit *x = (t_blit *)(w[1]); - t_float *out = (t_float *)(w[2]); - int n = (int)(w[3]); + double *out = outs[0]; + long n = sampleframes; float thresh = x->b_fs; double phase = x->b_phase; float phasen1 = phase; @@ -204,15 +200,12 @@ t_int *blit_fltperf(t_int *w) { } x->b_phase = phase; - - return (w+4); } -t_int *blit_sigperf_a(t_int *w) { - t_float *pinc = (t_float *)(w[1]); - t_blit *x = (t_blit *)(w[2]); - t_float *out = (t_float *)(w[3]); - int n = (int)(w[4]); +void blit_sigperf_a(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { + double *pinc = ins[0]; + double *out = outs[0]; + long n = sampleframes; float thresh = x->b_fs; double phase = x->b_phase; @@ -230,15 +223,12 @@ t_int *blit_sigperf_a(t_int *w) { } x->b_phase = phase; - - return (w+5); } -t_int *blit_fltperf_a(t_int *w) { - t_blit *x = (t_blit *)(w[1]); - t_float *out = (t_float *)(w[2]); - int n = (int)(w[3]); +void blit_fltperf_a(t_blit *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { + double *out = outs[0]; + long n = sampleframes; float thresh = x->b_fs; double phase = x->b_phase; float pinc = x->b_pinc; @@ -256,8 +246,6 @@ t_int *blit_fltperf_a(t_int *w) { } x->b_phase = phase; - - return (w+4); } void blit_sincGen(t_blit *x) { @@ -303,21 +291,26 @@ void blit_winGen(double *win, long N) { } } -void blit_dsp(t_blit *x, t_signal **sp, short *count) +void blit_dsp64(t_blit *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags) { - x->b_fs = sys_getsr(); + x->b_fs = samplerate; x->b_phase = 0; if (count[0]) { // perform signal based frequency update - if (x->b_bandlimit) - dsp_add(blit_sigperf, 4, sp[0]->s_vec, x, sp[1]->s_vec, sp[0]->s_n); - else - dsp_add(blit_sigperf_a, 4, sp[0]->s_vec, x, sp[1]->s_vec, sp[0]->s_n); + if (x->b_bandlimit) { + object_method(dsp64, gensym("dsp_add64"), x, blit_sigperf, 0, NULL); + } + else { + object_method(dsp64, gensym("dsp_add64"), x, blit_sigperf_a, 0, NULL); + } + } else { //perform interrupt based frequency update - if (x->b_bandlimit) - dsp_add(blit_fltperf, 3, x, sp[1]->s_vec, sp[1]->s_n); - else - dsp_add(blit_fltperf_a, 3, x, sp[1]->s_vec, sp[1]->s_n); + if (x->b_bandlimit) { + object_method(dsp64, gensym("dsp_add64"), x, blit_fltperf, 0, NULL); + } + else { + object_method(dsp64, gensym("dsp_add64"), x, blit_fltperf_a, 0, NULL); + } } } @@ -362,7 +355,7 @@ void *blit_new(t_symbol *s, long argc, t_atom *argv) { t_blit *x = NULL; - if (x = (t_blit *)object_alloc(blit_class)) { + if ((x = (t_blit *)object_alloc(blit_class))) { dsp_setup((t_pxobject *)x,1); outlet_new((t_pxobject *)x, "signal"); diff --git a/source/projects/mbc.coeffDisp_tilde/CMakeLists.txt b/source/projects/mbc.coeffDisp_tilde/CMakeLists.txt new file mode 100644 index 0000000..3af3a99 --- /dev/null +++ b/source/projects/mbc.coeffDisp_tilde/CMakeLists.txt @@ -0,0 +1,24 @@ +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-pretarget.cmake) + +############################################################# +# MAX EXTERNAL +############################################################# + +include_directories( + "${MAX_SDK_INCLUDES}" + "${MAX_SDK_MSP_INCLUDES}" + "${MAX_SDK_JIT_INCLUDES}" +) + +file(GLOB PROJECT_SRC + "*.h" + "*.c" + "*.cpp" +) +add_library( + ${PROJECT_NAME} + MODULE + ${PROJECT_SRC} +) + +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-posttarget.cmake) \ No newline at end of file diff --git a/src/mbc.coeffDisp~/mbc.coeffDisp~.c b/source/projects/mbc.coeffDisp_tilde/mbc.coeffDisp~.c similarity index 81% rename from src/mbc.coeffDisp~/mbc.coeffDisp~.c rename to source/projects/mbc.coeffDisp_tilde/mbc.coeffDisp~.c index 6420b80..63d0229 100755 --- a/src/mbc.coeffDisp~/mbc.coeffDisp~.c +++ b/source/projects/mbc.coeffDisp_tilde/mbc.coeffDisp~.c @@ -37,9 +37,9 @@ void *coeffDisp_new(t_symbol *s, long argc, t_atom *argv); void coeffDisp_free(t_coeffDisp *x); void coeffDisp_assist(t_coeffDisp *x, void *b, long m, long a, char *s); -void coeffDisp_dsp(t_coeffDisp *x, t_signal **sp, short *count); -t_int *coeffDisp_perf_filter(t_int *w); -t_int *coeffDisp_perf_area(t_int *w); +void coeffDisp_dsp64(t_coeffDisp *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags); +void coeffDisp_perf_filter(t_coeffDisp *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); +void coeffDisp_perf_area(t_coeffDisp *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); void coeffDisp_order(t_coeffDisp *x, int order); void coeffDisp_tick(t_coeffDisp *x); void coeffDisp_init(t_coeffDisp *x); @@ -48,7 +48,7 @@ void coeffDisp_clear(t_coeffDisp *x); void *coeffDisp_class; -int main(void) +void ext_main(void *r) { // object initialization, note the use of dsp_free for the freemethod, which is required // unless you need to free allocated memory, in which case you should call dsp_free from @@ -68,24 +68,22 @@ int main(void) c = class_new("mbc.coeffDisp~", (method)coeffDisp_new, (method)coeffDisp_free, (long)sizeof(t_coeffDisp), 0L, A_GIMME, 0); - class_addmethod(c, (method)coeffDisp_dsp, "dsp", A_CANT, 0); + class_addmethod(c, (method)coeffDisp_dsp64, "dsp64", A_CANT, 0); class_addmethod(c, (method)coeffDisp_assist, "assist", A_CANT, 0); class_addmethod(c, (method)coeffDisp_order, "order", A_DEFLONG,0); class_dspinit(c); // new style object version of dsp_initclass(); class_register(CLASS_BOX, c); // register class as a box class coeffDisp_class = c; - - return 0; } -t_int *coeffDisp_perf_filter(t_int *w) +void coeffDisp_perf_filter(t_coeffDisp *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { - t_float *coeffIn = (t_float *)(w[1]); - t_float *coeffIdxIn = (t_float *)(w[2]); - t_float *G = (t_float *)(w[3]); - t_coeffDisp *x = (t_coeffDisp *)(w[4]); - int n = (int)(w[5]); + double *coeffIn = ins[0]; + double *coeffIdxIn = ins[1]; + double *G = ins[2]; + long n = sampleframes; + int order = x->c_order; int outMax = x->c_outMax; int i, in_idx = 0; @@ -96,7 +94,7 @@ t_int *coeffDisp_perf_filter(t_int *w) } in_idx = 0; - n = (int)(w[5]); + n = sampleframes; //look at coefficient index, if not zeros, buffer in coefficients while (n--) { @@ -120,16 +118,15 @@ t_int *coeffDisp_perf_filter(t_int *w) } in_idx++; } - - return (w+6); } -t_int *coeffDisp_perf_area(t_int *w) //TODO: complete correctly (right now it's the same as coeff) +void coeffDisp_perf_area(t_coeffDisp *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) //TODO: complete correctly (right now it's the same as coeff) { - t_float *coeffIn = (t_float *)(w[1]); - t_float *coeffIdxIn = (t_float *)(w[2]); - t_coeffDisp *x = (t_coeffDisp *)(w[3]); - int n = (int)(w[4]); + double *coeffIn = ins[0]; + double *coeffIdxIn = ins[1]; + double *G = ins[2]; + long n = sampleframes; + int order = x->c_order; int i, in_idx = 0; @@ -139,7 +136,7 @@ t_int *coeffDisp_perf_area(t_int *w) //TODO: complete correctly (right now it's } in_idx = 0; - n = (int)(w[4]); + n = sampleframes; //look at coefficient index, if not zeros, buffer in coefficients while (n--) { @@ -156,8 +153,6 @@ t_int *coeffDisp_perf_area(t_int *w) //TODO: complete correctly (right now it's } in_idx++; } - - return (w+5); } void coeffDisp_tick(t_coeffDisp *x) @@ -191,15 +186,15 @@ void coeffDisp_clear(t_coeffDisp *x) { } } -void coeffDisp_dsp(t_coeffDisp *x, t_signal **sp, short *count) +void coeffDisp_dsp64(t_coeffDisp *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags) { switch (x->c_coeffType) { case CT_FILTER: - dsp_add(coeffDisp_perf_filter, 5, sp[0]->s_vec, sp[1]->s_vec, sp[2]->s_vec, x, sp[0]->s_n); + object_method(dsp64, gensym("dsp_add64"), x, coeffDisp_perf_filter, 0, NULL); break; case CT_AREA: - dsp_add(coeffDisp_perf_area, 4, sp[0]->s_vec, sp[1]->s_vec, x, sp[0]->s_n); + object_method(dsp64, gensym("dsp_add64"), x, coeffDisp_perf_area, 0, NULL); break; default: @@ -260,7 +255,7 @@ void *coeffDisp_new(t_symbol *s, long argc, t_atom *argv) return NULL; } - if (x = (t_coeffDisp *)object_alloc(coeffDisp_class)) { + if ((x = (t_coeffDisp *)object_alloc(coeffDisp_class))) { dsp_setup((t_pxobject *)x,3); x->c_out = listout(x); diff --git a/source/projects/mbc.errfilt_tilde/CMakeLists.txt b/source/projects/mbc.errfilt_tilde/CMakeLists.txt new file mode 100644 index 0000000..7dadaf4 --- /dev/null +++ b/source/projects/mbc.errfilt_tilde/CMakeLists.txt @@ -0,0 +1,27 @@ +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-pretarget.cmake) + +############################################################# +# MAX EXTERNAL +############################################################# + +include_directories( + "${MAX_SDK_INCLUDES}" + "${MAX_SDK_MSP_INCLUDES}" + "${MAX_SDK_JIT_INCLUDES}" +) + +file(GLOB PROJECT_SRC + "*.h" + "*.c" + "*.cpp" +) +add_library( + ${PROJECT_NAME} + MODULE + ${PROJECT_SRC} +) + +find_library(ACCELERATE Accelerate REQUIRED) +target_link_libraries(${PROJECT_NAME} PUBLIC ${ACCELERATE}) + +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-posttarget.cmake) diff --git a/src/mbc.errfilt~/errfilt~.c b/source/projects/mbc.errfilt_tilde/errfilt~.c similarity index 73% rename from src/mbc.errfilt~/errfilt~.c rename to source/projects/mbc.errfilt_tilde/errfilt~.c index 82a4eff..7a0418c 100755 --- a/src/mbc.errfilt~/errfilt~.c +++ b/source/projects/mbc.errfilt_tilde/errfilt~.c @@ -32,17 +32,19 @@ void *errfilt_new(int order, float interp); void errfilt_free(t_errfilt *x); void errfilt_assist(t_errfilt *x, void *b, long m, long a, char *s); -void errfilt_dsp(t_errfilt *x, t_signal **sp, short *count); + +void errfilt_dsp64(t_errfilt *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags); void errfilt_interp(t_errfilt *x, float interp); void errfilt_order(t_errfilt *x, int order); void errfilt_init(t_errfilt *x); void errfilt_clear(t_errfilt *x); -t_int *errfilt_perf_coeff(t_int *w); +void errfilt_perf_coeff(t_errfilt *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); + //////////////////////// global class pointer variable void *errfilt_class; -int main(void) +void ext_main(void *r) { // object initialization, note the use of dsp_free for the freemethod, which is required // unless you need to free allocated memory, in which case you should call dsp_free from @@ -62,7 +64,7 @@ int main(void) c = class_new("mbc.errfilt~", (method)errfilt_new, (method)errfilt_free, (long)sizeof(t_errfilt), 0L, A_DEFLONG, A_DEFFLOAT, 0); - class_addmethod(c, (method)errfilt_dsp, "dsp", A_CANT, 0); + class_addmethod(c, (method)errfilt_dsp64, "dsp64", A_CANT, 0); class_addmethod(c, (method)errfilt_interp,"interp",A_DEFFLOAT,0); class_addmethod(c, (method)errfilt_order,"order",A_LONG,0); class_addmethod(c, (method)errfilt_assist,"assist",A_CANT,0); @@ -70,18 +72,16 @@ int main(void) class_dspinit(c); // new style object version of dsp_initclass(); class_register(CLASS_BOX, c); // register class as a box class errfilt_class = c; - - return 0; } -t_int *errfilt_perf_coeff(t_int *w) +void errfilt_perf_coeff(t_errfilt *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { - t_float *in = (t_float *)(w[1]); - t_float *coeffIn = (t_float *)(w[2]); - t_float *coeffIdxIn = (t_float *)(w[3]); - t_errfilt *x = (t_errfilt *)(w[4]); - t_float *out = (t_float *)(w[5]); - int n = (int)(w[6]); + double *in = ins[0]; + double *coeffIn = ins[1]; + double *coeffIdxIn = ins[2]; + + double *out = outs[0]; + int n = sampleframes; int order = x->a_order; int i, in_idx = 0, out_idx = 0; t_float val = 0.0; @@ -94,7 +94,7 @@ t_int *errfilt_perf_coeff(t_int *w) } in_idx = 0; - n = (int)(w[6]); + n = sampleframes; //look at coefficient index, if not zeros, buffer in coefficients while (n--) { @@ -109,7 +109,7 @@ t_int *errfilt_perf_coeff(t_int *w) in_idx++; } - n = (int)(w[6]); + n = sampleframes; while (n--) { val = in[out_idx]; @@ -123,17 +123,15 @@ t_int *errfilt_perf_coeff(t_int *w) out[out_idx] = (float)val; out_idx++; } - - return (w+7); } void errfilt_init(t_errfilt *x) { - x->a_b = (t_float *) getbytes16( MAX_ORDER * sizeof(t_float)); + x->a_b = (t_float *) getbytes( MAX_ORDER * sizeof(t_float)); x->a_bBuff = (t_float *) getbytes( MAX_ORDER * sizeof(t_float)); - x->a_x = (t_float *) getbytes16( MAX_ORDER * sizeof(t_float)); + x->a_x = (t_float *) getbytes( MAX_ORDER * sizeof(t_float)); x->a_A = (t_float *) getbytes( MAX_ORDER * sizeof(t_float)); - x->a_tempVec = (t_float *) getbytes16( MAX_ORDER * sizeof(t_float)); + x->a_tempVec = (t_float *) getbytes( MAX_ORDER * sizeof(t_float)); errfilt_clear(x); } @@ -167,16 +165,19 @@ void errfilt_order(t_errfilt *x, int order) { // this function is called when the DAC is enabled, and "registers" a function // for the signal chain. in this case, "errfilt_perform" -void errfilt_dsp(t_errfilt *x, t_signal **sp, short *count) +void errfilt_dsp64(t_errfilt *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags) { - // dsp_add - // 1: (t_perfroutine p) perform method - // 2: (long argc) number of args to your perform method - // 3...: argc additional arguments, all must be sizeof(pointer) or long - // these can be whatever, so you might want to include your object pointer in there - // so that you have access to the info, if you need it. - - dsp_add(errfilt_perf_coeff, 6, sp[0]->s_vec, sp[1]->s_vec, sp[2]->s_vec, x, sp[3]->s_vec, sp[0]->s_n); + + // instead of calling dsp_add(), we send the "dsp_add64" message to the object representing the dsp chain + // the arguments passed are: + // 1: the dsp64 object passed-in by the calling + // 2: the symbol of the "dsp_add64" message we are sending + // 3: a pointer to your object + // 4: a pointer to your 64-bit perform method + // 5: flags to alter how the signal chain handles your object -- just pass 0 + // 6: a generic pointer that you can use to pass any additional data to your perform method + + object_method(dsp64, gensym("dsp_add64"), x, errfilt_perf_coeff, 0, NULL); } void errfilt_assist(t_errfilt *x, void *b, long m, long a, char *s) @@ -195,11 +196,11 @@ void errfilt_assist(t_errfilt *x, void *b, long m, long a, char *s) void errfilt_free(t_errfilt *x) { dsp_free((t_pxobject *) x); - freebytes16((char *)x->a_b, MAX_ORDER * sizeof(t_float)); + freebytes((char *)x->a_b, MAX_ORDER * sizeof(t_float)); freebytes(x->a_bBuff, MAX_ORDER * sizeof(t_float)); - freebytes16((char *)x->a_x, MAX_ORDER * sizeof(t_float)); + freebytes((char *)x->a_x, MAX_ORDER * sizeof(t_float)); freebytes(x->a_A, MAX_ORDER * sizeof(t_float)); - freebytes16((char *)x->a_tempVec, MAX_ORDER * sizeof(t_float)); + freebytes((char *)x->a_tempVec, MAX_ORDER * sizeof(t_float)); } void *errfilt_new(int order, float interp) @@ -212,7 +213,7 @@ void *errfilt_new(int order, float interp) return NULL; } - if (x = (t_errfilt *)object_alloc(errfilt_class)) + if ((x = (t_errfilt *)object_alloc(errfilt_class))) { dsp_setup((t_pxobject *)x,3); outlet_new(x, "signal"); diff --git a/source/projects/mbc.lpc_tilde/CMakeLists.txt b/source/projects/mbc.lpc_tilde/CMakeLists.txt new file mode 100644 index 0000000..dc643ec --- /dev/null +++ b/source/projects/mbc.lpc_tilde/CMakeLists.txt @@ -0,0 +1,26 @@ +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-pretarget.cmake) + +############################################################# +# MAX EXTERNAL +############################################################# + +include_directories( + "${MAX_SDK_INCLUDES}" + "${MAX_SDK_MSP_INCLUDES}" + "${MAX_SDK_JIT_INCLUDES}" +) + +file(GLOB PROJECT_SRC + "*.h" + "*.c" + "*.cpp" +) +add_library( + ${PROJECT_NAME} + MODULE + ${PROJECT_SRC} +) +find_library(ACCELERATE Accelerate REQUIRED) +target_link_libraries(${PROJECT_NAME} PUBLIC ${ACCELERATE}) + +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-posttarget.cmake) diff --git a/src/mbc.lpc~/mbc.lpc~.c b/source/projects/mbc.lpc_tilde/mbc.lpc~.c similarity index 93% rename from src/mbc.lpc~/mbc.lpc~.c rename to source/projects/mbc.lpc_tilde/mbc.lpc~.c index 66ce03d..db3a479 100755 --- a/src/mbc.lpc~/mbc.lpc~.c +++ b/source/projects/mbc.lpc_tilde/mbc.lpc~.c @@ -46,7 +46,7 @@ typedef struct _lpc int l_inframe_idx; //current inframe buffer index int l_outframe_idx; //current outframe buffer index long l_v_size; //vector size - float l_fs; //sampling rate + double l_fs; //sampling rate int l_maxnfft; //fft length int l_log2nfft; //log2(fft length) FFTSetup l_fftsetup; //FFTSetup for vDSP FFT functions @@ -60,8 +60,8 @@ void lpc_free(t_lpc *x); void lpc_free_arrays(t_lpc *x); void lpc_assist(t_lpc *x, void *b, long m, long a, char *s); -void lpc_dsp(t_lpc *x, t_signal **sp, short *count); -t_int *lpc_perform(t_int *w); +void lpc_dsp64(t_lpc *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags); +void lpc_perform(t_lpc *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); void lpc_order(t_lpc *x, int n); void lpc_preemph(t_lpc *x, int n); @@ -74,7 +74,7 @@ void lpc_bartlett(t_lpc *x); void *lpc_class; -int main(void) +void ext_main(void *r) { // object initialization, note the use of dsp_free for the freemethod, which is required // unless you need to free allocated memory, in which case you should call dsp_free from @@ -94,7 +94,7 @@ int main(void) c = class_new("mbc.lpc~", (method)lpc_new, (method)lpc_free, (long)sizeof(t_lpc), 0L, A_DEFLONG, A_DEFLONG, A_DEFLONG, 0); //arglist: order, framerate, preemph - class_addmethod(c, (method)lpc_dsp, "dsp", A_CANT, 0); + class_addmethod(c, (method)lpc_dsp64, "dsp64", A_CANT, 0); class_addmethod(c, (method)lpc_order,"order",A_DEFLONG,0); class_addmethod(c, (method)lpc_preemph,"preemph",A_DEFLONG,0); class_addmethod(c, (method)lpc_assist,"assist",A_CANT,0); @@ -102,20 +102,17 @@ int main(void) class_dspinit(c); // new style object version of dsp_initclass(); class_register(CLASS_BOX, c); // register class as a box class lpc_class = c; - - return 0; } -t_int *lpc_perform(t_int *w) +void lpc_perform(t_lpc *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { - t_lpc *x = (t_lpc *) (w[1]); - t_float *in = (t_float *)(w[2]); - t_float *out_error = (t_float *)(w[3]); - t_float *out_gain = (t_float *)(w[4]); - t_float *out_coeff = (t_float *)(w[5]); - t_float *out_parcor = (t_float *)(w[6]); - t_float *out_index = (t_float *)(w[7]); - int n = (int)(w[8]); + double *in = ins[0]; + double *out_error = outs[0]; + double *out_gain = outs[1]; + double *out_coeff = outs[2]; + double *out_parcor = outs[3]; + double *out_index = outs[4]; + long n = sampleframes; int p = x->l_order; int length = x->l_frame_size; int log2nfft = NLOG2(length+p+1); @@ -139,7 +136,7 @@ t_int *lpc_perform(t_int *w) x->l_x1 = val; in_idx++; } - n = (int)(w[8]); + n = sampleframes; in_idx = 0; } @@ -296,19 +293,17 @@ t_int *lpc_perform(t_int *w) x->l_inframe_idx = inframeidx; x->l_outframe_idx = outframeidx; - - return (w+9); } -void lpc_dsp(t_lpc *x, t_signal **sp, short *count) +void lpc_dsp64(t_lpc *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags) { - if (sp[0]->s_n != x->l_v_size || sp[0]->s_sr != x->l_fs) { - x->l_v_size = sp[0]->s_n; - x->l_fs = sp[0]->s_sr; + if (maxvectorsize != x->l_v_size || samplerate != x->l_fs) { + x->l_v_size = maxvectorsize; + x->l_fs = samplerate; lpc_init(x); } - dsp_add(lpc_perform, 8, x, sp[0]->s_vec, sp[1]->s_vec, sp[2]->s_vec, sp[3]->s_vec, sp[4]->s_vec, sp[5]->s_vec, sp[0]->s_n); + object_method(dsp64, gensym("dsp_add64"), x, lpc_perform, 0, NULL); } void lpc_assist(t_lpc *x, void *b, long msg, long arg, char *dst) @@ -514,7 +509,7 @@ void *lpc_new(long order, long framerate, long preemph) framerate = DEFAULT_FRAMERATE; } - if (x = (t_lpc *)object_alloc(lpc_class)) { + if ((x = (t_lpc *)object_alloc(lpc_class))) { dsp_setup((t_pxobject *)x,1); outlet_new((t_pxobject *)x, "signal"); outlet_new((t_pxobject *)x, "signal"); diff --git a/source/projects/mbc.pitch_tilde/CMakeLists.txt b/source/projects/mbc.pitch_tilde/CMakeLists.txt new file mode 100644 index 0000000..8357b6b --- /dev/null +++ b/source/projects/mbc.pitch_tilde/CMakeLists.txt @@ -0,0 +1,27 @@ +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-pretarget.cmake) + +############################################################# +# MAX EXTERNAL +############################################################# + +include_directories( + "${MAX_SDK_INCLUDES}" + "${MAX_SDK_MSP_INCLUDES}" + "${MAX_SDK_JIT_INCLUDES}" +) + +file(GLOB PROJECT_SRC + "*.h" + "*.c" + "*.cpp" +) +add_library( + ${PROJECT_NAME} + MODULE + ${PROJECT_SRC} +) +find_library(ACCELERATE Accelerate REQUIRED) +target_link_libraries(${PROJECT_NAME} PUBLIC ${ACCELERATE}) + + +include(${CMAKE_CURRENT_SOURCE_DIR}/../../max-sdk-base/script/max-posttarget.cmake) diff --git a/src/mbc.pitch~/mbc.pitch~.c b/source/projects/mbc.pitch_tilde/mbc.pitch~.c similarity index 93% rename from src/mbc.pitch~/mbc.pitch~.c rename to source/projects/mbc.pitch_tilde/mbc.pitch~.c index 4d992ff..894c946 100755 --- a/src/mbc.pitch~/mbc.pitch~.c +++ b/source/projects/mbc.pitch_tilde/mbc.pitch~.c @@ -42,7 +42,7 @@ typedef struct _pitch int p_inframe_idx; //current inframe buffer index int p_hop_idx; //hop index long p_v_size; //vector size - float p_fs; //sampling rate + double p_fs; //sampling rate int p_maxnfft; //fft length int p_log2nfft; //log2(fft length) float p_thresh; //detection threshold @@ -64,8 +64,8 @@ void pitch_free(t_pitch *x); void pitch_free_arrays(t_pitch *x); void pitch_assist(t_pitch *x, void *b, long m, long a, char *s); -void pitch_dsp(t_pitch *x, t_signal **sp, short *count); -t_int *pitch_perform(t_int *w); +void pitch_dsp64(t_pitch *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags); +void pitch_perform(t_pitch *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam); void pitch_init(t_pitch *x); void pitch_thresh(t_pitch *x, double thresh); void pitch_frame_rate(t_pitch *x, double thresh); @@ -74,7 +74,7 @@ void pitch_frame_rate(t_pitch *x, double thresh); void *pitch_class; -int main(void) +void ext_main(void *r) { // object initialization, note the use of dsp_free for the freemethod, which is required // unless you need to free allocated memory, in which case you should call dsp_free from @@ -94,7 +94,7 @@ int main(void) c = class_new("mbc.pitch~", (method)pitch_new, (method)pitch_free, (long)sizeof(t_pitch), 0L, A_GIMME, 0); - class_addmethod(c, (method)pitch_dsp, "dsp", A_CANT, 0); + class_addmethod(c, (method)pitch_dsp64, "dsp64", A_CANT, 0); class_addmethod(c, (method)pitch_assist, "assist", A_CANT, 0); class_addmethod(c, (method)pitch_thresh, "thresh", A_FLOAT,0); class_addmethod(c, (method)pitch_frame_rate, "frame_rate",A_FLOAT,0); @@ -102,14 +102,11 @@ int main(void) class_dspinit(c); // new style object version of dsp_initclass(); class_register(CLASS_BOX, c); // register class as a box class pitch_class = c; - - return 0; } -t_int *pitch_perform(t_int *w) { - t_float *in = (t_float *)(w[1]); - t_pitch *x = (t_pitch *) (w[2]); - int n = (int)(w[3]); +void pitch_perform(t_pitch *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam) { + double *in = ins[0]; + long n = sampleframes; int length = x->p_frame_size; int hop_size = x->p_hop_size; int log2nfft = NLOG2(2*length); @@ -255,19 +252,17 @@ t_int *pitch_perform(t_int *w) { x->p_inframe_idx = inframeidx; x->p_hop_idx = hopidx; - - return (w+4); } -void pitch_dsp(t_pitch *x, t_signal **sp, short *count) +void pitch_dsp64(t_pitch *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags) { - if (sp[0]->s_n != x->p_v_size || sp[0]->s_sr != x->p_fs) { - x->p_v_size = sp[0]->s_n; - x->p_fs = sp[0]->s_sr; + if (maxvectorsize != x->p_v_size || samplerate != x->p_fs) { + x->p_v_size = maxvectorsize; + x->p_fs = samplerate; pitch_init(x); } - - dsp_add(pitch_perform, 3, sp[0]->s_vec, x, sp[0]->s_n); + + object_method(dsp64, gensym("dsp_add64"), x, pitch_perform, 0, NULL); } void pitch_assist(t_pitch *x, void *b, long msg, long arg, char *dst) @@ -387,7 +382,7 @@ void *pitch_new(t_symbol *s, long argc, t_atom *argv) { t_pitch *x = NULL; - if (x = (t_pitch *)object_alloc(pitch_class)) { + if ((x = (t_pitch *)object_alloc(pitch_class))) { dsp_setup((t_pxobject *)x,1); x->p_clarityOut = floatout(x); x->p_freqOut = floatout(x); diff --git a/src/Info.plist b/src/Info.plist deleted file mode 100644 index 3c37968..0000000 --- a/src/Info.plist +++ /dev/null @@ -1,28 +0,0 @@ - - - - - CFBundleDevelopmentRegion - English - CFBundleExecutable - ${PRODUCT_NAME} - CFBundleIconFile - - CFBundleIdentifier - com.mcartwright.${PRODUCT_NAME} - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - iLaX - CFBundleSignature - max2 - CFBundleVersion - ${PRODUCT_VERSION} - CFBundleShortVersionString - ${PRODUCT_VERSION} - CFBundleLongVersionString - ${PRODUCT_NAME} ${PRODUCT_VERSION}, Copyright 2010 Mark Cartwright - CSResourcesFileMapped - - - diff --git a/src/maxmspsdk.xcconfig b/src/maxmspsdk.xcconfig deleted file mode 100644 index 259893a..0000000 --- a/src/maxmspsdk.xcconfig +++ /dev/null @@ -1,46 +0,0 @@ -// Xcode target configuration settings for the Max 5 SDK -// Used as the basis for Xcode projects to build Max externals. -// -// Changes to the settings in this file will be applied to all SDK examples -// To change settings for only one of the examples, override the settings using -// Xcode's target inspector. -// -// by Timothy Place -// Copyright © 2008, Cycling '74 - - -// Name & Version -PRODUCT_NAME = $(PROJECT_NAME) -PRODUCT_VERSION = 5.1.1 - - -// Paths -C74SUPPORT = $(SRCROOT)/../../c74support -HEADER_SEARCH_PATHS = /Developer/Headers/FlatCarbon "$(C74SUPPORT)/max-includes" "$(C74SUPPORT)/msp-includes" "$(C74SUPPORT)/jit-includes" -FRAMEWORK_SEARCH_PATHS = "$(C74SUPPORT)/max-includes" "$(C74SUPPORT)/msp-includes" "$(C74SUPPORT)/jit-includes" -DSTROOT = $(SRCROOT)/../../sdk-build -// (This next path is relative to DSTROOT) -INSTALL_PATH = / - - -// Special Files -GCC_PREFIX_HEADER = $(C74SUPPORT)/max-includes/macho-prefix.pch -INFOPLIST_FILE = $(SRCROOT)/../Info.plist - - -// Per architecture and deployment settings -SDKROOT = /Developer/SDKs/MacOSX10.4u.sdk - -GCC_VERSION = 4.0 -// The above line can be specialized as follows provided you are using Xcode 3 or higher -// GCC_VERSION[arch=i386] = 4.0 -// GCC_VERSION[arch=ppc] = 4.0 - -MACOSX_DEPLOYMENT_TARGET = 10.4 - - -// Static Configuration (don't change these) -WRAPPER_EXTENSION = mxo; -WARNING_CFLAGS = -Wmost -Wno-four-char-constants -Wno-unknown-pragmas -DEPLOYMENT_LOCATION = YES -GENERATE_PKGINFO_FILE = YES diff --git a/src/mbc.allpole~/mbc.allpole~.xcodeproj/project.pbxproj b/src/mbc.allpole~/mbc.allpole~.xcodeproj/project.pbxproj deleted file mode 100755 index 2ec195e..0000000 --- a/src/mbc.allpole~/mbc.allpole~.xcodeproj/project.pbxproj +++ /dev/null @@ -1,222 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 44; - objects = { - -/* Begin PBXBuildFile section */ - 22CF119B0EE9A8250054F513 /* mbc.allpole~.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF119A0EE9A8250054F513 /* mbc.allpole~.c */; }; - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */; }; - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54266BCE05E6E9780000000C /* MaxAPI.framework */; }; - 7799690912700DB800554666 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7799690812700DB800554666 /* Accelerate.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = maxmspsdk.xcconfig; path = ../maxmspsdk.xcconfig; sourceTree = SOURCE_ROOT; }; - 22CF119A0EE9A8250054F513 /* mbc.allpole~.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "mbc.allpole~.c"; sourceTree = ""; }; - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; }; - 2FBBEAE508F335360078DB84 /* mbc.allpole~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbc.allpole~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; }; - 54266BCE05E6E9780000000C /* MaxAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAPI.framework; path = "../../c74support/max-includes/MaxAPI.framework"; sourceTree = SOURCE_ROOT; }; - 7799690812700DB800554666 /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = /System/Library/Frameworks/Accelerate.framework; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 2FBBEADC08F335360078DB84 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */, - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */, - 7799690912700DB800554666 /* Accelerate.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 089C166AFE841209C02AAC07 /* iterator */ = { - isa = PBXGroup; - children = ( - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */, - 08FB77ADFE841716C02AAC07 /* Source */, - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */, - 19C28FB4FE9D528D11CA2CBB /* Products */, - ); - name = iterator; - sourceTree = ""; - }; - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = { - isa = PBXGroup; - children = ( - 54266BCE05E6E9780000000C /* MaxAPI.framework */, - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */, - 7799690812700DB800554666 /* Accelerate.framework */, - ); - name = "External Frameworks and Libraries"; - sourceTree = ""; - }; - 08FB77ADFE841716C02AAC07 /* Source */ = { - isa = PBXGroup; - children = ( - 22CF119A0EE9A8250054F513 /* mbc.allpole~.c */, - ); - name = Source; - sourceTree = ""; - }; - 19C28FB4FE9D528D11CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 2FBBEAE508F335360078DB84 /* mbc.allpole~.mxo */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 2FBBEAD708F335360078DB84 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 2FBBEAD608F335360078DB84 /* max-external */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */; - buildPhases = ( - 2FBBEAD708F335360078DB84 /* Headers */, - 2FBBEAD808F335360078DB84 /* Resources */, - 2FBBEADA08F335360078DB84 /* Sources */, - 2FBBEADC08F335360078DB84 /* Frameworks */, - 2FBBEADF08F335360078DB84 /* Rez */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "max-external"; - productName = iterator; - productReference = 2FBBEAE508F335360078DB84 /* mbc.allpole~.mxo */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 089C1669FE841209C02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.allpole~" */; - compatibilityVersion = "Xcode 3.0"; - hasScannedForEncodings = 1; - mainGroup = 089C166AFE841209C02AAC07 /* iterator */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 2FBBEAD608F335360078DB84 /* max-external */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 2FBBEAD808F335360078DB84 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXRezBuildPhase section */ - 2FBBEADF08F335360078DB84 /* Rez */ = { - isa = PBXRezBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXRezBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 2FBBEADA08F335360078DB84 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 22CF119B0EE9A8250054F513 /* mbc.allpole~.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 2FBBEAD008F335010078DB84 /* Development */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Development; - }; - 2FBBEAD108F335010078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Deployment; - }; - 2FBBEAE108F335360078DB84 /* Development */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - COPY_PHASE_STRIP = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - GCC_OPTIMIZATION_LEVEL = 0; - }; - name = Development; - }; - 2FBBEAE208F335360078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - ARCHS = ( - ppc, - i386, - ); - COPY_PHASE_STRIP = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - }; - name = Deployment; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.allpole~" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAD008F335010078DB84 /* Development */, - 2FBBEAD108F335010078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; - 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAE108F335360078DB84 /* Development */, - 2FBBEAE208F335360078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; -/* End XCConfigurationList section */ - }; - rootObject = 089C1669FE841209C02AAC07 /* Project object */; -} diff --git a/src/mbc.blit~/mbc.blit~.xcodeproj/project.pbxproj b/src/mbc.blit~/mbc.blit~.xcodeproj/project.pbxproj deleted file mode 100755 index 958ab2d..0000000 --- a/src/mbc.blit~/mbc.blit~.xcodeproj/project.pbxproj +++ /dev/null @@ -1,218 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 44; - objects = { - -/* Begin PBXBuildFile section */ - 22CF119B0EE9A8250054F513 /* mbc.blit~.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF119A0EE9A8250054F513 /* mbc.blit~.c */; }; - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */; }; - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54266BCE05E6E9780000000C /* MaxAPI.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = maxmspsdk.xcconfig; path = ../maxmspsdk.xcconfig; sourceTree = SOURCE_ROOT; }; - 22CF119A0EE9A8250054F513 /* mbc.blit~.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "mbc.blit~.c"; sourceTree = ""; }; - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; }; - 2FBBEAE508F335360078DB84 /* mbc.blit~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbc.blit~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; }; - 54266BCE05E6E9780000000C /* MaxAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAPI.framework; path = "../../c74support/max-includes/MaxAPI.framework"; sourceTree = SOURCE_ROOT; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 2FBBEADC08F335360078DB84 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */, - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 089C166AFE841209C02AAC07 /* iterator */ = { - isa = PBXGroup; - children = ( - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */, - 08FB77ADFE841716C02AAC07 /* Source */, - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */, - 19C28FB4FE9D528D11CA2CBB /* Products */, - ); - name = iterator; - sourceTree = ""; - }; - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = { - isa = PBXGroup; - children = ( - 54266BCE05E6E9780000000C /* MaxAPI.framework */, - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */, - ); - name = "External Frameworks and Libraries"; - sourceTree = ""; - }; - 08FB77ADFE841716C02AAC07 /* Source */ = { - isa = PBXGroup; - children = ( - 22CF119A0EE9A8250054F513 /* mbc.blit~.c */, - ); - name = Source; - sourceTree = ""; - }; - 19C28FB4FE9D528D11CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 2FBBEAE508F335360078DB84 /* mbc.blit~.mxo */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 2FBBEAD708F335360078DB84 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 2FBBEAD608F335360078DB84 /* max-external */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */; - buildPhases = ( - 2FBBEAD708F335360078DB84 /* Headers */, - 2FBBEAD808F335360078DB84 /* Resources */, - 2FBBEADA08F335360078DB84 /* Sources */, - 2FBBEADC08F335360078DB84 /* Frameworks */, - 2FBBEADF08F335360078DB84 /* Rez */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "max-external"; - productName = iterator; - productReference = 2FBBEAE508F335360078DB84 /* mbc.blit~.mxo */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 089C1669FE841209C02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.blit~" */; - compatibilityVersion = "Xcode 3.0"; - hasScannedForEncodings = 1; - mainGroup = 089C166AFE841209C02AAC07 /* iterator */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 2FBBEAD608F335360078DB84 /* max-external */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 2FBBEAD808F335360078DB84 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXRezBuildPhase section */ - 2FBBEADF08F335360078DB84 /* Rez */ = { - isa = PBXRezBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXRezBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 2FBBEADA08F335360078DB84 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 22CF119B0EE9A8250054F513 /* mbc.blit~.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 2FBBEAD008F335010078DB84 /* Development */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Development; - }; - 2FBBEAD108F335010078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Deployment; - }; - 2FBBEAE108F335360078DB84 /* Development */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - COPY_PHASE_STRIP = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - GCC_OPTIMIZATION_LEVEL = 0; - }; - name = Development; - }; - 2FBBEAE208F335360078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - ARCHS = ( - ppc, - i386, - ); - COPY_PHASE_STRIP = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - }; - name = Deployment; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.blit~" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAD008F335010078DB84 /* Development */, - 2FBBEAD108F335010078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; - 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAE108F335360078DB84 /* Development */, - 2FBBEAE208F335360078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; -/* End XCConfigurationList section */ - }; - rootObject = 089C1669FE841209C02AAC07 /* Project object */; -} diff --git a/src/mbc.coeffDisp~/mbc.coeffDisp~.xcodeproj/project.pbxproj b/src/mbc.coeffDisp~/mbc.coeffDisp~.xcodeproj/project.pbxproj deleted file mode 100755 index a650fc9..0000000 --- a/src/mbc.coeffDisp~/mbc.coeffDisp~.xcodeproj/project.pbxproj +++ /dev/null @@ -1,218 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 44; - objects = { - -/* Begin PBXBuildFile section */ - 22CF119B0EE9A8250054F513 /* mbc.coeffDisp~.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF119A0EE9A8250054F513 /* mbc.coeffDisp~.c */; }; - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */; }; - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54266BCE05E6E9780000000C /* MaxAPI.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = maxmspsdk.xcconfig; path = ../maxmspsdk.xcconfig; sourceTree = SOURCE_ROOT; }; - 22CF119A0EE9A8250054F513 /* mbc.coeffDisp~.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "mbc.coeffDisp~.c"; sourceTree = ""; }; - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; }; - 2FBBEAE508F335360078DB84 /* mbc.coeffDisp~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbc.coeffDisp~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; }; - 54266BCE05E6E9780000000C /* MaxAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAPI.framework; path = "../../c74support/max-includes/MaxAPI.framework"; sourceTree = SOURCE_ROOT; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 2FBBEADC08F335360078DB84 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */, - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 089C166AFE841209C02AAC07 /* iterator */ = { - isa = PBXGroup; - children = ( - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */, - 08FB77ADFE841716C02AAC07 /* Source */, - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */, - 19C28FB4FE9D528D11CA2CBB /* Products */, - ); - name = iterator; - sourceTree = ""; - }; - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = { - isa = PBXGroup; - children = ( - 54266BCE05E6E9780000000C /* MaxAPI.framework */, - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */, - ); - name = "External Frameworks and Libraries"; - sourceTree = ""; - }; - 08FB77ADFE841716C02AAC07 /* Source */ = { - isa = PBXGroup; - children = ( - 22CF119A0EE9A8250054F513 /* mbc.coeffDisp~.c */, - ); - name = Source; - sourceTree = ""; - }; - 19C28FB4FE9D528D11CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 2FBBEAE508F335360078DB84 /* mbc.coeffDisp~.mxo */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 2FBBEAD708F335360078DB84 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 2FBBEAD608F335360078DB84 /* max-external */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */; - buildPhases = ( - 2FBBEAD708F335360078DB84 /* Headers */, - 2FBBEAD808F335360078DB84 /* Resources */, - 2FBBEADA08F335360078DB84 /* Sources */, - 2FBBEADC08F335360078DB84 /* Frameworks */, - 2FBBEADF08F335360078DB84 /* Rez */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "max-external"; - productName = iterator; - productReference = 2FBBEAE508F335360078DB84 /* mbc.coeffDisp~.mxo */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 089C1669FE841209C02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.coeffDisp~" */; - compatibilityVersion = "Xcode 3.0"; - hasScannedForEncodings = 1; - mainGroup = 089C166AFE841209C02AAC07 /* iterator */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 2FBBEAD608F335360078DB84 /* max-external */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 2FBBEAD808F335360078DB84 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXRezBuildPhase section */ - 2FBBEADF08F335360078DB84 /* Rez */ = { - isa = PBXRezBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXRezBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 2FBBEADA08F335360078DB84 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 22CF119B0EE9A8250054F513 /* mbc.coeffDisp~.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 2FBBEAD008F335010078DB84 /* Development */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Development; - }; - 2FBBEAD108F335010078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Deployment; - }; - 2FBBEAE108F335360078DB84 /* Development */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - COPY_PHASE_STRIP = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - GCC_OPTIMIZATION_LEVEL = 0; - }; - name = Development; - }; - 2FBBEAE208F335360078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - ARCHS = ( - ppc, - i386, - ); - COPY_PHASE_STRIP = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - }; - name = Deployment; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.coeffDisp~" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAD008F335010078DB84 /* Development */, - 2FBBEAD108F335010078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; - 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAE108F335360078DB84 /* Development */, - 2FBBEAE208F335360078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; -/* End XCConfigurationList section */ - }; - rootObject = 089C1669FE841209C02AAC07 /* Project object */; -} diff --git a/src/mbc.errfilt~/mbc.errfilt~.xcodeproj/project.pbxproj b/src/mbc.errfilt~/mbc.errfilt~.xcodeproj/project.pbxproj deleted file mode 100755 index 8e49d3f..0000000 --- a/src/mbc.errfilt~/mbc.errfilt~.xcodeproj/project.pbxproj +++ /dev/null @@ -1,222 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 44; - objects = { - -/* Begin PBXBuildFile section */ - 22CF119B0EE9A8250054F513 /* errfilt~.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF119A0EE9A8250054F513 /* errfilt~.c */; }; - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */; }; - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54266BCE05E6E9780000000C /* MaxAPI.framework */; }; - 77CD4C2E127000B700AA9073 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 77CD4C2D127000B700AA9073 /* Accelerate.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = maxmspsdk.xcconfig; path = ../maxmspsdk.xcconfig; sourceTree = SOURCE_ROOT; }; - 22CF119A0EE9A8250054F513 /* errfilt~.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "errfilt~.c"; sourceTree = ""; }; - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; }; - 2FBBEAE508F335360078DB84 /* mbc.errfilt~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbc.errfilt~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; }; - 54266BCE05E6E9780000000C /* MaxAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAPI.framework; path = "../../c74support/max-includes/MaxAPI.framework"; sourceTree = SOURCE_ROOT; }; - 77CD4C2D127000B700AA9073 /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = /System/Library/Frameworks/Accelerate.framework; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 2FBBEADC08F335360078DB84 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */, - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */, - 77CD4C2E127000B700AA9073 /* Accelerate.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 089C166AFE841209C02AAC07 /* iterator */ = { - isa = PBXGroup; - children = ( - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */, - 08FB77ADFE841716C02AAC07 /* Source */, - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */, - 19C28FB4FE9D528D11CA2CBB /* Products */, - ); - name = iterator; - sourceTree = ""; - }; - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = { - isa = PBXGroup; - children = ( - 54266BCE05E6E9780000000C /* MaxAPI.framework */, - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */, - 77CD4C2D127000B700AA9073 /* Accelerate.framework */, - ); - name = "External Frameworks and Libraries"; - sourceTree = ""; - }; - 08FB77ADFE841716C02AAC07 /* Source */ = { - isa = PBXGroup; - children = ( - 22CF119A0EE9A8250054F513 /* errfilt~.c */, - ); - name = Source; - sourceTree = ""; - }; - 19C28FB4FE9D528D11CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 2FBBEAE508F335360078DB84 /* mbc.errfilt~.mxo */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 2FBBEAD708F335360078DB84 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 2FBBEAD608F335360078DB84 /* max-external */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */; - buildPhases = ( - 2FBBEAD708F335360078DB84 /* Headers */, - 2FBBEAD808F335360078DB84 /* Resources */, - 2FBBEADA08F335360078DB84 /* Sources */, - 2FBBEADC08F335360078DB84 /* Frameworks */, - 2FBBEADF08F335360078DB84 /* Rez */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "max-external"; - productName = iterator; - productReference = 2FBBEAE508F335360078DB84 /* mbc.errfilt~.mxo */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 089C1669FE841209C02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.errfilt~" */; - compatibilityVersion = "Xcode 3.0"; - hasScannedForEncodings = 1; - mainGroup = 089C166AFE841209C02AAC07 /* iterator */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 2FBBEAD608F335360078DB84 /* max-external */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 2FBBEAD808F335360078DB84 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXRezBuildPhase section */ - 2FBBEADF08F335360078DB84 /* Rez */ = { - isa = PBXRezBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXRezBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 2FBBEADA08F335360078DB84 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 22CF119B0EE9A8250054F513 /* errfilt~.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 2FBBEAD008F335010078DB84 /* Development */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Development; - }; - 2FBBEAD108F335010078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Deployment; - }; - 2FBBEAE108F335360078DB84 /* Development */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - COPY_PHASE_STRIP = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - GCC_OPTIMIZATION_LEVEL = 0; - }; - name = Development; - }; - 2FBBEAE208F335360078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - ARCHS = ( - ppc, - i386, - ); - COPY_PHASE_STRIP = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - }; - name = Deployment; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.errfilt~" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAD008F335010078DB84 /* Development */, - 2FBBEAD108F335010078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; - 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAE108F335360078DB84 /* Development */, - 2FBBEAE208F335360078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; -/* End XCConfigurationList section */ - }; - rootObject = 089C1669FE841209C02AAC07 /* Project object */; -} diff --git a/src/mbc.lpc~/mbc.lpc~.xcodeproj/project.pbxproj b/src/mbc.lpc~/mbc.lpc~.xcodeproj/project.pbxproj deleted file mode 100755 index 9c2ac4c..0000000 --- a/src/mbc.lpc~/mbc.lpc~.xcodeproj/project.pbxproj +++ /dev/null @@ -1,222 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 44; - objects = { - -/* Begin PBXBuildFile section */ - 22CF119B0EE9A8250054F513 /* mbc.lpc~.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF119A0EE9A8250054F513 /* mbc.lpc~.c */; }; - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */; }; - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54266BCE05E6E9780000000C /* MaxAPI.framework */; }; - 7799693D1270197600554666 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7799693C1270197600554666 /* Accelerate.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = maxmspsdk.xcconfig; path = ../maxmspsdk.xcconfig; sourceTree = SOURCE_ROOT; }; - 22CF119A0EE9A8250054F513 /* mbc.lpc~.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "mbc.lpc~.c"; sourceTree = ""; }; - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; }; - 2FBBEAE508F335360078DB84 /* mbc.lpc~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbc.lpc~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; }; - 54266BCE05E6E9780000000C /* MaxAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAPI.framework; path = "../../c74support/max-includes/MaxAPI.framework"; sourceTree = SOURCE_ROOT; }; - 7799693C1270197600554666 /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = /System/Library/Frameworks/Accelerate.framework; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 2FBBEADC08F335360078DB84 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */, - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */, - 7799693D1270197600554666 /* Accelerate.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 089C166AFE841209C02AAC07 /* iterator */ = { - isa = PBXGroup; - children = ( - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */, - 08FB77ADFE841716C02AAC07 /* Source */, - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */, - 19C28FB4FE9D528D11CA2CBB /* Products */, - ); - name = iterator; - sourceTree = ""; - }; - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = { - isa = PBXGroup; - children = ( - 54266BCE05E6E9780000000C /* MaxAPI.framework */, - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */, - 7799693C1270197600554666 /* Accelerate.framework */, - ); - name = "External Frameworks and Libraries"; - sourceTree = ""; - }; - 08FB77ADFE841716C02AAC07 /* Source */ = { - isa = PBXGroup; - children = ( - 22CF119A0EE9A8250054F513 /* mbc.lpc~.c */, - ); - name = Source; - sourceTree = ""; - }; - 19C28FB4FE9D528D11CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 2FBBEAE508F335360078DB84 /* mbc.lpc~.mxo */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 2FBBEAD708F335360078DB84 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 2FBBEAD608F335360078DB84 /* max-external */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */; - buildPhases = ( - 2FBBEAD708F335360078DB84 /* Headers */, - 2FBBEAD808F335360078DB84 /* Resources */, - 2FBBEADA08F335360078DB84 /* Sources */, - 2FBBEADC08F335360078DB84 /* Frameworks */, - 2FBBEADF08F335360078DB84 /* Rez */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "max-external"; - productName = iterator; - productReference = 2FBBEAE508F335360078DB84 /* mbc.lpc~.mxo */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 089C1669FE841209C02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.lpc~" */; - compatibilityVersion = "Xcode 3.0"; - hasScannedForEncodings = 1; - mainGroup = 089C166AFE841209C02AAC07 /* iterator */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 2FBBEAD608F335360078DB84 /* max-external */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 2FBBEAD808F335360078DB84 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXRezBuildPhase section */ - 2FBBEADF08F335360078DB84 /* Rez */ = { - isa = PBXRezBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXRezBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 2FBBEADA08F335360078DB84 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 22CF119B0EE9A8250054F513 /* mbc.lpc~.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 2FBBEAD008F335010078DB84 /* Development */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Development; - }; - 2FBBEAD108F335010078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Deployment; - }; - 2FBBEAE108F335360078DB84 /* Development */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - COPY_PHASE_STRIP = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - GCC_OPTIMIZATION_LEVEL = 0; - }; - name = Development; - }; - 2FBBEAE208F335360078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - ARCHS = ( - ppc, - i386, - ); - COPY_PHASE_STRIP = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - }; - name = Deployment; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.lpc~" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAD008F335010078DB84 /* Development */, - 2FBBEAD108F335010078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; - 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAE108F335360078DB84 /* Development */, - 2FBBEAE208F335360078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; -/* End XCConfigurationList section */ - }; - rootObject = 089C1669FE841209C02AAC07 /* Project object */; -} diff --git a/src/mbc.pitch~/mbc.pitch~.xcodeproj/project.pbxproj b/src/mbc.pitch~/mbc.pitch~.xcodeproj/project.pbxproj deleted file mode 100755 index 9844f9d..0000000 --- a/src/mbc.pitch~/mbc.pitch~.xcodeproj/project.pbxproj +++ /dev/null @@ -1,222 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 44; - objects = { - -/* Begin PBXBuildFile section */ - 22CF119B0EE9A8250054F513 /* mbc.pitch~.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF119A0EE9A8250054F513 /* mbc.pitch~.c */; }; - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */; }; - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54266BCE05E6E9780000000C /* MaxAPI.framework */; }; - 779969F0127023D400554666 /* Accelerate.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 779969EF127023D400554666 /* Accelerate.framework */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = maxmspsdk.xcconfig; path = ../maxmspsdk.xcconfig; sourceTree = SOURCE_ROOT; }; - 22CF119A0EE9A8250054F513 /* mbc.pitch~.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = "mbc.pitch~.c"; sourceTree = ""; }; - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; }; - 2FBBEAE508F335360078DB84 /* mbc.pitch~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbc.pitch~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; }; - 54266BCE05E6E9780000000C /* MaxAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAPI.framework; path = "../../c74support/max-includes/MaxAPI.framework"; sourceTree = SOURCE_ROOT; }; - 779969EF127023D400554666 /* Accelerate.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Accelerate.framework; path = /System/Library/Frameworks/Accelerate.framework; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 2FBBEADC08F335360078DB84 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 2FBBEADE08F335360078DB84 /* MaxAPI.framework in Frameworks */, - 22CF119E0EE9A82E0054F513 /* MaxAudioAPI.framework in Frameworks */, - 779969F0127023D400554666 /* Accelerate.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 089C166AFE841209C02AAC07 /* iterator */ = { - isa = PBXGroup; - children = ( - 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */, - 08FB77ADFE841716C02AAC07 /* Source */, - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */, - 19C28FB4FE9D528D11CA2CBB /* Products */, - ); - name = iterator; - sourceTree = ""; - }; - 089C1671FE841209C02AAC07 /* External Frameworks and Libraries */ = { - isa = PBXGroup; - children = ( - 54266BCE05E6E9780000000C /* MaxAPI.framework */, - 22CF119D0EE9A82E0054F513 /* MaxAudioAPI.framework */, - 779969EF127023D400554666 /* Accelerate.framework */, - ); - name = "External Frameworks and Libraries"; - sourceTree = ""; - }; - 08FB77ADFE841716C02AAC07 /* Source */ = { - isa = PBXGroup; - children = ( - 22CF119A0EE9A8250054F513 /* mbc.pitch~.c */, - ); - name = Source; - sourceTree = ""; - }; - 19C28FB4FE9D528D11CA2CBB /* Products */ = { - isa = PBXGroup; - children = ( - 2FBBEAE508F335360078DB84 /* mbc.pitch~.mxo */, - ); - name = Products; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 2FBBEAD708F335360078DB84 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 2FBBEAD608F335360078DB84 /* max-external */ = { - isa = PBXNativeTarget; - buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */; - buildPhases = ( - 2FBBEAD708F335360078DB84 /* Headers */, - 2FBBEAD808F335360078DB84 /* Resources */, - 2FBBEADA08F335360078DB84 /* Sources */, - 2FBBEADC08F335360078DB84 /* Frameworks */, - 2FBBEADF08F335360078DB84 /* Rez */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "max-external"; - productName = iterator; - productReference = 2FBBEAE508F335360078DB84 /* mbc.pitch~.mxo */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 089C1669FE841209C02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.pitch~" */; - compatibilityVersion = "Xcode 3.0"; - hasScannedForEncodings = 1; - mainGroup = 089C166AFE841209C02AAC07 /* iterator */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 2FBBEAD608F335360078DB84 /* max-external */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 2FBBEAD808F335360078DB84 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXRezBuildPhase section */ - 2FBBEADF08F335360078DB84 /* Rez */ = { - isa = PBXRezBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXRezBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 2FBBEADA08F335360078DB84 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 22CF119B0EE9A8250054F513 /* mbc.pitch~.c in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 2FBBEAD008F335010078DB84 /* Development */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Development; - }; - 2FBBEAD108F335010078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - buildSettings = { - }; - name = Deployment; - }; - 2FBBEAE108F335360078DB84 /* Development */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - COPY_PHASE_STRIP = NO; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - GCC_OPTIMIZATION_LEVEL = 0; - }; - name = Development; - }; - 2FBBEAE208F335360078DB84 /* Deployment */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 22CF10220EE984600054F513 /* maxmspsdk.xcconfig */; - buildSettings = { - ARCHS = ( - ppc, - i386, - ); - COPY_PHASE_STRIP = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "\"$(SRCROOT)/../../c74support/msp-includes\"", - ); - }; - name = Deployment; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbc.pitch~" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAD008F335010078DB84 /* Development */, - 2FBBEAD108F335010078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; - 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2FBBEAE108F335360078DB84 /* Development */, - 2FBBEAE208F335360078DB84 /* Deployment */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Development; - }; -/* End XCConfigurationList section */ - }; - rootObject = 089C1669FE841209C02AAC07 /* Project object */; -}