├── .gitignore
├── .gitmodules
├── Info.plist
├── README.md
├── common.props
├── common.xcconfig
└── examples
├── duplicate.py
├── gitignore_template
├── mbmaxc
├── .gitignore
├── bin
│ └── mbmaxc.maxhelp
├── mbmaxc.c
├── mbmaxc.def
├── mbmaxc.props
├── mbmaxc.sln
├── mbmaxc.vcxproj
├── mbmaxc.vcxproj.filters
├── mbmaxc.xcconfig
└── mbmaxc.xcodeproj
│ ├── project.pbxproj
│ └── xcshareddata
│ └── xcschemes
│ └── max-external.xcscheme
├── mbmaxcpp
├── .gitignore
├── bin
│ └── mbmaxcpp.maxhelp
├── mbmaxcpp.cpp
├── mbmaxcpp.def
├── mbmaxcpp.props
├── mbmaxcpp.sln
├── mbmaxcpp.vcxproj
├── mbmaxcpp.vcxproj.filters
├── mbmaxcpp.xcconfig
└── mbmaxcpp.xcodeproj
│ └── project.pbxproj
├── mbmspc
├── .gitignore
├── bin
│ └── mbmspc.maxhelp
├── mbmspc.c
├── mbmspc.def
├── mbmspc.props
├── mbmspc.sln
├── mbmspc.vcxproj
├── mbmspc.vcxproj.filters
├── mbmspc.xcconfig
└── mbmspc.xcodeproj
│ └── project.pbxproj
└── mbmspcpp
├── .gitignore
├── bin
└── mbmspcpp.maxhelp
├── mbmspcpp.cpp
├── mbmspcpp.def
├── mbmspcpp.props
├── mbmspcpp.sln
├── mbmspcpp.vcxproj
├── mbmspcpp.vcxproj.filters
├── mbmspcpp.xcconfig
└── mbmspcpp.xcodeproj
├── oli.pbxuser
└── project.pbxproj
/.gitignore:
--------------------------------------------------------------------------------
1 | *.mxo
2 | *.mxe
3 | *.mxe64
4 |
5 | /projects/
6 | examples/*/*.xcodeproj/xcuserdata/*
7 | examples/*/build*
8 | *.pbxuser
9 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "max-sdk"]
2 | path = max-sdk
3 | url = https://github.com/Cycling74/max-sdk.git
4 | [submodule "maxcpp"]
5 | path = maxcpp
6 | url = https://github.com/grrrwaaa/maxcpp.git
7 |
--------------------------------------------------------------------------------
/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | English
7 | CFBundleExecutable
8 | ${PRODUCT_NAME}
9 | CFBundleIconFile
10 |
11 | CFBundleIdentifier
12 | $(PRODUCT_BUNDLE_IDENTIFIER)
13 | CFBundleInfoDictionaryVersion
14 | ${PRODUCT_VERSION}
15 | CFBundleLongVersionString
16 | ${PRODUCT_NAME} ${PRODUCT_VERSION}, Copyright ${YEAR} ${DEVELOPER}
17 | CFBundlePackageType
18 | iLaX
19 | CFBundleShortVersionString
20 | ${PRODUCT_VERSION}
21 | CFBundleSignature
22 | max2
23 | CFBundleVersion
24 | ${PRODUCT_VERSION}
25 | CSResourcesFileMapped
26 |
27 |
28 |
29 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ARCHIVED - use https://github.com/Cycling74/min-devkit instead
2 |
3 | maxbuild v-0-3
4 | ================
5 |
6 | Oli Larkin, 2009-2016
7 | York, UK
8 |
9 |
10 | a folder structure and IDE projects for building cross platform Max MSP externals. It includes a python script for
11 | rapidly cloning a project, doing a find and replace on strings in filenames and inside the source code itself
12 |
13 | IDE projects are for MSVS2010 and Xcode7
14 |
15 | It includes submodules for the Max SDK and for Graham Wakefield's MaxCPP, so when you check out the project, you may want to do it like this in order to checkout the submodules at the same time.
16 |
17 | git clone --recursive https://github.com/olilarkin/maxbuild.git
18 |
19 | after cloning the repository you can cd to /examples
20 |
21 | run ./duplicate.py mbmaxcpp mynewmaxexternal to duplicate (on windows you may need to invoke python.exe)
22 |
--------------------------------------------------------------------------------
/common.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(ProjectDir)..\..\max-sdk\c74support\
5 | $(C74SUPPORT)max-includes;$(C74SUPPORT)msp-includes;$(C74SUPPORT)jit-includes
6 | $(C74SUPPORT)max-includes\x64;$(C74SUPPORT)msp-includes\x64;$(C74SUPPORT)jit-includes\x64
7 |
8 |
9 | <_ProjectFileVersion>10.0.40219.1
10 | $(ProjectDir)bin\
11 | $(ProjectDir)build-win\$(Configuration)_$(PlatformName)\$(ProjectName)\
12 | false
13 |
14 |
15 |
16 | MaxAPI.lib;MaxAudio.lib;jitlib.lib;%(AdditionalDependencies)
17 |
18 |
19 | VER_TARGETNAME=\"$(TargetName)\";%(PreprocessorDefinitions)
20 |
21 |
22 | _CRT_SECURE_NO_WARNINGS;%(PreprocessorDefinitions)
23 |
24 |
25 | $(IntDir)$(TargetName).manifest
26 |
27 |
28 |
29 |
30 | $(C74SUPPORT)
31 |
32 |
33 | $(LIBx86)
34 |
35 |
36 | $(LIBx64)
37 |
38 |
39 |
--------------------------------------------------------------------------------
/common.xcconfig:
--------------------------------------------------------------------------------
1 | #include "max-sdk/source/maxmspsdk.xcconfig"
2 | C74SUPPORT = $(SRCROOT)/../../max-sdk/source/c74support
3 | DSTROOT = /
4 | SYMROOT = $(SRCROOT)/build-mac
5 | INSTALL_PATH = $(SRCROOT)/bin
6 |
7 | MACOSX_DEPLOYMENT_TARGET = 10.7
8 |
9 | BUNDLE_DEVELOPER = OliLarkin
10 | DEVELOPER = Oli Larkin
11 |
--------------------------------------------------------------------------------
/examples/duplicate.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python
2 |
3 | # Python shell script for Duplicating Max External Projects
4 |
5 | from __future__ import generators
6 |
7 | import fileinput, glob, string, sys, os, re, uuid
8 | from shutil import copy, copytree, ignore_patterns, rmtree
9 | from os.path import join
10 |
11 | VERSION = "0.1.0"
12 |
13 | # binary files that we don't want to do find and replace inside
14 | FILTERED_FILE_EXTENSIONS = [".mxo", ".mxe",".ico",".icns", ".pdf", ".png", ".zip", ".exe", ".wav", ".aif"]
15 |
16 | def checkdirname(name, searchproject):
17 | "check if directory name matches with the given pattern"
18 | print ""
19 | if name == searchproject:
20 | # if name == searchproject + ".xcodeproj":
21 | return True
22 | else:
23 | return False
24 |
25 | def replacestrs(filename, s, r):
26 | files = glob.glob(filename)
27 |
28 | for line in fileinput.input(files,inplace=1):
29 | string.find(line, s)
30 | line = line.replace(s, r)
31 | sys.stdout.write(line)
32 |
33 | def replacestrsChop(filename, s, r):
34 | files = glob.glob(filename)
35 |
36 | for line in fileinput.input(files,inplace=1):
37 | if(line.startswith(s)):
38 | line = r + "\n"
39 | sys.stdout.write(line)
40 |
41 | def dirwalk(dir, searchproject, replaceproject):
42 | for f in os.listdir(dir):
43 | fullpath = os.path.join(dir, f)
44 |
45 | if os.path.isdir(fullpath) and not os.path.islink(fullpath):
46 | if checkdirname(f, searchproject + ".xcodeproj"):
47 | os.rename(fullpath, os.path.join(dir, replaceproject + ".xcodeproj"))
48 | fullpath = os.path.join(dir, replaceproject + ".xcodeproj")
49 |
50 | print 'recursing in main xcode project directory: '
51 | for x in dirwalk(fullpath, searchproject, replaceproject):
52 | yield x
53 | elif (f == "bin"):
54 | print 'recursing in bin directory: '
55 | for x in dirwalk(fullpath, searchproject, replaceproject):
56 | yield x
57 |
58 | if os.path.isfile(fullpath):
59 | tabstring = ""
60 | #for tab in range(0,tabs):
61 | # tabstring += "\t"
62 |
63 | filename = os.path.basename(fullpath)
64 | newfilename = filename.replace(searchproject, replaceproject)
65 | base, extension = os.path.splitext(filename)
66 |
67 | if (not(extension in FILTERED_FILE_EXTENSIONS)):
68 | print tabstring + 'Replacing project name strings in file', filename
69 | replacestrs(fullpath, searchproject, replaceproject)
70 |
71 | print tabstring + 'Replacing captitalized project name strings in file', filename
72 | replacestrs(fullpath, searchproject.upper(), replaceproject.upper())
73 | else:
74 | print tabstring + 'NOT replacing name strings in file', filename
75 |
76 | if filename != newfilename:
77 | print tabstring + 'Renaming file ' + filename + ' to ' + newfilename
78 | os.rename(fullpath, os.path.join(dir, newfilename))
79 |
80 | yield f, fullpath
81 | else:
82 | yield f, fullpath
83 |
84 | def main():
85 | global VERSION
86 | print "\nMax Project Duplicator v" + VERSION + " by Oli Larkin ------------------------------\n"
87 |
88 | if len(sys.argv) != 3:
89 | print "Usage: duplicate.py inputprojectname outputprojectname",
90 | sys.exit(1)
91 | else:
92 | input=sys.argv[1]
93 | output=sys.argv[2]
94 |
95 | if ' ' in input:
96 | print "error: input project name has spaces",
97 | sys.exit(1)
98 |
99 | if ' ' in output:
100 | print "error: output project name has spaces",
101 | sys.exit(1)
102 |
103 | # remove a trailing slash if it exists
104 | if input[-1:] == "/":
105 | input = input[0:-1]
106 |
107 | if output[-1:] == "/":
108 | output = output[0:-1]
109 |
110 | #check that the folders are OK
111 | if os.path.isdir(input) == False:
112 | print "error: input project not found",
113 | sys.exit(1)
114 |
115 | if os.path.isdir(output):
116 | print "error: output folder allready exists",
117 | sys.exit(1)
118 |
119 | print "copying " + input + " folder to " + output
120 | copytree(input, output, ignore=ignore_patterns('*.mxo', '*.mxe', '*.exe', '*.dmg', '*.pkg', '*.mpkg', '*.svn', '*.ncb', '*.suo', '*sdf', 'ipch', 'build-*', '*.layout', '*.depend', '.DS_Store', 'xcuserdata*' ))
121 | cpath = os.path.join(os.getcwd(), output)
122 |
123 | #replace manufacturer name strings
124 | for dir in dirwalk(cpath, input, output):
125 | pass
126 |
127 | print "\ncopying gitignore template into project folder"
128 |
129 | copy('gitignore_template', output + "/.gitignore")
130 |
131 | if __name__ == '__main__':
132 | main()
--------------------------------------------------------------------------------
/examples/gitignore_template:
--------------------------------------------------------------------------------
1 | *.exe
2 | *.sdf
3 | *.opensdf
4 | *.zip
5 | *.suo
6 | *.ncb
7 | *.vcproj.*
8 | *.pkg
9 | *.dmg
10 | *.depend
11 | *.layout
12 | *.mode1v3
13 | *.db
14 | *.LSOverride
15 | *.xcworkspace
16 | *.xcuserdata
17 | *.xcschememanagement.plist
18 | build-*
19 | ipch/*
20 | gui/*
21 |
22 | Icon?
23 | .DS_Stor*
--------------------------------------------------------------------------------
/examples/mbmaxc/.gitignore:
--------------------------------------------------------------------------------
1 | *.exe
2 | *.sdf
3 | *.opensdf
4 | *.zip
5 | *.suo
6 | *.ncb
7 | *.vcproj.*
8 | *.pkg
9 | *.dmg
10 | *.depend
11 | *.layout
12 | *.mode1v3
13 | *.db
14 | *.LSOverride
15 | *.xcworkspace
16 | *.xcuserdata
17 | *.xcschememanagement.plist
18 | build-*
19 | ipch/*
20 | gui/*
21 |
22 | Icon?
23 | .DS_Stor*
--------------------------------------------------------------------------------
/examples/mbmaxc/bin/mbmaxc.maxhelp:
--------------------------------------------------------------------------------
1 | {
2 | "patcher" : {
3 | "fileversion" : 1,
4 | "appversion" : {
5 | "major" : 6,
6 | "minor" : 1,
7 | "revision" : 6,
8 | "architecture" : "x86"
9 | }
10 | ,
11 | "rect" : [ 267.0, 142.0, 590.0, 324.0 ],
12 | "bglocked" : 0,
13 | "openinpresentation" : 0,
14 | "default_fontsize" : 12.0,
15 | "default_fontface" : 0,
16 | "default_fontname" : "Arial",
17 | "gridonopen" : 0,
18 | "gridsize" : [ 10.0, 10.0 ],
19 | "gridsnaponopen" : 0,
20 | "statusbarvisible" : 2,
21 | "toolbarvisible" : 1,
22 | "boxanimatetime" : 200,
23 | "imprint" : 0,
24 | "enablehscroll" : 1,
25 | "enablevscroll" : 1,
26 | "devicewidth" : 0.0,
27 | "description" : "",
28 | "digest" : "",
29 | "tags" : "",
30 | "boxes" : [ {
31 | "box" : {
32 | "fontface" : 3,
33 | "fontname" : "Arial",
34 | "fontsize" : 20.871338,
35 | "frgb" : 0.0,
36 | "id" : "obj-110",
37 | "maxclass" : "comment",
38 | "numinlets" : 1,
39 | "numoutlets" : 0,
40 | "patching_rect" : [ 15.0, 13.0, 566.0, 30.0 ],
41 | "text" : "mb.maxc",
42 | "varname" : "autohelp_top_title"
43 | }
44 |
45 | }
46 | , {
47 | "box" : {
48 | "fontname" : "Arial",
49 | "fontsize" : 12.754705,
50 | "frgb" : 0.0,
51 | "id" : "obj-111",
52 | "maxclass" : "comment",
53 | "numinlets" : 1,
54 | "numoutlets" : 0,
55 | "patching_rect" : [ 15.0, 45.0, 566.0, 21.0 ],
56 | "text" : "info about this object",
57 | "varname" : "autohelp_top_digest"
58 | }
59 |
60 | }
61 | , {
62 | "box" : {
63 | "fontname" : "Arial",
64 | "fontsize" : 12.0,
65 | "id" : "obj-8",
66 | "maxclass" : "flonum",
67 | "numinlets" : 1,
68 | "numoutlets" : 2,
69 | "outlettype" : [ "float", "bang" ],
70 | "parameter_enable" : 0,
71 | "patching_rect" : [ 340.0, 120.0, 50.0, 20.0 ]
72 | }
73 |
74 | }
75 | , {
76 | "box" : {
77 | "fontname" : "Arial",
78 | "fontsize" : 12.0,
79 | "id" : "obj-5",
80 | "maxclass" : "message",
81 | "numinlets" : 2,
82 | "numoutlets" : 1,
83 | "outlettype" : [ "" ],
84 | "patching_rect" : [ 120.0, 130.0, 63.0, 18.0 ],
85 | "text" : "0. 5. hello"
86 | }
87 |
88 | }
89 | , {
90 | "box" : {
91 | "fontname" : "Arial",
92 | "fontsize" : 12.0,
93 | "id" : "obj-7",
94 | "maxclass" : "flonum",
95 | "numinlets" : 1,
96 | "numoutlets" : 2,
97 | "outlettype" : [ "float", "bang" ],
98 | "parameter_enable" : 0,
99 | "patching_rect" : [ 260.0, 120.0, 50.0, 20.0 ]
100 | }
101 |
102 | }
103 | , {
104 | "box" : {
105 | "fontname" : "Arial",
106 | "fontsize" : 12.0,
107 | "id" : "obj-1",
108 | "maxclass" : "newobj",
109 | "numinlets" : 1,
110 | "numoutlets" : 1,
111 | "outlettype" : [ "" ],
112 | "patching_rect" : [ 204.0, 200.0, 56.0, 20.0 ],
113 | "text" : "mbmaxc"
114 | }
115 |
116 | }
117 | , {
118 | "box" : {
119 | "fontname" : "Arial",
120 | "fontsize" : 12.0,
121 | "id" : "obj-3",
122 | "maxclass" : "flonum",
123 | "numinlets" : 1,
124 | "numoutlets" : 2,
125 | "outlettype" : [ "float", "bang" ],
126 | "parameter_enable" : 0,
127 | "patching_rect" : [ 204.0, 230.0, 77.0, 20.0 ]
128 | }
129 |
130 | }
131 | , {
132 | "box" : {
133 | "id" : "obj-2",
134 | "maxclass" : "button",
135 | "numinlets" : 1,
136 | "numoutlets" : 1,
137 | "outlettype" : [ "bang" ],
138 | "patching_rect" : [ 204.0, 124.0, 20.0, 20.0 ]
139 | }
140 |
141 | }
142 | , {
143 | "box" : {
144 | "fontname" : "Arial",
145 | "fontsize" : 12.0,
146 | "id" : "obj-4",
147 | "maxclass" : "message",
148 | "numinlets" : 2,
149 | "numoutlets" : 1,
150 | "outlettype" : [ "" ],
151 | "patching_rect" : [ 340.0, 150.0, 70.0, 18.0 ],
152 | "text" : "myvalue $1"
153 | }
154 |
155 | }
156 | , {
157 | "box" : {
158 | "background" : 1,
159 | "bgcolor" : [ 1.0, 0.701961, 0.0, 1.0 ],
160 | "grad1" : [ 0.86, 0.86, 0.75, 1.0 ],
161 | "grad2" : [ 0.78, 0.84, 0.86, 0.7 ],
162 | "id" : "obj-114",
163 | "maxclass" : "panel",
164 | "numinlets" : 1,
165 | "numoutlets" : 0,
166 | "patching_rect" : [ 10.0, 10.0, 570.0, 60.0 ],
167 | "varname" : "autohelp_top_panel"
168 | }
169 |
170 | }
171 | ],
172 | "lines" : [ {
173 | "patchline" : {
174 | "destination" : [ "obj-3", 0 ],
175 | "disabled" : 0,
176 | "hidden" : 0,
177 | "source" : [ "obj-1", 0 ]
178 | }
179 |
180 | }
181 | , {
182 | "patchline" : {
183 | "destination" : [ "obj-1", 0 ],
184 | "disabled" : 0,
185 | "hidden" : 0,
186 | "source" : [ "obj-2", 0 ]
187 | }
188 |
189 | }
190 | , {
191 | "patchline" : {
192 | "destination" : [ "obj-1", 0 ],
193 | "disabled" : 0,
194 | "hidden" : 0,
195 | "source" : [ "obj-4", 0 ]
196 | }
197 |
198 | }
199 | , {
200 | "patchline" : {
201 | "destination" : [ "obj-1", 0 ],
202 | "disabled" : 0,
203 | "hidden" : 0,
204 | "source" : [ "obj-5", 0 ]
205 | }
206 |
207 | }
208 | , {
209 | "patchline" : {
210 | "destination" : [ "obj-1", 0 ],
211 | "disabled" : 0,
212 | "hidden" : 0,
213 | "source" : [ "obj-7", 0 ]
214 | }
215 |
216 | }
217 | , {
218 | "patchline" : {
219 | "destination" : [ "obj-4", 0 ],
220 | "disabled" : 0,
221 | "hidden" : 0,
222 | "source" : [ "obj-8", 0 ]
223 | }
224 |
225 | }
226 | ],
227 | "dependency_cache" : [ {
228 | "name" : "mbmaxc.mxo",
229 | "type" : "iLaX"
230 | }
231 | ]
232 | }
233 |
234 | }
235 |
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.c:
--------------------------------------------------------------------------------
1 | #include "ext.h"
2 | #include "ext_obex.h"
3 | #include "ext_strings.h"
4 | #include "ext_common.h"
5 |
6 | typedef struct _mbmaxc
7 | {
8 | t_object c_box;
9 | void *c_outlet;
10 |
11 | double m_value;
12 | } t_mbmaxc;
13 |
14 | void* mbmaxc_new(t_symbol *s, long argc, t_atom *argv);
15 | void mbmaxc_free(t_mbmaxc* x);
16 | void mbmaxc_assist(t_mbmaxc *x, void *b, long m, long a, char *s);
17 | void mbmaxc_bang(t_mbmaxc *x);
18 | void mbmaxc_clear(t_mbmaxc *x);
19 | void mbmaxc_int(t_mbmaxc *x, long value);
20 | void mbmaxc_float(t_mbmaxc *x, double value);
21 | void mbmaxc_list(t_mbmaxc *x, t_symbol *msg, long argc, t_atom *argv);
22 |
23 | static t_class *s_mbmaxc_class = NULL;
24 |
25 | int C74_EXPORT main(void)
26 | {
27 | t_class *c = class_new("mbmaxc",
28 | (method)mbmaxc_new,
29 | (method)mbmaxc_free,
30 | sizeof(t_mbmaxc),
31 | (method)NULL,
32 | A_GIMME,
33 | 0);
34 |
35 | common_symbols_init();
36 |
37 | class_addmethod(c, (method)mbmaxc_bang, "bang", 0);
38 | class_addmethod(c, (method)mbmaxc_int, "int", A_LONG, 0);
39 | class_addmethod(c, (method)mbmaxc_float, "float", A_FLOAT,0);
40 | class_addmethod(c, (method)mbmaxc_list, "list", A_GIMME,0);
41 | class_addmethod(c, (method)mbmaxc_assist, "assist", A_CANT, 0);
42 | class_addmethod(c, (method)stdinletinfo, "inletinfo", A_CANT, 0);
43 |
44 | CLASS_ATTR_FLOAT(c, "myvalue", 0, t_mbmaxc, m_value);
45 |
46 | class_register(_sym_box, c);
47 | s_mbmaxc_class = c;
48 |
49 | return 0;
50 | }
51 |
52 | void *mbmaxc_new(t_symbol *s, long argc, t_atom *argv)
53 | {
54 | t_mbmaxc *x;
55 |
56 | x = (t_mbmaxc*)object_alloc(s_mbmaxc_class);
57 |
58 | if (x)
59 | {
60 | x->c_outlet = outlet_new(x, NULL);
61 | }
62 |
63 | return(x);
64 | }
65 |
66 | void mbmaxc_free(t_mbmaxc *x){}
67 |
68 | void mbmaxc_assist(t_mbmaxc *x, void *b, long msg, long arg, char *dst)
69 | {
70 | if (msg==1)
71 | strcpy(dst, "input");
72 | else if (msg==2)
73 | strcpy(dst, "output");
74 | }
75 |
76 | void mbmaxc_bang(t_mbmaxc *x)
77 | {
78 | post("bang");
79 | }
80 |
81 | void mbmaxc_int(t_mbmaxc *x, long value)
82 | {
83 | post("int val: %i", value);
84 | }
85 |
86 | void mbmaxc_float(t_mbmaxc *x, double value)
87 | {
88 | post("float val: %f", value);
89 | }
90 |
91 | void mbmaxc_list(t_mbmaxc *x, t_symbol *msg, long argc, t_atom *argv)
92 | {
93 | long i;
94 | t_atom *ap;
95 |
96 | post("message selector is %s", msg->s_name);
97 | post("there are %ld arguments", argc);
98 |
99 | for (i = 0, ap = argv; i < argc; i++, ap++)
100 | {
101 | switch (atom_gettype(ap)) {
102 | case A_LONG:
103 | post("%ld: %ld",i+1,atom_getlong(ap));
104 | break;
105 | case A_FLOAT:
106 | post("%ld: %.2f",i+1,atom_getfloat(ap));
107 | break;
108 | case A_SYM:
109 | post("%ld: %s",i+1, atom_getsym(ap)->s_name);
110 | break;
111 | default:
112 | post("%ld: unknown atom type (%ld)", i+1, atom_gettype(ap));
113 | break;
114 | }
115 | }
116 | }
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.def:
--------------------------------------------------------------------------------
1 | LIBRARY mbmaxc.mxe
2 |
3 | EXPORTS
4 | main
5 |
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 11.00
3 | # Visual Studio 2010
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mbmaxc", "mbmaxc.vcxproj", "{D7D2B050-0FAC-4326-89AD-C82254541416}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|Win32 = Debug|Win32
9 | Debug|x64 = Debug|x64
10 | Release|Win32 = Release|Win32
11 | Release|x64 = Release|x64
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.ActiveCfg = Debug|Win32
15 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.Build.0 = Debug|Win32
16 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.ActiveCfg = Debug|x64
17 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.Build.0 = Debug|x64
18 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.ActiveCfg = Release|Win32
19 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.Build.0 = Release|Win32
20 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.ActiveCfg = Release|x64
21 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.Build.0 = Release|x64
22 | EndGlobalSection
23 | GlobalSection(SolutionProperties) = preSolution
24 | HideSolutionNode = FALSE
25 | EndGlobalSection
26 | EndGlobal
27 |
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Debug
7 | Win32
8 |
9 |
10 | Debug
11 | x64
12 |
13 |
14 | Release
15 | Win32
16 |
17 |
18 | Release
19 | x64
20 |
21 |
22 |
23 | {D7D2B050-0FAC-4326-89AD-C82254541416}
24 |
25 |
26 |
27 | DynamicLibrary
28 | v100
29 | false
30 | MultiByte
31 | true
32 |
33 |
34 | DynamicLibrary
35 | v100
36 | false
37 | MultiByte
38 |
39 |
40 | DynamicLibrary
41 | v100
42 | false
43 | MultiByte
44 | true
45 |
46 |
47 | DynamicLibrary
48 | v100
49 | false
50 | MultiByte
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 | <_ProjectFileVersion>11.0.51106.1
82 |
83 |
84 | true
85 | .mxe
86 |
87 |
88 | true
89 | .mxe64
90 |
91 |
92 | false
93 | .mxe
94 |
95 |
96 | false
97 | .mxe64
98 |
99 |
100 |
101 | Disabled
102 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
103 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
104 | true
105 |
106 | EnableFastChecks
107 | MultiThreadedDebugDLL
108 | true
109 | true
110 |
111 |
112 | $(IntDir)$(ProjectName).pch
113 | $(IntDir)$(TargetName).asm
114 | $(IntDir)
115 | $(IntDir)$(ProjectName).pdb
116 | Level3
117 | true
118 | ProgramDatabase
119 | CompileAsCpp
120 |
121 |
122 | $(OutDir)$(ProjectName).mxe
123 | true
124 | false
125 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
126 |
127 |
128 | true
129 | $(IntDir)$(ProjectName).pdb
130 | $(IntDir)$(ProjectName).map
131 | Windows
132 | false
133 |
134 | $(IntDir)$(ProjectName).lib
135 | MachineX86
136 | $(LIBx86);%(AdditionalLibraryDirectories)
137 |
138 |
139 |
140 |
141 | Disabled
142 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
143 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
144 | true
145 |
146 | EnableFastChecks
147 | MultiThreadedDebugDLL
148 | true
149 | true
150 |
151 |
152 | $(IntDir)$(ProjectName).pch
153 | $(IntDir)$(TargetName).asm
154 | $(IntDir)
155 | $(IntDir)$(ProjectName).pdb
156 | Level3
157 | true
158 | ProgramDatabase
159 | CompileAsCpp
160 |
161 |
162 | $(OutDir)$(ProjectName).mxe64
163 | true
164 | false
165 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
166 |
167 |
168 | true
169 | $(IntDir)$(ProjectName).pdb
170 | $(IntDir)$(ProjectName).map
171 | Windows
172 | false
173 |
174 | $(IntDir)$(ProjectName).lib
175 | MachineX64
176 | $(LIBx64)
177 |
178 |
179 |
180 |
181 | MaxSpeed
182 | AnySuitable
183 | true
184 | Speed
185 | true
186 | true
187 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
188 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
189 | true
190 |
191 | MultiThreadedDLL
192 | false
193 | false
194 | StreamingSIMDExtensions2
195 |
196 | $(IntDir)$(ProjectName).pch
197 | $(IntDir)$(TargetName).asm
198 | $(IntDir)
199 | $(IntDir)$(ProjectName).pdb
200 | Level3
201 | true
202 | ProgramDatabase
203 | CompileAsCpp
204 |
205 |
206 | $(OutDir)$(ProjectName).mxe
207 | true
208 | false
209 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
210 |
211 |
212 | true
213 | $(IntDir)$(ProjectName).pdb
214 | $(IntDir)$(ProjectName).map
215 | Windows
216 | true
217 | true
218 | false
219 |
220 | $(IntDir)$(ProjectName).lib
221 | MachineX86
222 | $(LIBx86);%(AdditionalLibraryDirectories)
223 |
224 |
225 |
226 |
227 | MaxSpeed
228 | AnySuitable
229 | true
230 | Speed
231 | true
232 | true
233 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
234 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
235 | true
236 |
237 | MultiThreadedDLL
238 | false
239 | false
240 | AdvancedVectorExtensions
241 |
242 | $(IntDir)$(ProjectName).pch
243 | $(IntDir)$(TargetName).asm
244 | $(IntDir)
245 | $(IntDir)$(ProjectName).pdb
246 | Level3
247 | true
248 | ProgramDatabase
249 | CompileAsCpp
250 |
251 |
252 | $(OutDir)$(ProjectName).mxe64
253 | true
254 | false
255 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
256 |
257 |
258 | true
259 | $(IntDir)$(ProjectName).pdb
260 | $(IntDir)$(ProjectName).map
261 | Windows
262 | true
263 | true
264 | false
265 |
266 | $(IntDir)$(ProjectName).lib
267 | MachineX64
268 | $(LIBx64)
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {d16e67df-a6ce-4d5b-8951-eab150a6783c}
6 |
7 |
8 |
9 |
10 | supporting
11 |
12 |
13 | supporting
14 |
15 |
16 |
17 |
18 | supporting
19 |
20 |
21 |
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../common.xcconfig"
2 |
3 | PRODUCT_NAME = mbmaxc
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 46;
7 | objects = {
8 |
9 | /* Begin PBXBuildFile section */
10 | 22CF11AE0EE9A8840054F513 /* mbmaxc.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF11AD0EE9A8840054F513 /* mbmaxc.c */; };
11 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */ = {isa = PBXBuildFile; fileRef = 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */; };
12 | /* End PBXBuildFile section */
13 |
14 | /* Begin PBXFileReference section */
15 | 22CF11AD0EE9A8840054F513 /* mbmaxc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mbmaxc.c; sourceTree = ""; };
16 | 2FBBEAE508F335360078DB84 /* mbmaxc.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = mbmaxc.mxo; sourceTree = BUILT_PRODUCTS_DIR; };
17 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = commonsyms.c; path = "../../max-sdk/source/c74support/max-includes/common/commonsyms.c"; sourceTree = SOURCE_ROOT; };
18 | 4F9C374D1881688400A88A88 /* common.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = common.xcconfig; path = ../../common.xcconfig; sourceTree = SOURCE_ROOT; };
19 | 4F9C37511881689300A88A88 /* mbmaxc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = mbmaxc.xcconfig; sourceTree = ""; };
20 | /* End PBXFileReference section */
21 |
22 | /* Begin PBXFrameworksBuildPhase section */
23 | 2FBBEADC08F335360078DB84 /* Frameworks */ = {
24 | isa = PBXFrameworksBuildPhase;
25 | buildActionMask = 2147483647;
26 | files = (
27 | );
28 | runOnlyForDeploymentPostprocessing = 0;
29 | };
30 | /* End PBXFrameworksBuildPhase section */
31 |
32 | /* Begin PBXGroup section */
33 | 089C166AFE841209C02AAC07 /* iterator */ = {
34 | isa = PBXGroup;
35 | children = (
36 | 22CF11AD0EE9A8840054F513 /* mbmaxc.c */,
37 | 4F3927671882F05100F74074 /* supporting files */,
38 | 19C28FB4FE9D528D11CA2CBB /* Products */,
39 | );
40 | name = iterator;
41 | sourceTree = "";
42 | };
43 | 19C28FB4FE9D528D11CA2CBB /* Products */ = {
44 | isa = PBXGroup;
45 | children = (
46 | 2FBBEAE508F335360078DB84 /* mbmaxc.mxo */,
47 | );
48 | name = Products;
49 | sourceTree = "";
50 | };
51 | 4F3927671882F05100F74074 /* supporting files */ = {
52 | isa = PBXGroup;
53 | children = (
54 | 4F9C374D1881688400A88A88 /* common.xcconfig */,
55 | 4F9C37511881689300A88A88 /* mbmaxc.xcconfig */,
56 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */,
57 | );
58 | name = "supporting files";
59 | sourceTree = "";
60 | };
61 | /* End PBXGroup section */
62 |
63 | /* Begin PBXHeadersBuildPhase section */
64 | 2FBBEAD708F335360078DB84 /* Headers */ = {
65 | isa = PBXHeadersBuildPhase;
66 | buildActionMask = 2147483647;
67 | files = (
68 | );
69 | runOnlyForDeploymentPostprocessing = 0;
70 | };
71 | /* End PBXHeadersBuildPhase section */
72 |
73 | /* Begin PBXNativeTarget section */
74 | 2FBBEAD608F335360078DB84 /* max-external */ = {
75 | isa = PBXNativeTarget;
76 | buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */;
77 | buildPhases = (
78 | 2FBBEAD708F335360078DB84 /* Headers */,
79 | 2FBBEAD808F335360078DB84 /* Resources */,
80 | 2FBBEADA08F335360078DB84 /* Sources */,
81 | 2FBBEADC08F335360078DB84 /* Frameworks */,
82 | 2FBBEADF08F335360078DB84 /* Rez */,
83 | );
84 | buildRules = (
85 | );
86 | dependencies = (
87 | );
88 | name = "max-external";
89 | productName = iterator;
90 | productReference = 2FBBEAE508F335360078DB84 /* mbmaxc.mxo */;
91 | productType = "com.apple.product-type.bundle";
92 | };
93 | /* End PBXNativeTarget section */
94 |
95 | /* Begin PBXProject section */
96 | 089C1669FE841209C02AAC07 /* Project object */ = {
97 | isa = PBXProject;
98 | attributes = {
99 | LastUpgradeCheck = 0720;
100 | };
101 | buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmaxc" */;
102 | compatibilityVersion = "Xcode 3.2";
103 | developmentRegion = English;
104 | hasScannedForEncodings = 1;
105 | knownRegions = (
106 | en,
107 | );
108 | mainGroup = 089C166AFE841209C02AAC07 /* iterator */;
109 | projectDirPath = "";
110 | projectRoot = "";
111 | targets = (
112 | 2FBBEAD608F335360078DB84 /* max-external */,
113 | );
114 | };
115 | /* End PBXProject section */
116 |
117 | /* Begin PBXResourcesBuildPhase section */
118 | 2FBBEAD808F335360078DB84 /* Resources */ = {
119 | isa = PBXResourcesBuildPhase;
120 | buildActionMask = 2147483647;
121 | files = (
122 | );
123 | runOnlyForDeploymentPostprocessing = 0;
124 | };
125 | /* End PBXResourcesBuildPhase section */
126 |
127 | /* Begin PBXRezBuildPhase section */
128 | 2FBBEADF08F335360078DB84 /* Rez */ = {
129 | isa = PBXRezBuildPhase;
130 | buildActionMask = 2147483647;
131 | files = (
132 | );
133 | runOnlyForDeploymentPostprocessing = 0;
134 | };
135 | /* End PBXRezBuildPhase section */
136 |
137 | /* Begin PBXSourcesBuildPhase section */
138 | 2FBBEADA08F335360078DB84 /* Sources */ = {
139 | isa = PBXSourcesBuildPhase;
140 | buildActionMask = 2147483647;
141 | files = (
142 | 22CF11AE0EE9A8840054F513 /* mbmaxc.c in Sources */,
143 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */,
144 | );
145 | runOnlyForDeploymentPostprocessing = 0;
146 | };
147 | /* End PBXSourcesBuildPhase section */
148 |
149 | /* Begin XCBuildConfiguration section */
150 | 2FBBEAD008F335010078DB84 /* Debug */ = {
151 | isa = XCBuildConfiguration;
152 | buildSettings = {
153 | ENABLE_TESTABILITY = YES;
154 | ONLY_ACTIVE_ARCH = YES;
155 | };
156 | name = Debug;
157 | };
158 | 2FBBEAD108F335010078DB84 /* Release */ = {
159 | isa = XCBuildConfiguration;
160 | buildSettings = {
161 | };
162 | name = Release;
163 | };
164 | 2FBBEAE108F335360078DB84 /* Debug */ = {
165 | isa = XCBuildConfiguration;
166 | baseConfigurationReference = 4F9C37511881689300A88A88 /* mbmaxc.xcconfig */;
167 | buildSettings = {
168 | COMBINE_HIDPI_IMAGES = YES;
169 | COPY_PHASE_STRIP = NO;
170 | GCC_OPTIMIZATION_LEVEL = 0;
171 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
172 | PRODUCT_BUNDLE_IDENTIFIER = "com.${BUNDLE_DEVELOPER}.${PRODUCT_NAME:rfc1034identifier}";
173 | };
174 | name = Debug;
175 | };
176 | 2FBBEAE208F335360078DB84 /* Release */ = {
177 | isa = XCBuildConfiguration;
178 | baseConfigurationReference = 4F9C37511881689300A88A88 /* mbmaxc.xcconfig */;
179 | buildSettings = {
180 | COMBINE_HIDPI_IMAGES = YES;
181 | COPY_PHASE_STRIP = YES;
182 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
183 | PRODUCT_BUNDLE_IDENTIFIER = "com.${BUNDLE_DEVELOPER}.${PRODUCT_NAME:rfc1034identifier}";
184 | };
185 | name = Release;
186 | };
187 | /* End XCBuildConfiguration section */
188 |
189 | /* Begin XCConfigurationList section */
190 | 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmaxc" */ = {
191 | isa = XCConfigurationList;
192 | buildConfigurations = (
193 | 2FBBEAD008F335010078DB84 /* Debug */,
194 | 2FBBEAD108F335010078DB84 /* Release */,
195 | );
196 | defaultConfigurationIsVisible = 0;
197 | defaultConfigurationName = Release;
198 | };
199 | 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = {
200 | isa = XCConfigurationList;
201 | buildConfigurations = (
202 | 2FBBEAE108F335360078DB84 /* Debug */,
203 | 2FBBEAE208F335360078DB84 /* Release */,
204 | );
205 | defaultConfigurationIsVisible = 0;
206 | defaultConfigurationName = Release;
207 | };
208 | /* End XCConfigurationList section */
209 | };
210 | rootObject = 089C1669FE841209C02AAC07 /* Project object */;
211 | }
212 |
--------------------------------------------------------------------------------
/examples/mbmaxc/mbmaxc.xcodeproj/xcshareddata/xcschemes/max-external.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
24 |
25 |
30 |
31 |
32 |
33 |
34 |
35 |
45 |
48 |
49 |
50 |
56 |
57 |
58 |
59 |
60 |
61 |
67 |
68 |
74 |
75 |
76 |
77 |
79 |
80 |
83 |
84 |
85 |
--------------------------------------------------------------------------------
/examples/mbmaxcpp/.gitignore:
--------------------------------------------------------------------------------
1 | *.exe
2 | *.sdf
3 | *.opensdf
4 | *.zip
5 | *.suo
6 | *.ncb
7 | *.vcproj.*
8 | *.pkg
9 | *.dmg
10 | *.depend
11 | *.layout
12 | *.mode1v3
13 | *.db
14 | *.LSOverride
15 | *.xcworkspace
16 | *.xcuserdata
17 | *.xcschememanagement.plist
18 | build-*
19 | ipch/*
20 | gui/*
21 |
22 | Icon?
23 | .DS_Stor*
--------------------------------------------------------------------------------
/examples/mbmaxcpp/bin/mbmaxcpp.maxhelp:
--------------------------------------------------------------------------------
1 | {
2 | "patcher" : {
3 | "fileversion" : 1,
4 | "appversion" : {
5 | "major" : 6,
6 | "minor" : 1,
7 | "revision" : 6,
8 | "architecture" : "x86"
9 | }
10 | ,
11 | "rect" : [ 45.0, 70.0, 640.0, 506.0 ],
12 | "bglocked" : 0,
13 | "openinpresentation" : 0,
14 | "default_fontsize" : 10.0,
15 | "default_fontface" : 0,
16 | "default_fontname" : "Verdana",
17 | "gridonopen" : 0,
18 | "gridsize" : [ 10.0, 10.0 ],
19 | "gridsnaponopen" : 2,
20 | "statusbarvisible" : 2,
21 | "toolbarvisible" : 1,
22 | "boxanimatetime" : 200,
23 | "imprint" : 0,
24 | "enablehscroll" : 1,
25 | "enablevscroll" : 1,
26 | "devicewidth" : 0.0,
27 | "description" : "",
28 | "digest" : "",
29 | "tags" : "",
30 | "boxes" : [ {
31 | "box" : {
32 | "fontface" : 3,
33 | "fontname" : "Arial",
34 | "fontsize" : 20.871338,
35 | "frgb" : 0.0,
36 | "id" : "obj-110",
37 | "maxclass" : "comment",
38 | "numinlets" : 1,
39 | "numoutlets" : 0,
40 | "patching_rect" : [ 15.0, 13.0, 566.0, 30.0 ],
41 | "text" : "mbmaxcpp",
42 | "varname" : "autohelp_top_title"
43 | }
44 |
45 | }
46 | , {
47 | "box" : {
48 | "fontname" : "Arial",
49 | "fontsize" : 12.754705,
50 | "frgb" : 0.0,
51 | "id" : "obj-111",
52 | "maxclass" : "comment",
53 | "numinlets" : 1,
54 | "numoutlets" : 0,
55 | "patching_rect" : [ 15.0, 45.0, 566.0, 21.0 ],
56 | "text" : "info about this object",
57 | "varname" : "autohelp_top_digest"
58 | }
59 |
60 | }
61 | , {
62 | "box" : {
63 | "fontname" : "Arial",
64 | "fontsize" : 12.0,
65 | "id" : "obj-8",
66 | "maxclass" : "flonum",
67 | "numinlets" : 1,
68 | "numoutlets" : 2,
69 | "outlettype" : [ "float", "bang" ],
70 | "parameter_enable" : 0,
71 | "patching_rect" : [ 340.0, 120.0, 50.0, 20.0 ]
72 | }
73 |
74 | }
75 | , {
76 | "box" : {
77 | "fontname" : "Arial",
78 | "fontsize" : 12.0,
79 | "id" : "obj-5",
80 | "maxclass" : "message",
81 | "numinlets" : 2,
82 | "numoutlets" : 1,
83 | "outlettype" : [ "" ],
84 | "patching_rect" : [ 120.0, 130.0, 32.5, 18.0 ],
85 | "text" : "0.5"
86 | }
87 |
88 | }
89 | , {
90 | "box" : {
91 | "fontname" : "Arial",
92 | "fontsize" : 12.0,
93 | "id" : "obj-7",
94 | "maxclass" : "flonum",
95 | "numinlets" : 1,
96 | "numoutlets" : 2,
97 | "outlettype" : [ "float", "bang" ],
98 | "parameter_enable" : 0,
99 | "patching_rect" : [ 260.0, 120.0, 50.0, 20.0 ]
100 | }
101 |
102 | }
103 | , {
104 | "box" : {
105 | "fontname" : "Arial",
106 | "fontsize" : 12.0,
107 | "id" : "obj-1",
108 | "maxclass" : "newobj",
109 | "numinlets" : 2,
110 | "numoutlets" : 2,
111 | "outlettype" : [ "", "" ],
112 | "patching_rect" : [ 204.0, 200.0, 53.0, 20.0 ],
113 | "text" : "mbmaxcpp"
114 | }
115 |
116 | }
117 | , {
118 | "box" : {
119 | "fontname" : "Arial",
120 | "fontsize" : 12.0,
121 | "id" : "obj-3",
122 | "maxclass" : "flonum",
123 | "numinlets" : 1,
124 | "numoutlets" : 2,
125 | "outlettype" : [ "float", "bang" ],
126 | "parameter_enable" : 0,
127 | "patching_rect" : [ 204.0, 230.0, 77.0, 20.0 ]
128 | }
129 |
130 | }
131 | , {
132 | "box" : {
133 | "id" : "obj-2",
134 | "maxclass" : "button",
135 | "numinlets" : 1,
136 | "numoutlets" : 1,
137 | "outlettype" : [ "bang" ],
138 | "patching_rect" : [ 204.0, 124.0, 20.0, 20.0 ]
139 | }
140 |
141 | }
142 | , {
143 | "box" : {
144 | "fontname" : "Arial",
145 | "fontsize" : 12.0,
146 | "id" : "obj-4",
147 | "maxclass" : "message",
148 | "numinlets" : 2,
149 | "numoutlets" : 1,
150 | "outlettype" : [ "" ],
151 | "patching_rect" : [ 340.0, 150.0, 69.0, 18.0 ],
152 | "text" : "testfloat $1"
153 | }
154 |
155 | }
156 | , {
157 | "box" : {
158 | "background" : 1,
159 | "bgcolor" : [ 1.0, 0.701961, 0.0, 1.0 ],
160 | "grad1" : [ 0.86, 0.86, 0.75, 1.0 ],
161 | "grad2" : [ 0.78, 0.84, 0.86, 0.7 ],
162 | "id" : "obj-114",
163 | "maxclass" : "panel",
164 | "numinlets" : 1,
165 | "numoutlets" : 0,
166 | "patching_rect" : [ 10.0, 10.0, 570.0, 60.0 ],
167 | "varname" : "autohelp_top_panel"
168 | }
169 |
170 | }
171 | ],
172 | "lines" : [ {
173 | "patchline" : {
174 | "destination" : [ "obj-3", 0 ],
175 | "disabled" : 0,
176 | "hidden" : 0,
177 | "source" : [ "obj-1", 0 ]
178 | }
179 |
180 | }
181 | , {
182 | "patchline" : {
183 | "destination" : [ "obj-1", 0 ],
184 | "disabled" : 0,
185 | "hidden" : 0,
186 | "source" : [ "obj-2", 0 ]
187 | }
188 |
189 | }
190 | , {
191 | "patchline" : {
192 | "destination" : [ "obj-1", 0 ],
193 | "disabled" : 0,
194 | "hidden" : 0,
195 | "source" : [ "obj-4", 0 ]
196 | }
197 |
198 | }
199 | , {
200 | "patchline" : {
201 | "destination" : [ "obj-1", 0 ],
202 | "disabled" : 0,
203 | "hidden" : 0,
204 | "source" : [ "obj-5", 0 ]
205 | }
206 |
207 | }
208 | , {
209 | "patchline" : {
210 | "destination" : [ "obj-4", 0 ],
211 | "disabled" : 0,
212 | "hidden" : 0,
213 | "source" : [ "obj-8", 0 ]
214 | }
215 |
216 | }
217 | ],
218 | "dependency_cache" : [ {
219 | "name" : "mbmaxcpp.mxo",
220 | "type" : "iLaX"
221 | }
222 | ]
223 | }
224 |
225 | }
226 |
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.cpp:
--------------------------------------------------------------------------------
1 | #include "../../maxcpp/maxcpp/maxcpp6.h"
2 |
3 | class mbmaxcpp : public MaxCpp6
4 | {
5 | public:
6 | mbmaxcpp(t_symbol * sym, long ac, t_atom * av) {
7 | setupIO(2, 2);
8 | }
9 |
10 | ~mbmaxcpp() {}
11 |
12 | // methods:
13 | void bang(long inlet) {
14 | outlet_bang(m_outlets[0]);
15 | }
16 | void testfloat(long inlet, double v) {
17 | outlet_float(m_outlets[0], v);
18 | }
19 | void testint(long inlet, long v) {
20 | outlet_int(m_outlets[0], v);
21 | }
22 | void test(long inlet, t_symbol * s, long ac, t_atom * av) {
23 | outlet_anything(m_outlets[1], gensym("test"), ac, av);
24 | }
25 | };
26 |
27 | extern "C" int C74_EXPORT main(void) {
28 | // create a class with the given name:
29 | mbmaxcpp::makeMaxClass("mbmaxcpp");
30 | REGISTER_METHOD(mbmaxcpp, bang);
31 | REGISTER_METHOD_FLOAT(mbmaxcpp, testfloat);
32 | REGISTER_METHOD_LONG(mbmaxcpp, testint);
33 | REGISTER_METHOD_GIMME(mbmaxcpp, test);
34 | }
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.def:
--------------------------------------------------------------------------------
1 | LIBRARY mbmaxcpp.mxe
2 |
3 | EXPORTS
4 | main
5 |
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 11.00
3 | # Visual Studio 2010
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mbmaxcpp", "mbmaxcpp.vcxproj", "{D7D2B050-0FAC-4326-89AD-C82254541416}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|Win32 = Debug|Win32
9 | Debug|x64 = Debug|x64
10 | Release|Win32 = Release|Win32
11 | Release|x64 = Release|x64
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.ActiveCfg = Debug|Win32
15 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.Build.0 = Debug|Win32
16 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.ActiveCfg = Debug|x64
17 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.Build.0 = Debug|x64
18 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.ActiveCfg = Release|Win32
19 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.Build.0 = Release|Win32
20 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.ActiveCfg = Release|x64
21 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.Build.0 = Release|x64
22 | EndGlobalSection
23 | GlobalSection(SolutionProperties) = preSolution
24 | HideSolutionNode = FALSE
25 | EndGlobalSection
26 | EndGlobal
27 |
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Debug
7 | Win32
8 |
9 |
10 | Debug
11 | x64
12 |
13 |
14 | Release
15 | Win32
16 |
17 |
18 | Release
19 | x64
20 |
21 |
22 |
23 | {D7D2B050-0FAC-4326-89AD-C82254541416}
24 |
25 |
26 |
27 | DynamicLibrary
28 | v100
29 | false
30 | MultiByte
31 | true
32 |
33 |
34 | DynamicLibrary
35 | v100
36 | false
37 | MultiByte
38 |
39 |
40 | DynamicLibrary
41 | v100
42 | false
43 | MultiByte
44 | true
45 |
46 |
47 | DynamicLibrary
48 | v100
49 | false
50 | MultiByte
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 | <_ProjectFileVersion>11.0.51106.1
82 |
83 |
84 | true
85 | .mxe
86 |
87 |
88 | true
89 | .mxe64
90 |
91 |
92 | false
93 | .mxe
94 |
95 |
96 | false
97 | .mxe64
98 |
99 |
100 |
101 | Disabled
102 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
103 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
104 | true
105 |
106 | EnableFastChecks
107 | MultiThreadedDebugDLL
108 | true
109 | true
110 |
111 |
112 | $(IntDir)$(ProjectName).pch
113 | $(IntDir)$(TargetName).asm
114 | $(IntDir)
115 | $(IntDir)$(ProjectName).pdb
116 | Level3
117 | true
118 | ProgramDatabase
119 | CompileAsCpp
120 |
121 |
122 | $(OutDir)$(ProjectName).mxe
123 | true
124 | false
125 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
126 |
127 |
128 | true
129 | $(IntDir)$(ProjectName).pdb
130 | $(IntDir)$(ProjectName).map
131 | Windows
132 | false
133 |
134 | $(IntDir)$(ProjectName).lib
135 | MachineX86
136 | $(LIBx86);%(AdditionalLibraryDirectories)
137 |
138 |
139 |
140 |
141 | Disabled
142 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
143 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
144 | true
145 |
146 | EnableFastChecks
147 | MultiThreadedDebugDLL
148 | true
149 | true
150 |
151 |
152 | $(IntDir)$(ProjectName).pch
153 | $(IntDir)$(TargetName).asm
154 | $(IntDir)
155 | $(IntDir)$(ProjectName).pdb
156 | Level3
157 | true
158 | ProgramDatabase
159 | CompileAsCpp
160 |
161 |
162 | $(OutDir)$(ProjectName).mxe64
163 | true
164 | false
165 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
166 |
167 |
168 | true
169 | $(IntDir)$(ProjectName).pdb
170 | $(IntDir)$(ProjectName).map
171 | Windows
172 | false
173 |
174 | $(IntDir)$(ProjectName).lib
175 | MachineX64
176 | $(LIBx64)
177 |
178 |
179 |
180 |
181 | MaxSpeed
182 | AnySuitable
183 | true
184 | Speed
185 | true
186 | true
187 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
188 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
189 | true
190 |
191 | MultiThreadedDLL
192 | false
193 | false
194 | StreamingSIMDExtensions2
195 |
196 | $(IntDir)$(ProjectName).pch
197 | $(IntDir)$(TargetName).asm
198 | $(IntDir)
199 | $(IntDir)$(ProjectName).pdb
200 | Level3
201 | true
202 | ProgramDatabase
203 | CompileAsCpp
204 |
205 |
206 | $(OutDir)$(ProjectName).mxe
207 | true
208 | false
209 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
210 |
211 |
212 | true
213 | $(IntDir)$(ProjectName).pdb
214 | $(IntDir)$(ProjectName).map
215 | Windows
216 | true
217 | true
218 | false
219 |
220 | $(IntDir)$(ProjectName).lib
221 | MachineX86
222 | $(LIBx86);%(AdditionalLibraryDirectories)
223 |
224 |
225 |
226 |
227 | MaxSpeed
228 | AnySuitable
229 | true
230 | Speed
231 | true
232 | true
233 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
234 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
235 | true
236 |
237 | MultiThreadedDLL
238 | false
239 | false
240 | AdvancedVectorExtensions
241 |
242 | $(IntDir)$(ProjectName).pch
243 | $(IntDir)$(TargetName).asm
244 | $(IntDir)
245 | $(IntDir)$(ProjectName).pdb
246 | Level3
247 | true
248 | ProgramDatabase
249 | CompileAsCpp
250 |
251 |
252 | $(OutDir)$(ProjectName).mxe64
253 | true
254 | false
255 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
256 |
257 |
258 | true
259 | $(IntDir)$(ProjectName).pdb
260 | $(IntDir)$(ProjectName).map
261 | Windows
262 | true
263 | true
264 | false
265 |
266 | $(IntDir)$(ProjectName).lib
267 | MachineX64
268 | $(LIBx64)
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {d16e67df-a6ce-4d5b-8951-eab150a6783c}
6 |
7 |
8 |
9 |
10 | supporting
11 |
12 |
13 | supporting
14 |
15 |
16 |
17 |
18 | supporting
19 |
20 |
21 |
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../common.xcconfig"
2 |
3 | PRODUCT_NAME = mbmaxcpp
--------------------------------------------------------------------------------
/examples/mbmaxcpp/mbmaxcpp.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 46;
7 | objects = {
8 |
9 | /* Begin PBXBuildFile section */
10 | 22CF11AE0EE9A8840054F513 /* mbmaxcpp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 22CF11AD0EE9A8840054F513 /* mbmaxcpp.cpp */; };
11 | 4F3927611882F00700F74074 /* maxcpp6.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F3927601882F00700F74074 /* maxcpp6.h */; };
12 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */ = {isa = PBXBuildFile; fileRef = 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */; };
13 | /* End PBXBuildFile section */
14 |
15 | /* Begin PBXFileReference section */
16 | 22CF11AD0EE9A8840054F513 /* mbmaxcpp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mbmaxcpp.cpp; sourceTree = ""; };
17 | 2FBBEAE508F335360078DB84 /* mbmaxcpp.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = mbmaxcpp.mxo; sourceTree = BUILT_PRODUCTS_DIR; };
18 | 4F3927601882F00700F74074 /* maxcpp6.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = maxcpp6.h; path = ../../maxcpp/maxcpp/maxcpp6.h; sourceTree = SOURCE_ROOT; };
19 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = commonsyms.c; path = "../../max-sdk/source/c74support/max-includes/common/commonsyms.c"; sourceTree = SOURCE_ROOT; };
20 | 4F9C374D1881688400A88A88 /* common.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = common.xcconfig; path = ../../common.xcconfig; sourceTree = SOURCE_ROOT; };
21 | 4F9C37511881689300A88A88 /* mbmaxcpp.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = mbmaxcpp.xcconfig; sourceTree = ""; };
22 | /* End PBXFileReference section */
23 |
24 | /* Begin PBXFrameworksBuildPhase section */
25 | 2FBBEADC08F335360078DB84 /* Frameworks */ = {
26 | isa = PBXFrameworksBuildPhase;
27 | buildActionMask = 2147483647;
28 | files = (
29 | );
30 | runOnlyForDeploymentPostprocessing = 0;
31 | };
32 | /* End PBXFrameworksBuildPhase section */
33 |
34 | /* Begin PBXGroup section */
35 | 089C166AFE841209C02AAC07 /* iterator */ = {
36 | isa = PBXGroup;
37 | children = (
38 | 22CF11AD0EE9A8840054F513 /* mbmaxcpp.cpp */,
39 | 4F3927671882F05100F74074 /* supporting files */,
40 | 19C28FB4FE9D528D11CA2CBB /* Products */,
41 | );
42 | name = iterator;
43 | sourceTree = "";
44 | };
45 | 19C28FB4FE9D528D11CA2CBB /* Products */ = {
46 | isa = PBXGroup;
47 | children = (
48 | 2FBBEAE508F335360078DB84 /* mbmaxcpp.mxo */,
49 | );
50 | name = Products;
51 | sourceTree = "";
52 | };
53 | 4F3927671882F05100F74074 /* supporting files */ = {
54 | isa = PBXGroup;
55 | children = (
56 | 4F9C374D1881688400A88A88 /* common.xcconfig */,
57 | 4F9C37511881689300A88A88 /* mbmaxcpp.xcconfig */,
58 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */,
59 | 4F3927601882F00700F74074 /* maxcpp6.h */,
60 | );
61 | name = "supporting files";
62 | sourceTree = "";
63 | };
64 | /* End PBXGroup section */
65 |
66 | /* Begin PBXHeadersBuildPhase section */
67 | 2FBBEAD708F335360078DB84 /* Headers */ = {
68 | isa = PBXHeadersBuildPhase;
69 | buildActionMask = 2147483647;
70 | files = (
71 | 4F3927611882F00700F74074 /* maxcpp6.h in Headers */,
72 | );
73 | runOnlyForDeploymentPostprocessing = 0;
74 | };
75 | /* End PBXHeadersBuildPhase section */
76 |
77 | /* Begin PBXNativeTarget section */
78 | 2FBBEAD608F335360078DB84 /* max-external */ = {
79 | isa = PBXNativeTarget;
80 | buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */;
81 | buildPhases = (
82 | 2FBBEAD708F335360078DB84 /* Headers */,
83 | 2FBBEAD808F335360078DB84 /* Resources */,
84 | 2FBBEADA08F335360078DB84 /* Sources */,
85 | 2FBBEADC08F335360078DB84 /* Frameworks */,
86 | 2FBBEADF08F335360078DB84 /* Rez */,
87 | );
88 | buildRules = (
89 | );
90 | dependencies = (
91 | );
92 | name = "max-external";
93 | productName = iterator;
94 | productReference = 2FBBEAE508F335360078DB84 /* mbmaxcpp.mxo */;
95 | productType = "com.apple.product-type.bundle";
96 | };
97 | /* End PBXNativeTarget section */
98 |
99 | /* Begin PBXProject section */
100 | 089C1669FE841209C02AAC07 /* Project object */ = {
101 | isa = PBXProject;
102 | attributes = {
103 | LastUpgradeCheck = 0720;
104 | };
105 | buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmaxcpp" */;
106 | compatibilityVersion = "Xcode 3.2";
107 | developmentRegion = English;
108 | hasScannedForEncodings = 1;
109 | knownRegions = (
110 | en,
111 | );
112 | mainGroup = 089C166AFE841209C02AAC07 /* iterator */;
113 | projectDirPath = "";
114 | projectRoot = "";
115 | targets = (
116 | 2FBBEAD608F335360078DB84 /* max-external */,
117 | );
118 | };
119 | /* End PBXProject section */
120 |
121 | /* Begin PBXResourcesBuildPhase section */
122 | 2FBBEAD808F335360078DB84 /* Resources */ = {
123 | isa = PBXResourcesBuildPhase;
124 | buildActionMask = 2147483647;
125 | files = (
126 | );
127 | runOnlyForDeploymentPostprocessing = 0;
128 | };
129 | /* End PBXResourcesBuildPhase section */
130 |
131 | /* Begin PBXRezBuildPhase section */
132 | 2FBBEADF08F335360078DB84 /* Rez */ = {
133 | isa = PBXRezBuildPhase;
134 | buildActionMask = 2147483647;
135 | files = (
136 | );
137 | runOnlyForDeploymentPostprocessing = 0;
138 | };
139 | /* End PBXRezBuildPhase section */
140 |
141 | /* Begin PBXSourcesBuildPhase section */
142 | 2FBBEADA08F335360078DB84 /* Sources */ = {
143 | isa = PBXSourcesBuildPhase;
144 | buildActionMask = 2147483647;
145 | files = (
146 | 22CF11AE0EE9A8840054F513 /* mbmaxcpp.cpp in Sources */,
147 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */,
148 | );
149 | runOnlyForDeploymentPostprocessing = 0;
150 | };
151 | /* End PBXSourcesBuildPhase section */
152 |
153 | /* Begin XCBuildConfiguration section */
154 | 2FBBEAD008F335010078DB84 /* Debug */ = {
155 | isa = XCBuildConfiguration;
156 | buildSettings = {
157 | ENABLE_TESTABILITY = YES;
158 | ONLY_ACTIVE_ARCH = YES;
159 | };
160 | name = Debug;
161 | };
162 | 2FBBEAD108F335010078DB84 /* Release */ = {
163 | isa = XCBuildConfiguration;
164 | buildSettings = {
165 | };
166 | name = Release;
167 | };
168 | 2FBBEAE108F335360078DB84 /* Debug */ = {
169 | isa = XCBuildConfiguration;
170 | baseConfigurationReference = 4F9C37511881689300A88A88 /* mbmaxcpp.xcconfig */;
171 | buildSettings = {
172 | COMBINE_HIDPI_IMAGES = YES;
173 | COPY_PHASE_STRIP = NO;
174 | GCC_OPTIMIZATION_LEVEL = 0;
175 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
176 | };
177 | name = Debug;
178 | };
179 | 2FBBEAE208F335360078DB84 /* Release */ = {
180 | isa = XCBuildConfiguration;
181 | baseConfigurationReference = 4F9C37511881689300A88A88 /* mbmaxcpp.xcconfig */;
182 | buildSettings = {
183 | COMBINE_HIDPI_IMAGES = YES;
184 | COPY_PHASE_STRIP = YES;
185 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
186 | };
187 | name = Release;
188 | };
189 | /* End XCBuildConfiguration section */
190 |
191 | /* Begin XCConfigurationList section */
192 | 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmaxcpp" */ = {
193 | isa = XCConfigurationList;
194 | buildConfigurations = (
195 | 2FBBEAD008F335010078DB84 /* Debug */,
196 | 2FBBEAD108F335010078DB84 /* Release */,
197 | );
198 | defaultConfigurationIsVisible = 0;
199 | defaultConfigurationName = Release;
200 | };
201 | 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = {
202 | isa = XCConfigurationList;
203 | buildConfigurations = (
204 | 2FBBEAE108F335360078DB84 /* Debug */,
205 | 2FBBEAE208F335360078DB84 /* Release */,
206 | );
207 | defaultConfigurationIsVisible = 0;
208 | defaultConfigurationName = Release;
209 | };
210 | /* End XCConfigurationList section */
211 | };
212 | rootObject = 089C1669FE841209C02AAC07 /* Project object */;
213 | }
214 |
--------------------------------------------------------------------------------
/examples/mbmspc/.gitignore:
--------------------------------------------------------------------------------
1 | *.exe
2 | *.sdf
3 | *.opensdf
4 | *.zip
5 | *.suo
6 | *.ncb
7 | *.vcproj.*
8 | *.pkg
9 | *.dmg
10 | *.depend
11 | *.layout
12 | *.mode1v3
13 | *.db
14 | *.LSOverride
15 | *.xcworkspace
16 | *.xcuserdata
17 | *.xcschememanagement.plist
18 | build-*
19 | ipch/*
20 | gui/*
21 |
22 | Icon?
23 | .DS_Stor*
--------------------------------------------------------------------------------
/examples/mbmspc/bin/mbmspc.maxhelp:
--------------------------------------------------------------------------------
1 | {
2 | "patcher" : {
3 | "fileversion" : 1,
4 | "appversion" : {
5 | "major" : 7,
6 | "minor" : 1,
7 | "revision" : 0,
8 | "architecture" : "x64",
9 | "modernui" : 1
10 | }
11 | ,
12 | "rect" : [ 45.0, 79.0, 640.0, 506.0 ],
13 | "bglocked" : 0,
14 | "openinpresentation" : 0,
15 | "default_fontsize" : 10.0,
16 | "default_fontface" : 0,
17 | "default_fontname" : "Verdana",
18 | "gridonopen" : 1,
19 | "gridsize" : [ 10.0, 10.0 ],
20 | "gridsnaponopen" : 2,
21 | "objectsnaponopen" : 1,
22 | "statusbarvisible" : 2,
23 | "toolbarvisible" : 1,
24 | "lefttoolbarpinned" : 0,
25 | "toptoolbarpinned" : 0,
26 | "righttoolbarpinned" : 0,
27 | "bottomtoolbarpinned" : 0,
28 | "toolbars_unpinned_last_save" : 0,
29 | "tallnewobj" : 0,
30 | "boxanimatetime" : 200,
31 | "enablehscroll" : 1,
32 | "enablevscroll" : 1,
33 | "devicewidth" : 0.0,
34 | "description" : "",
35 | "digest" : "",
36 | "tags" : "",
37 | "style" : "",
38 | "subpatcher_template" : "",
39 | "boxes" : [ {
40 | "box" : {
41 | "fontface" : 0,
42 | "fontname" : "Verdana",
43 | "fontsize" : 10.0,
44 | "id" : "obj-3",
45 | "maxclass" : "number~",
46 | "mode" : 2,
47 | "numinlets" : 2,
48 | "numoutlets" : 2,
49 | "outlettype" : [ "signal", "float" ],
50 | "patching_rect" : [ 204.0, 240.0, 56.0, 21.0 ],
51 | "presentation_rect" : [ 205.0, 244.0, 0.0, 0.0 ],
52 | "sig" : 0.0,
53 | "style" : ""
54 | }
55 |
56 | }
57 | , {
58 | "box" : {
59 | "fontface" : 0,
60 | "fontname" : "Verdana",
61 | "fontsize" : 10.0,
62 | "id" : "obj-2",
63 | "maxclass" : "number~",
64 | "mode" : 1,
65 | "numinlets" : 2,
66 | "numoutlets" : 2,
67 | "outlettype" : [ "signal", "float" ],
68 | "patching_rect" : [ 200.0, 170.0, 56.0, 21.0 ],
69 | "sig" : 1.1,
70 | "style" : ""
71 | }
72 |
73 | }
74 | , {
75 | "box" : {
76 | "fontface" : 3,
77 | "fontname" : "Arial",
78 | "fontsize" : 20.871338,
79 | "id" : "obj-110",
80 | "maxclass" : "comment",
81 | "numinlets" : 1,
82 | "numoutlets" : 0,
83 | "patching_rect" : [ 15.0, 13.0, 566.0, 30.0 ],
84 | "style" : "",
85 | "text" : "mbmspc",
86 | "varname" : "autohelp_top_title"
87 | }
88 |
89 | }
90 | , {
91 | "box" : {
92 | "fontname" : "Arial",
93 | "fontsize" : 12.754705,
94 | "id" : "obj-111",
95 | "maxclass" : "comment",
96 | "numinlets" : 1,
97 | "numoutlets" : 0,
98 | "patching_rect" : [ 15.0, 45.0, 566.0, 21.0 ],
99 | "style" : "",
100 | "text" : "info about this object",
101 | "varname" : "autohelp_top_digest"
102 | }
103 |
104 | }
105 | , {
106 | "box" : {
107 | "fontname" : "Arial",
108 | "fontsize" : 12.0,
109 | "id" : "obj-1",
110 | "maxclass" : "newobj",
111 | "numinlets" : 1,
112 | "numoutlets" : 1,
113 | "outlettype" : [ "signal" ],
114 | "patching_rect" : [ 204.0, 200.0, 62.0, 22.0 ],
115 | "style" : "",
116 | "text" : "mbmspc~"
117 | }
118 |
119 | }
120 | , {
121 | "box" : {
122 | "angle" : 0.0,
123 | "background" : 1,
124 | "bgcolor" : [ 1.0, 0.701961, 0.0, 1.0 ],
125 | "id" : "obj-114",
126 | "maxclass" : "panel",
127 | "mode" : 0,
128 | "numinlets" : 1,
129 | "numoutlets" : 0,
130 | "patching_rect" : [ 10.0, 10.0, 570.0, 60.0 ],
131 | "proportion" : 0.39,
132 | "style" : "",
133 | "varname" : "autohelp_top_panel"
134 | }
135 |
136 | }
137 | ],
138 | "lines" : [ {
139 | "patchline" : {
140 | "destination" : [ "obj-3", 0 ],
141 | "disabled" : 0,
142 | "hidden" : 0,
143 | "source" : [ "obj-1", 0 ]
144 | }
145 |
146 | }
147 | , {
148 | "patchline" : {
149 | "destination" : [ "obj-1", 0 ],
150 | "disabled" : 0,
151 | "hidden" : 0,
152 | "source" : [ "obj-2", 0 ]
153 | }
154 |
155 | }
156 | ],
157 | "dependency_cache" : [ {
158 | "name" : "mbmspc~.mxo",
159 | "type" : "iLaX"
160 | }
161 | ],
162 | "autosave" : 0
163 | }
164 |
165 | }
166 |
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.c:
--------------------------------------------------------------------------------
1 | #include "ext.h"
2 | #include "ext_obex.h"
3 | #include "ext_strings.h"
4 | #include "ext_common.h"
5 |
6 | #include "z_dsp.h"
7 |
8 | typedef struct _mbmspc
9 | {
10 | t_pxobject c_box;
11 | void *c_outlet;
12 |
13 | double m_value;
14 | } t_mbmspc;
15 |
16 | t_int* mbmspc_perform(t_int *w);
17 | void* mbmspc_new(t_symbol *s, long argc, t_atom *argv);
18 | void mbmspc_assist(t_mbmspc *x, void *b, long m, long a, char *s);
19 | void mbmspc_bang(t_mbmspc *x);
20 | void mbmspc_dsp64(t_mbmspc *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags);
21 | void mbmspc_perform64(t_mbmspc *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam);
22 |
23 | static t_class *s_mbmspc_class = NULL;
24 |
25 | int C74_EXPORT main(void)
26 | {
27 | t_class *c = class_new("mbmspc~",
28 | (method)mbmspc_new,
29 | //(method)mbmspc_free,
30 | (method)dsp_free,
31 | sizeof(t_mbmspc),
32 | (method)NULL,
33 | A_GIMME,
34 | 0);
35 |
36 | common_symbols_init();
37 |
38 | class_addmethod(c, (method)mbmspc_dsp64, "dsp64", A_CANT, 0);
39 | class_addmethod(c, (method)mbmspc_bang, "bang", 0);
40 | class_addmethod(c, (method)mbmspc_assist,"assist", A_CANT, 0);
41 |
42 | CLASS_ATTR_FLOAT(c, "myvalue", 0, t_mbmspc, m_value);
43 |
44 | class_dspinit(c);
45 | class_register(_sym_box, c);
46 | s_mbmspc_class = c;
47 |
48 | return 0;
49 | }
50 |
51 | // this is the 64-bit perform method audio vectors
52 | void mbmspc_perform64(t_mbmspc *x, t_object *dsp64, double **ins, long numins, double **outs, long numouts, long sampleframes, long flags, void *userparam)
53 | {
54 | t_double *inL = ins[0];
55 | t_double *outL = outs[0];
56 | int n = sampleframes;
57 |
58 | while (n--)
59 | *outL++ = *inL++;
60 | }
61 |
62 | void mbmspc_dsp64(t_mbmspc *x, t_object *dsp64, short *count, double samplerate, long maxvectorsize, long flags)
63 | {
64 | object_method(dsp64, gensym("dsp_add64"), x, mbmspc_perform64, 0, NULL);
65 | }
66 |
67 | void *mbmspc_new(t_symbol *s, long argc, t_atom *argv)
68 | {
69 | t_mbmspc *x;
70 |
71 | x = (t_mbmspc*)object_alloc(s_mbmspc_class);
72 |
73 | dsp_setup((t_pxobject *)x, 1);
74 |
75 | if (x)
76 | {
77 | x->c_outlet = outlet_new(x, "signal");
78 | }
79 |
80 | return(x);
81 | }
82 | void mbmspc_assist(t_mbmspc *x, void *b, long msg, long arg, char *dst)
83 | {
84 | if (msg==1)
85 | strcpy(dst, "input");
86 | else if (msg==2)
87 | strcpy(dst, "output");
88 | }
89 |
90 | void mbmspc_bang(t_mbmspc *x)
91 | {
92 | post("bang");
93 | }
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.def:
--------------------------------------------------------------------------------
1 | LIBRARY mbmspc.mxe
2 |
3 | EXPORTS
4 | main
5 |
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 11.00
3 | # Visual Studio 2010
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mbmspc", "mbmspc.vcxproj", "{D7D2B050-0FAC-4326-89AD-C82254541416}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|Win32 = Debug|Win32
9 | Debug|x64 = Debug|x64
10 | Release|Win32 = Release|Win32
11 | Release|x64 = Release|x64
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.ActiveCfg = Debug|Win32
15 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.Build.0 = Debug|Win32
16 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.ActiveCfg = Debug|x64
17 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.Build.0 = Debug|x64
18 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.ActiveCfg = Release|Win32
19 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.Build.0 = Release|Win32
20 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.ActiveCfg = Release|x64
21 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.Build.0 = Release|x64
22 | EndGlobalSection
23 | GlobalSection(SolutionProperties) = preSolution
24 | HideSolutionNode = FALSE
25 | EndGlobalSection
26 | EndGlobal
27 |
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Debug
7 | Win32
8 |
9 |
10 | Debug
11 | x64
12 |
13 |
14 | Release
15 | Win32
16 |
17 |
18 | Release
19 | x64
20 |
21 |
22 |
23 | {D7D2B050-0FAC-4326-89AD-C82254541416}
24 |
25 |
26 |
27 | DynamicLibrary
28 | v100
29 | false
30 | MultiByte
31 | true
32 |
33 |
34 | DynamicLibrary
35 | v100
36 | false
37 | MultiByte
38 |
39 |
40 | DynamicLibrary
41 | v100
42 | false
43 | MultiByte
44 | true
45 |
46 |
47 | DynamicLibrary
48 | v100
49 | false
50 | MultiByte
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 | <_ProjectFileVersion>11.0.51106.1
82 |
83 |
84 | true
85 | .mxe
86 |
87 |
88 | true
89 | .mxe64
90 |
91 |
92 | false
93 | .mxe
94 |
95 |
96 | false
97 | .mxe64
98 |
99 |
100 |
101 | Disabled
102 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
103 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
104 | true
105 |
106 | EnableFastChecks
107 | MultiThreadedDebugDLL
108 | true
109 | true
110 |
111 |
112 | $(IntDir)$(ProjectName).pch
113 | $(IntDir)$(TargetName).asm
114 | $(IntDir)
115 | $(IntDir)$(ProjectName).pdb
116 | Level3
117 | true
118 | ProgramDatabase
119 | CompileAsCpp
120 |
121 |
122 | $(OutDir)$(ProjectName).mxe
123 | true
124 | false
125 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
126 |
127 |
128 | true
129 | $(IntDir)$(ProjectName).pdb
130 | $(IntDir)$(ProjectName).map
131 | Windows
132 | false
133 |
134 | $(IntDir)$(ProjectName).lib
135 | MachineX86
136 | $(LIBx86);%(AdditionalLibraryDirectories)
137 |
138 |
139 |
140 |
141 | Disabled
142 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
143 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
144 | true
145 |
146 | EnableFastChecks
147 | MultiThreadedDebugDLL
148 | true
149 | true
150 |
151 |
152 | $(IntDir)$(ProjectName).pch
153 | $(IntDir)$(TargetName).asm
154 | $(IntDir)
155 | $(IntDir)$(ProjectName).pdb
156 | Level3
157 | true
158 | ProgramDatabase
159 | CompileAsCpp
160 |
161 |
162 | $(OutDir)$(ProjectName).mxe64
163 | true
164 | false
165 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
166 |
167 |
168 | true
169 | $(IntDir)$(ProjectName).pdb
170 | $(IntDir)$(ProjectName).map
171 | Windows
172 | false
173 |
174 | $(IntDir)$(ProjectName).lib
175 | MachineX64
176 | $(LIBx64)
177 |
178 |
179 |
180 |
181 | MaxSpeed
182 | AnySuitable
183 | true
184 | Speed
185 | true
186 | true
187 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
188 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
189 | true
190 |
191 | MultiThreadedDLL
192 | false
193 | false
194 | StreamingSIMDExtensions2
195 |
196 | $(IntDir)$(ProjectName).pch
197 | $(IntDir)$(TargetName).asm
198 | $(IntDir)
199 | $(IntDir)$(ProjectName).pdb
200 | Level3
201 | true
202 | ProgramDatabase
203 | CompileAsCpp
204 |
205 |
206 | $(OutDir)$(ProjectName).mxe
207 | true
208 | false
209 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
210 |
211 |
212 | true
213 | $(IntDir)$(ProjectName).pdb
214 | $(IntDir)$(ProjectName).map
215 | Windows
216 | true
217 | true
218 | false
219 |
220 | $(IntDir)$(ProjectName).lib
221 | MachineX86
222 | $(LIBx86);%(AdditionalLibraryDirectories)
223 |
224 |
225 |
226 |
227 | MaxSpeed
228 | AnySuitable
229 | true
230 | Speed
231 | true
232 | true
233 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
234 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
235 | true
236 |
237 | MultiThreadedDLL
238 | false
239 | false
240 | AdvancedVectorExtensions
241 |
242 | $(IntDir)$(ProjectName).pch
243 | $(IntDir)$(TargetName).asm
244 | $(IntDir)
245 | $(IntDir)$(ProjectName).pdb
246 | Level3
247 | true
248 | ProgramDatabase
249 | CompileAsCpp
250 |
251 |
252 | $(OutDir)$(ProjectName).mxe64
253 | true
254 | false
255 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
256 |
257 |
258 | true
259 | $(IntDir)$(ProjectName).pdb
260 | $(IntDir)$(ProjectName).map
261 | Windows
262 | true
263 | true
264 | false
265 |
266 | $(IntDir)$(ProjectName).lib
267 | MachineX64
268 | $(LIBx64)
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {d16e67df-a6ce-4d5b-8951-eab150a6783c}
6 |
7 |
8 |
9 |
10 | supporting
11 |
12 |
13 | supporting
14 |
15 |
16 |
17 |
18 | supporting
19 |
20 |
21 |
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../common.xcconfig"
2 |
3 | PRODUCT_NAME = mbmspc~
--------------------------------------------------------------------------------
/examples/mbmspc/mbmspc.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 46;
7 | objects = {
8 |
9 | /* Begin PBXBuildFile section */
10 | 22CF11AE0EE9A8840054F513 /* mbmspc.c in Sources */ = {isa = PBXBuildFile; fileRef = 22CF11AD0EE9A8840054F513 /* mbmspc.c */; };
11 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */ = {isa = PBXBuildFile; fileRef = 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */; };
12 | 4F4FD71E187F271F005FB2B9 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F4FD71D187F271F005FB2B9 /* MaxAudioAPI.framework */; };
13 | /* End PBXBuildFile section */
14 |
15 | /* Begin PBXFileReference section */
16 | 22CF11AD0EE9A8840054F513 /* mbmspc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mbmspc.c; sourceTree = ""; };
17 | 2FBBEAE508F335360078DB84 /* mbmspc~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbmspc~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; };
18 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = commonsyms.c; path = "../../max-sdk/source/c74support/max-includes/common/commonsyms.c"; sourceTree = SOURCE_ROOT; };
19 | 4F4FD71D187F271F005FB2B9 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../max-sdk/source/c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; };
20 | 4F9C3766188168F200A88A88 /* common.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = common.xcconfig; path = ../../common.xcconfig; sourceTree = SOURCE_ROOT; };
21 | 4F9C3769188168FF00A88A88 /* mbmspc.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = mbmspc.xcconfig; sourceTree = ""; };
22 | /* End PBXFileReference section */
23 |
24 | /* Begin PBXFrameworksBuildPhase section */
25 | 2FBBEADC08F335360078DB84 /* Frameworks */ = {
26 | isa = PBXFrameworksBuildPhase;
27 | buildActionMask = 2147483647;
28 | files = (
29 | 4F4FD71E187F271F005FB2B9 /* MaxAudioAPI.framework in Frameworks */,
30 | );
31 | runOnlyForDeploymentPostprocessing = 0;
32 | };
33 | /* End PBXFrameworksBuildPhase section */
34 |
35 | /* Begin PBXGroup section */
36 | 089C166AFE841209C02AAC07 /* iterator */ = {
37 | isa = PBXGroup;
38 | children = (
39 | 22CF11AD0EE9A8840054F513 /* mbmspc.c */,
40 | 4F39277F1882F0C000F74074 /* supporting */,
41 | 19C28FB4FE9D528D11CA2CBB /* Products */,
42 | );
43 | name = iterator;
44 | sourceTree = "";
45 | };
46 | 19C28FB4FE9D528D11CA2CBB /* Products */ = {
47 | isa = PBXGroup;
48 | children = (
49 | 2FBBEAE508F335360078DB84 /* mbmspc~.mxo */,
50 | );
51 | name = Products;
52 | sourceTree = "";
53 | };
54 | 4F39277F1882F0C000F74074 /* supporting */ = {
55 | isa = PBXGroup;
56 | children = (
57 | 4F4FD71D187F271F005FB2B9 /* MaxAudioAPI.framework */,
58 | 4F9C3766188168F200A88A88 /* common.xcconfig */,
59 | 4F9C3769188168FF00A88A88 /* mbmspc.xcconfig */,
60 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */,
61 | );
62 | name = supporting;
63 | sourceTree = "";
64 | };
65 | /* End PBXGroup section */
66 |
67 | /* Begin PBXHeadersBuildPhase section */
68 | 2FBBEAD708F335360078DB84 /* Headers */ = {
69 | isa = PBXHeadersBuildPhase;
70 | buildActionMask = 2147483647;
71 | files = (
72 | );
73 | runOnlyForDeploymentPostprocessing = 0;
74 | };
75 | /* End PBXHeadersBuildPhase section */
76 |
77 | /* Begin PBXNativeTarget section */
78 | 2FBBEAD608F335360078DB84 /* max-external */ = {
79 | isa = PBXNativeTarget;
80 | buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */;
81 | buildPhases = (
82 | 2FBBEAD708F335360078DB84 /* Headers */,
83 | 2FBBEAD808F335360078DB84 /* Resources */,
84 | 2FBBEADA08F335360078DB84 /* Sources */,
85 | 2FBBEADC08F335360078DB84 /* Frameworks */,
86 | 2FBBEADF08F335360078DB84 /* Rez */,
87 | );
88 | buildRules = (
89 | );
90 | dependencies = (
91 | );
92 | name = "max-external";
93 | productName = iterator;
94 | productReference = 2FBBEAE508F335360078DB84 /* mbmspc~.mxo */;
95 | productType = "com.apple.product-type.bundle";
96 | };
97 | /* End PBXNativeTarget section */
98 |
99 | /* Begin PBXProject section */
100 | 089C1669FE841209C02AAC07 /* Project object */ = {
101 | isa = PBXProject;
102 | attributes = {
103 | LastUpgradeCheck = 0720;
104 | };
105 | buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmspc" */;
106 | compatibilityVersion = "Xcode 3.2";
107 | developmentRegion = English;
108 | hasScannedForEncodings = 1;
109 | knownRegions = (
110 | en,
111 | );
112 | mainGroup = 089C166AFE841209C02AAC07 /* iterator */;
113 | projectDirPath = "";
114 | projectRoot = "";
115 | targets = (
116 | 2FBBEAD608F335360078DB84 /* max-external */,
117 | );
118 | };
119 | /* End PBXProject section */
120 |
121 | /* Begin PBXResourcesBuildPhase section */
122 | 2FBBEAD808F335360078DB84 /* Resources */ = {
123 | isa = PBXResourcesBuildPhase;
124 | buildActionMask = 2147483647;
125 | files = (
126 | );
127 | runOnlyForDeploymentPostprocessing = 0;
128 | };
129 | /* End PBXResourcesBuildPhase section */
130 |
131 | /* Begin PBXRezBuildPhase section */
132 | 2FBBEADF08F335360078DB84 /* Rez */ = {
133 | isa = PBXRezBuildPhase;
134 | buildActionMask = 2147483647;
135 | files = (
136 | );
137 | runOnlyForDeploymentPostprocessing = 0;
138 | };
139 | /* End PBXRezBuildPhase section */
140 |
141 | /* Begin PBXSourcesBuildPhase section */
142 | 2FBBEADA08F335360078DB84 /* Sources */ = {
143 | isa = PBXSourcesBuildPhase;
144 | buildActionMask = 2147483647;
145 | files = (
146 | 22CF11AE0EE9A8840054F513 /* mbmspc.c in Sources */,
147 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */,
148 | );
149 | runOnlyForDeploymentPostprocessing = 0;
150 | };
151 | /* End PBXSourcesBuildPhase section */
152 |
153 | /* Begin XCBuildConfiguration section */
154 | 2FBBEAD008F335010078DB84 /* Debug */ = {
155 | isa = XCBuildConfiguration;
156 | buildSettings = {
157 | ENABLE_TESTABILITY = YES;
158 | ONLY_ACTIVE_ARCH = YES;
159 | };
160 | name = Debug;
161 | };
162 | 2FBBEAD108F335010078DB84 /* Release */ = {
163 | isa = XCBuildConfiguration;
164 | buildSettings = {
165 | };
166 | name = Release;
167 | };
168 | 2FBBEAE108F335360078DB84 /* Debug */ = {
169 | isa = XCBuildConfiguration;
170 | baseConfigurationReference = 4F9C3769188168FF00A88A88 /* mbmspc.xcconfig */;
171 | buildSettings = {
172 | COMBINE_HIDPI_IMAGES = YES;
173 | COPY_PHASE_STRIP = NO;
174 | FRAMEWORK_SEARCH_PATHS = (
175 | "$(inherited)",
176 | "\"$(SRCROOT)/../../max-sdk/c74support/msp-includes\"",
177 | );
178 | GCC_OPTIMIZATION_LEVEL = 0;
179 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
180 | };
181 | name = Debug;
182 | };
183 | 2FBBEAE208F335360078DB84 /* Release */ = {
184 | isa = XCBuildConfiguration;
185 | baseConfigurationReference = 4F9C3769188168FF00A88A88 /* mbmspc.xcconfig */;
186 | buildSettings = {
187 | COMBINE_HIDPI_IMAGES = YES;
188 | COPY_PHASE_STRIP = YES;
189 | FRAMEWORK_SEARCH_PATHS = (
190 | "$(inherited)",
191 | "\"$(SRCROOT)/../../max-sdk/c74support/msp-includes\"",
192 | );
193 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
194 | };
195 | name = Release;
196 | };
197 | /* End XCBuildConfiguration section */
198 |
199 | /* Begin XCConfigurationList section */
200 | 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmspc" */ = {
201 | isa = XCConfigurationList;
202 | buildConfigurations = (
203 | 2FBBEAD008F335010078DB84 /* Debug */,
204 | 2FBBEAD108F335010078DB84 /* Release */,
205 | );
206 | defaultConfigurationIsVisible = 0;
207 | defaultConfigurationName = Release;
208 | };
209 | 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = {
210 | isa = XCConfigurationList;
211 | buildConfigurations = (
212 | 2FBBEAE108F335360078DB84 /* Debug */,
213 | 2FBBEAE208F335360078DB84 /* Release */,
214 | );
215 | defaultConfigurationIsVisible = 0;
216 | defaultConfigurationName = Release;
217 | };
218 | /* End XCConfigurationList section */
219 | };
220 | rootObject = 089C1669FE841209C02AAC07 /* Project object */;
221 | }
222 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/.gitignore:
--------------------------------------------------------------------------------
1 | *.exe
2 | *.sdf
3 | *.opensdf
4 | *.zip
5 | *.suo
6 | *.ncb
7 | *.vcproj.*
8 | *.pkg
9 | *.dmg
10 | *.depend
11 | *.layout
12 | *.mode1v3
13 | *.db
14 | *.LSOverride
15 | *.xcworkspace
16 | *.xcuserdata
17 | *.xcschememanagement.plist
18 | build-*
19 | ipch/*
20 | gui/*
21 |
22 | Icon?
23 | .DS_Stor*
--------------------------------------------------------------------------------
/examples/mbmspcpp/bin/mbmspcpp.maxhelp:
--------------------------------------------------------------------------------
1 | {
2 | "patcher" : {
3 | "fileversion" : 1,
4 | "appversion" : {
5 | "major" : 7,
6 | "minor" : 1,
7 | "revision" : 0,
8 | "architecture" : "x64",
9 | "modernui" : 1
10 | }
11 | ,
12 | "rect" : [ 45.0, 79.0, 640.0, 506.0 ],
13 | "bglocked" : 0,
14 | "openinpresentation" : 0,
15 | "default_fontsize" : 10.0,
16 | "default_fontface" : 0,
17 | "default_fontname" : "Verdana",
18 | "gridonopen" : 1,
19 | "gridsize" : [ 10.0, 10.0 ],
20 | "gridsnaponopen" : 2,
21 | "objectsnaponopen" : 1,
22 | "statusbarvisible" : 2,
23 | "toolbarvisible" : 1,
24 | "lefttoolbarpinned" : 0,
25 | "toptoolbarpinned" : 0,
26 | "righttoolbarpinned" : 0,
27 | "bottomtoolbarpinned" : 0,
28 | "toolbars_unpinned_last_save" : 0,
29 | "tallnewobj" : 0,
30 | "boxanimatetime" : 200,
31 | "enablehscroll" : 1,
32 | "enablevscroll" : 1,
33 | "devicewidth" : 0.0,
34 | "description" : "",
35 | "digest" : "",
36 | "tags" : "",
37 | "style" : "",
38 | "subpatcher_template" : "",
39 | "boxes" : [ {
40 | "box" : {
41 | "fontface" : 0,
42 | "fontname" : "Verdana",
43 | "fontsize" : 10.0,
44 | "id" : "obj-3",
45 | "maxclass" : "number~",
46 | "mode" : 2,
47 | "numinlets" : 2,
48 | "numoutlets" : 2,
49 | "outlettype" : [ "signal", "float" ],
50 | "patching_rect" : [ 230.0, 340.0, 56.0, 21.0 ],
51 | "presentation_rect" : [ 225.0, 343.0, 0.0, 0.0 ],
52 | "sig" : 0.0,
53 | "style" : ""
54 | }
55 |
56 | }
57 | , {
58 | "box" : {
59 | "fontface" : 0,
60 | "fontname" : "Verdana",
61 | "fontsize" : 10.0,
62 | "id" : "obj-2",
63 | "maxclass" : "number~",
64 | "mode" : 1,
65 | "numinlets" : 2,
66 | "numoutlets" : 2,
67 | "outlettype" : [ "signal", "float" ],
68 | "patching_rect" : [ 230.0, 190.0, 56.0, 21.0 ],
69 | "sig" : 1.5,
70 | "style" : ""
71 | }
72 |
73 | }
74 | , {
75 | "box" : {
76 | "fontface" : 3,
77 | "fontname" : "Arial",
78 | "fontsize" : 20.871338,
79 | "id" : "obj-110",
80 | "maxclass" : "comment",
81 | "numinlets" : 1,
82 | "numoutlets" : 0,
83 | "patching_rect" : [ 15.0, 13.0, 566.0, 30.0 ],
84 | "style" : "",
85 | "text" : "mbmspcpp",
86 | "varname" : "autohelp_top_title"
87 | }
88 |
89 | }
90 | , {
91 | "box" : {
92 | "fontname" : "Arial",
93 | "fontsize" : 12.754705,
94 | "id" : "obj-111",
95 | "maxclass" : "comment",
96 | "numinlets" : 1,
97 | "numoutlets" : 0,
98 | "patching_rect" : [ 15.0, 45.0, 566.0, 21.0 ],
99 | "style" : "",
100 | "text" : "info about this object",
101 | "varname" : "autohelp_top_digest"
102 | }
103 |
104 | }
105 | , {
106 | "box" : {
107 | "fontname" : "Arial",
108 | "fontsize" : 12.0,
109 | "id" : "obj-1",
110 | "maxclass" : "newobj",
111 | "numinlets" : 1,
112 | "numoutlets" : 1,
113 | "outlettype" : [ "signal" ],
114 | "patching_rect" : [ 220.0, 240.0, 74.0, 22.0 ],
115 | "style" : "",
116 | "text" : "mbmspcpp~"
117 | }
118 |
119 | }
120 | , {
121 | "box" : {
122 | "angle" : 0.0,
123 | "background" : 1,
124 | "bgcolor" : [ 1.0, 0.701961, 0.0, 1.0 ],
125 | "id" : "obj-114",
126 | "maxclass" : "panel",
127 | "mode" : 0,
128 | "numinlets" : 1,
129 | "numoutlets" : 0,
130 | "patching_rect" : [ 10.0, 10.0, 570.0, 60.0 ],
131 | "proportion" : 0.39,
132 | "style" : "",
133 | "varname" : "autohelp_top_panel"
134 | }
135 |
136 | }
137 | ],
138 | "lines" : [ {
139 | "patchline" : {
140 | "destination" : [ "obj-3", 0 ],
141 | "disabled" : 0,
142 | "hidden" : 0,
143 | "source" : [ "obj-1", 0 ]
144 | }
145 |
146 | }
147 | , {
148 | "patchline" : {
149 | "destination" : [ "obj-1", 0 ],
150 | "disabled" : 0,
151 | "hidden" : 0,
152 | "source" : [ "obj-2", 0 ]
153 | }
154 |
155 | }
156 | ],
157 | "dependency_cache" : [ {
158 | "name" : "mbmspcpp~.mxo",
159 | "type" : "iLaX"
160 | }
161 | ],
162 | "autosave" : 0
163 | }
164 |
165 | }
166 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.cpp:
--------------------------------------------------------------------------------
1 | #include "../../maxcpp/maxcpp/maxcpp6.h"
2 |
3 | class mbmspcpp : public MspCpp6
4 | {
5 | public:
6 | mbmspcpp(t_symbol * sym, long ac, t_atom * av) {
7 | setupIO(1, 1);
8 | }
9 |
10 | ~mbmspcpp() {}
11 |
12 | //void dsp(t_object * dsp64, short *count, double samplerate, long maxvectorsize, long flags) {
13 | //setSampleRate(sys_getsr());
14 | //}
15 |
16 | void perform(double **ins, long numins, double **outs, long numouts, long sampleframes) {
17 | for (long channel = 0; channel < numouts; channel++) {
18 | double * in = ins[channel];
19 | double * out = outs[channel];
20 | for (long i=0; i < sampleframes; i++) {
21 | out[i] = in[i];
22 | }
23 | }
24 | }
25 | };
26 |
27 | extern "C" int C74_EXPORT main(void) {
28 | mbmspcpp::makeMaxClass("mbmspcpp~");
29 | }
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.def:
--------------------------------------------------------------------------------
1 | LIBRARY mbmspcpp.mxe
2 |
3 | EXPORTS
4 | main
5 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.props:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 11.00
3 | # Visual Studio 2010
4 | Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mbmspcpp", "mbmspcpp.vcxproj", "{D7D2B050-0FAC-4326-89AD-C82254541416}"
5 | EndProject
6 | Global
7 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
8 | Debug|Win32 = Debug|Win32
9 | Debug|x64 = Debug|x64
10 | Release|Win32 = Release|Win32
11 | Release|x64 = Release|x64
12 | EndGlobalSection
13 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
14 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.ActiveCfg = Debug|Win32
15 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|Win32.Build.0 = Debug|Win32
16 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.ActiveCfg = Debug|x64
17 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Debug|x64.Build.0 = Debug|x64
18 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.ActiveCfg = Release|Win32
19 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|Win32.Build.0 = Release|Win32
20 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.ActiveCfg = Release|x64
21 | {D7D2B050-0FAC-4326-89AD-C82254541416}.Release|x64.Build.0 = Release|x64
22 | EndGlobalSection
23 | GlobalSection(SolutionProperties) = preSolution
24 | HideSolutionNode = FALSE
25 | EndGlobalSection
26 | EndGlobal
27 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.vcxproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Debug
7 | Win32
8 |
9 |
10 | Debug
11 | x64
12 |
13 |
14 | Release
15 | Win32
16 |
17 |
18 | Release
19 | x64
20 |
21 |
22 |
23 | {D7D2B050-0FAC-4326-89AD-C82254541416}
24 |
25 |
26 |
27 | DynamicLibrary
28 | v100
29 | false
30 | MultiByte
31 | true
32 |
33 |
34 | DynamicLibrary
35 | v100
36 | false
37 | MultiByte
38 |
39 |
40 | DynamicLibrary
41 | v100
42 | false
43 | MultiByte
44 | true
45 |
46 |
47 | DynamicLibrary
48 | v100
49 | false
50 | MultiByte
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 | <_ProjectFileVersion>11.0.51106.1
82 |
83 |
84 | true
85 | .mxe
86 |
87 |
88 | true
89 | .mxe64
90 |
91 |
92 | false
93 | .mxe
94 |
95 |
96 | false
97 | .mxe64
98 |
99 |
100 |
101 | Disabled
102 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
103 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
104 | true
105 |
106 | EnableFastChecks
107 | MultiThreadedDebugDLL
108 | true
109 | true
110 |
111 |
112 | $(IntDir)$(ProjectName).pch
113 | $(IntDir)$(TargetName).asm
114 | $(IntDir)
115 | $(IntDir)$(ProjectName).pdb
116 | Level3
117 | true
118 | ProgramDatabase
119 | CompileAsCpp
120 |
121 |
122 | $(OutDir)$(ProjectName).mxe
123 | true
124 | false
125 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
126 |
127 |
128 | true
129 | $(IntDir)$(ProjectName).pdb
130 | $(IntDir)$(ProjectName).map
131 | Windows
132 | false
133 |
134 | $(IntDir)$(ProjectName).lib
135 | MachineX86
136 | $(LIBx86);%(AdditionalLibraryDirectories)
137 |
138 |
139 |
140 |
141 | Disabled
142 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
143 | WIN_VERSION;WIN32;_DEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
144 | true
145 |
146 | EnableFastChecks
147 | MultiThreadedDebugDLL
148 | true
149 | true
150 |
151 |
152 | $(IntDir)$(ProjectName).pch
153 | $(IntDir)$(TargetName).asm
154 | $(IntDir)
155 | $(IntDir)$(ProjectName).pdb
156 | Level3
157 | true
158 | ProgramDatabase
159 | CompileAsCpp
160 |
161 |
162 | $(OutDir)$(ProjectName).mxe64
163 | true
164 | false
165 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
166 |
167 |
168 | true
169 | $(IntDir)$(ProjectName).pdb
170 | $(IntDir)$(ProjectName).map
171 | Windows
172 | false
173 |
174 | $(IntDir)$(ProjectName).lib
175 | MachineX64
176 | $(LIBx64)
177 |
178 |
179 |
180 |
181 | MaxSpeed
182 | AnySuitable
183 | true
184 | Speed
185 | true
186 | true
187 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
188 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
189 | true
190 |
191 | MultiThreadedDLL
192 | false
193 | false
194 | StreamingSIMDExtensions2
195 |
196 | $(IntDir)$(ProjectName).pch
197 | $(IntDir)$(TargetName).asm
198 | $(IntDir)
199 | $(IntDir)$(ProjectName).pdb
200 | Level3
201 | true
202 | ProgramDatabase
203 | CompileAsCpp
204 |
205 |
206 | $(OutDir)$(ProjectName).mxe
207 | true
208 | false
209 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
210 |
211 |
212 | true
213 | $(IntDir)$(ProjectName).pdb
214 | $(IntDir)$(ProjectName).map
215 | Windows
216 | true
217 | true
218 | false
219 |
220 | $(IntDir)$(ProjectName).lib
221 | MachineX86
222 | $(LIBx86);%(AdditionalLibraryDirectories)
223 |
224 |
225 |
226 |
227 | MaxSpeed
228 | AnySuitable
229 | true
230 | Speed
231 | true
232 | true
233 | $(C74SUPPORT)\max-includes;$(C74SUPPORT)\msp-includes;%(AdditionalIncludeDirectories)
234 | WIN_VERSION;WIN32;NDEBUG;_WINDOWS;_USRDLL;WIN_EXT_VERSION;%(PreprocessorDefinitions)
235 | true
236 |
237 | MultiThreadedDLL
238 | false
239 | false
240 | AdvancedVectorExtensions
241 |
242 | $(IntDir)$(ProjectName).pch
243 | $(IntDir)$(TargetName).asm
244 | $(IntDir)
245 | $(IntDir)$(ProjectName).pdb
246 | Level3
247 | true
248 | ProgramDatabase
249 | CompileAsCpp
250 |
251 |
252 | $(OutDir)$(ProjectName).mxe64
253 | true
254 | false
255 | libcmt.lib;%(IgnoreSpecificDefaultLibraries)
256 |
257 |
258 | true
259 | $(IntDir)$(ProjectName).pdb
260 | $(IntDir)$(ProjectName).map
261 | Windows
262 | true
263 | true
264 | false
265 |
266 | $(IntDir)$(ProjectName).lib
267 | MachineX64
268 | $(LIBx64)
269 |
270 |
271 |
272 |
273 |
274 |
275 |
276 |
277 |
278 |
279 |
280 |
281 |
282 |
283 |
284 |
285 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.vcxproj.filters:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | {d16e67df-a6ce-4d5b-8951-eab150a6783c}
6 |
7 |
8 |
9 |
10 | supporting
11 |
12 |
13 | supporting
14 |
15 |
16 |
17 |
18 | supporting
19 |
20 |
21 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.xcconfig:
--------------------------------------------------------------------------------
1 | #include "../../common.xcconfig"
2 |
3 | PRODUCT_NAME = mbmspcpp~
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.xcodeproj/oli.pbxuser:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | 089C1669FE841209C02AAC07 /* Project object */ = {
4 | activeArchitecturePreference = i386;
5 | activeBuildConfigurationName = Debug;
6 | activeExecutable = 4F4FD646187F1E7B005FB2B9 /* Max61RT */;
7 | activeTarget = 2FBBEAD608F335360078DB84 /* max-external */;
8 | addToTargets = (
9 | 2FBBEAD608F335360078DB84 /* max-external */,
10 | );
11 | breakpoints = (
12 | );
13 | codeSenseManager = 4F4FD54B187F054E005FB2B9 /* Code sense */;
14 | executables = (
15 | 4F4FD646187F1E7B005FB2B9 /* Max61RT */,
16 | );
17 | perUserDictionary = {
18 | PBXConfiguration.PBXFileTableDataSource3.PBXExecutablesDataSource = {
19 | PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
20 | PBXFileTableDataSourceColumnSortingKey = PBXExecutablesDataSource_NameID;
21 | PBXFileTableDataSourceColumnWidthsKey = (
22 | 22,
23 | 300,
24 | 545,
25 | );
26 | PBXFileTableDataSourceColumnsKey = (
27 | PBXExecutablesDataSource_ActiveFlagID,
28 | PBXExecutablesDataSource_NameID,
29 | PBXExecutablesDataSource_CommentsID,
30 | );
31 | };
32 | PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
33 | PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
34 | PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
35 | PBXFileTableDataSourceColumnWidthsKey = (
36 | 20,
37 | 1473,
38 | 20,
39 | 48,
40 | 43,
41 | 43,
42 | 20,
43 | );
44 | PBXFileTableDataSourceColumnsKey = (
45 | PBXFileDataSource_FiletypeID,
46 | PBXFileDataSource_Filename_ColumnID,
47 | PBXFileDataSource_Built_ColumnID,
48 | PBXFileDataSource_ObjectSize_ColumnID,
49 | PBXFileDataSource_Errors_ColumnID,
50 | PBXFileDataSource_Warnings_ColumnID,
51 | PBXFileDataSource_Target_ColumnID,
52 | );
53 | };
54 | PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
55 | PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
56 | PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
57 | PBXFileTableDataSourceColumnWidthsKey = (
58 | 20,
59 | 1433,
60 | 60,
61 | 20,
62 | 48,
63 | 43,
64 | 43,
65 | );
66 | PBXFileTableDataSourceColumnsKey = (
67 | PBXFileDataSource_FiletypeID,
68 | PBXFileDataSource_Filename_ColumnID,
69 | PBXTargetDataSource_PrimaryAttribute,
70 | PBXFileDataSource_Built_ColumnID,
71 | PBXFileDataSource_ObjectSize_ColumnID,
72 | PBXFileDataSource_Errors_ColumnID,
73 | PBXFileDataSource_Warnings_ColumnID,
74 | );
75 | };
76 | PBXPerProjectTemplateStateSaveDate = 411235157;
77 | PBXWorkspaceStateSaveDate = 411235157;
78 | };
79 | perUserProjectItems = {
80 | 4F3927CB1882F36200F74074 /* PBXTextBookmark */ = 4F3927CB1882F36200F74074 /* PBXTextBookmark */;
81 | 4F3927CC1882F36200F74074 /* PBXTextBookmark */ = 4F3927CC1882F36200F74074 /* PBXTextBookmark */;
82 | 4F3927CD1882F36200F74074 /* PBXTextBookmark */ = 4F3927CD1882F36200F74074 /* PBXTextBookmark */;
83 | 4F9C376C1881692500A88A88 /* PBXTextBookmark */ = 4F9C376C1881692500A88A88 /* PBXTextBookmark */;
84 | };
85 | sourceControlManager = 4F4FD54A187F054E005FB2B9 /* Source Control */;
86 | userBuildSettings = {
87 | OBJROOT = "$(SYMROOT)";
88 | SYMROOT = "$(PROJECT_DIRECTORY)build-mac";
89 | };
90 | };
91 | 22CF11AD0EE9A8840054F513 /* mbmspcpp.cpp */ = {
92 | uiCtxt = {
93 | sepNavIntBoundsRect = "{{0, 0}, {1651, 806}}";
94 | sepNavSelRange = "{435, 0}";
95 | sepNavVisRange = "{0, 692}";
96 | };
97 | };
98 | 2FBBEAD608F335360078DB84 /* max-external */ = {
99 | activeExec = 0;
100 | };
101 | 4F39277B1882F0BC00F74074 /* maxcpp6.h */ = {
102 | uiCtxt = {
103 | sepNavIntBoundsRect = "{{0, 0}, {1614, 4628}}";
104 | sepNavSelRange = "{10808, 0}";
105 | sepNavVisRange = "{9934, 1429}";
106 | };
107 | };
108 | 4F3927CB1882F36200F74074 /* PBXTextBookmark */ = {
109 | isa = PBXTextBookmark;
110 | fRef = 22CF11AD0EE9A8840054F513 /* mbmspcpp.cpp */;
111 | name = "mbmspcpp.cpp: 17";
112 | rLen = 0;
113 | rLoc = 435;
114 | rType = 0;
115 | vrLen = 692;
116 | vrLoc = 0;
117 | };
118 | 4F3927CC1882F36200F74074 /* PBXTextBookmark */ = {
119 | isa = PBXTextBookmark;
120 | fRef = 4F9C3769188168FF00A88A88 /* mbmspcpp.xcconfig */;
121 | name = "mbmspcpp.xcconfig: 3";
122 | rLen = 0;
123 | rLoc = 58;
124 | rType = 0;
125 | vrLen = 58;
126 | vrLoc = 0;
127 | };
128 | 4F3927CD1882F36200F74074 /* PBXTextBookmark */ = {
129 | isa = PBXTextBookmark;
130 | fRef = 4F9C3769188168FF00A88A88 /* mbmspcpp.xcconfig */;
131 | name = "mbmspcpp.xcconfig: 3";
132 | rLen = 0;
133 | rLoc = 58;
134 | rType = 0;
135 | vrLen = 58;
136 | vrLoc = 0;
137 | };
138 | 4F4FD54A187F054E005FB2B9 /* Source Control */ = {
139 | isa = PBXSourceControlManager;
140 | fallbackIsa = XCSourceControlManager;
141 | isSCMEnabled = 0;
142 | scmConfiguration = {
143 | repositoryNamesForRoots = {
144 | "" = "";
145 | };
146 | };
147 | };
148 | 4F4FD54B187F054E005FB2B9 /* Code sense */ = {
149 | isa = PBXCodeSenseManager;
150 | indexTemplatePath = "";
151 | };
152 | 4F4FD646187F1E7B005FB2B9 /* Max61RT */ = {
153 | isa = PBXExecutable;
154 | activeArgIndices = (
155 | );
156 | argumentStrings = (
157 | );
158 | autoAttachOnCrash = 1;
159 | breakpointsEnabled = 1;
160 | configStateDict = {
161 | };
162 | customDataFormattersEnabled = 1;
163 | dataTipCustomDataFormattersEnabled = 1;
164 | dataTipShowTypeColumn = 1;
165 | dataTipSortType = 0;
166 | debuggerPlugin = GDBDebugging;
167 | disassemblyDisplayState = 0;
168 | dylibVariantSuffix = "";
169 | enableDebugStr = 1;
170 | environmentEntries = (
171 | );
172 | executableSystemSymbolLevel = 0;
173 | executableUserSymbolLevel = 0;
174 | launchableReference = 4F4FD647187F1E7B005FB2B9 /* Max Runtime.app */;
175 | libgmallocEnabled = 0;
176 | name = Max61RT;
177 | savedGlobals = {
178 | };
179 | showTypeColumn = 0;
180 | sourceDirectories = (
181 | );
182 | };
183 | 4F4FD647187F1E7B005FB2B9 /* Max Runtime.app */ = {
184 | isa = PBXFileReference;
185 | lastKnownFileType = wrapper.application;
186 | name = "Max Runtime.app";
187 | path = "/Applications/Max 6.1/Max Runtime.app";
188 | sourceTree = "";
189 | };
190 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */ = {
191 | uiCtxt = {
192 | sepNavIntBoundsRect = "{{0, 0}, {1651, 815}}";
193 | sepNavSelRange = "{0, 0}";
194 | sepNavVisRange = "{0, 269}";
195 | };
196 | };
197 | 4F9C3766188168F200A88A88 /* common.xcconfig */ = {
198 | uiCtxt = {
199 | sepNavIntBoundsRect = "{{0, 0}, {838, 572}}";
200 | sepNavSelRange = "{0, 0}";
201 | sepNavVisRange = "{0, 1383}";
202 | };
203 | };
204 | 4F9C3769188168FF00A88A88 /* mbmspcpp.xcconfig */ = {
205 | uiCtxt = {
206 | sepNavIntBoundsRect = "{{0, 0}, {1651, 806}}";
207 | sepNavSelRange = "{58, 0}";
208 | sepNavVisRange = "{0, 58}";
209 | };
210 | };
211 | 4F9C376C1881692500A88A88 /* PBXTextBookmark */ = {
212 | isa = PBXTextBookmark;
213 | fRef = 4F9C3766188168F200A88A88 /* common.xcconfig */;
214 | name = "common.xcconfig: 1";
215 | rLen = 0;
216 | rLoc = 0;
217 | rType = 0;
218 | vrLen = 1383;
219 | vrLoc = 0;
220 | };
221 | }
222 |
--------------------------------------------------------------------------------
/examples/mbmspcpp/mbmspcpp.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 46;
7 | objects = {
8 |
9 | /* Begin PBXBuildFile section */
10 | 22CF11AE0EE9A8840054F513 /* mbmspcpp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 22CF11AD0EE9A8840054F513 /* mbmspcpp.cpp */; };
11 | 4F39277C1882F0BC00F74074 /* maxcpp6.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F39277B1882F0BC00F74074 /* maxcpp6.h */; };
12 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */ = {isa = PBXBuildFile; fileRef = 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */; };
13 | 4F4FD71E187F271F005FB2B9 /* MaxAudioAPI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4F4FD71D187F271F005FB2B9 /* MaxAudioAPI.framework */; };
14 | /* End PBXBuildFile section */
15 |
16 | /* Begin PBXFileReference section */
17 | 22CF11AD0EE9A8840054F513 /* mbmspcpp.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = mbmspcpp.cpp; sourceTree = ""; };
18 | 2FBBEAE508F335360078DB84 /* mbmspcpp~.mxo */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "mbmspcpp~.mxo"; sourceTree = BUILT_PRODUCTS_DIR; };
19 | 4F39277B1882F0BC00F74074 /* maxcpp6.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = maxcpp6.h; path = ../../maxcpp/maxcpp/maxcpp6.h; sourceTree = SOURCE_ROOT; };
20 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = commonsyms.c; path = "../../max-sdk/source/c74support/max-includes/common/commonsyms.c"; sourceTree = SOURCE_ROOT; };
21 | 4F4FD71D187F271F005FB2B9 /* MaxAudioAPI.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MaxAudioAPI.framework; path = "../../max-sdk/source/c74support/msp-includes/MaxAudioAPI.framework"; sourceTree = SOURCE_ROOT; };
22 | 4F9C3766188168F200A88A88 /* common.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = common.xcconfig; path = ../../common.xcconfig; sourceTree = SOURCE_ROOT; };
23 | 4F9C3769188168FF00A88A88 /* mbmspcpp.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = mbmspcpp.xcconfig; sourceTree = ""; };
24 | /* End PBXFileReference section */
25 |
26 | /* Begin PBXFrameworksBuildPhase section */
27 | 2FBBEADC08F335360078DB84 /* Frameworks */ = {
28 | isa = PBXFrameworksBuildPhase;
29 | buildActionMask = 2147483647;
30 | files = (
31 | 4F4FD71E187F271F005FB2B9 /* MaxAudioAPI.framework in Frameworks */,
32 | );
33 | runOnlyForDeploymentPostprocessing = 0;
34 | };
35 | /* End PBXFrameworksBuildPhase section */
36 |
37 | /* Begin PBXGroup section */
38 | 089C166AFE841209C02AAC07 /* iterator */ = {
39 | isa = PBXGroup;
40 | children = (
41 | 22CF11AD0EE9A8840054F513 /* mbmspcpp.cpp */,
42 | 4F39277F1882F0C000F74074 /* supporting */,
43 | 19C28FB4FE9D528D11CA2CBB /* Products */,
44 | );
45 | name = iterator;
46 | sourceTree = "";
47 | };
48 | 19C28FB4FE9D528D11CA2CBB /* Products */ = {
49 | isa = PBXGroup;
50 | children = (
51 | 2FBBEAE508F335360078DB84 /* mbmspcpp~.mxo */,
52 | );
53 | name = Products;
54 | sourceTree = "";
55 | };
56 | 4F39277F1882F0C000F74074 /* supporting */ = {
57 | isa = PBXGroup;
58 | children = (
59 | 4F4FD71D187F271F005FB2B9 /* MaxAudioAPI.framework */,
60 | 4F9C3766188168F200A88A88 /* common.xcconfig */,
61 | 4F9C3769188168FF00A88A88 /* mbmspcpp.xcconfig */,
62 | 4F4FD6E4187F2577005FB2B9 /* commonsyms.c */,
63 | 4F39277B1882F0BC00F74074 /* maxcpp6.h */,
64 | );
65 | name = supporting;
66 | sourceTree = "";
67 | };
68 | /* End PBXGroup section */
69 |
70 | /* Begin PBXHeadersBuildPhase section */
71 | 2FBBEAD708F335360078DB84 /* Headers */ = {
72 | isa = PBXHeadersBuildPhase;
73 | buildActionMask = 2147483647;
74 | files = (
75 | 4F39277C1882F0BC00F74074 /* maxcpp6.h in Headers */,
76 | );
77 | runOnlyForDeploymentPostprocessing = 0;
78 | };
79 | /* End PBXHeadersBuildPhase section */
80 |
81 | /* Begin PBXNativeTarget section */
82 | 2FBBEAD608F335360078DB84 /* max-external */ = {
83 | isa = PBXNativeTarget;
84 | buildConfigurationList = 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */;
85 | buildPhases = (
86 | 2FBBEAD708F335360078DB84 /* Headers */,
87 | 2FBBEAD808F335360078DB84 /* Resources */,
88 | 2FBBEADA08F335360078DB84 /* Sources */,
89 | 2FBBEADC08F335360078DB84 /* Frameworks */,
90 | 2FBBEADF08F335360078DB84 /* Rez */,
91 | );
92 | buildRules = (
93 | );
94 | dependencies = (
95 | );
96 | name = "max-external";
97 | productName = iterator;
98 | productReference = 2FBBEAE508F335360078DB84 /* mbmspcpp~.mxo */;
99 | productType = "com.apple.product-type.bundle";
100 | };
101 | /* End PBXNativeTarget section */
102 |
103 | /* Begin PBXProject section */
104 | 089C1669FE841209C02AAC07 /* Project object */ = {
105 | isa = PBXProject;
106 | attributes = {
107 | LastUpgradeCheck = 0720;
108 | };
109 | buildConfigurationList = 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmspcpp" */;
110 | compatibilityVersion = "Xcode 3.2";
111 | developmentRegion = English;
112 | hasScannedForEncodings = 1;
113 | knownRegions = (
114 | en,
115 | );
116 | mainGroup = 089C166AFE841209C02AAC07 /* iterator */;
117 | projectDirPath = "";
118 | projectRoot = "";
119 | targets = (
120 | 2FBBEAD608F335360078DB84 /* max-external */,
121 | );
122 | };
123 | /* End PBXProject section */
124 |
125 | /* Begin PBXResourcesBuildPhase section */
126 | 2FBBEAD808F335360078DB84 /* Resources */ = {
127 | isa = PBXResourcesBuildPhase;
128 | buildActionMask = 2147483647;
129 | files = (
130 | );
131 | runOnlyForDeploymentPostprocessing = 0;
132 | };
133 | /* End PBXResourcesBuildPhase section */
134 |
135 | /* Begin PBXRezBuildPhase section */
136 | 2FBBEADF08F335360078DB84 /* Rez */ = {
137 | isa = PBXRezBuildPhase;
138 | buildActionMask = 2147483647;
139 | files = (
140 | );
141 | runOnlyForDeploymentPostprocessing = 0;
142 | };
143 | /* End PBXRezBuildPhase section */
144 |
145 | /* Begin PBXSourcesBuildPhase section */
146 | 2FBBEADA08F335360078DB84 /* Sources */ = {
147 | isa = PBXSourcesBuildPhase;
148 | buildActionMask = 2147483647;
149 | files = (
150 | 22CF11AE0EE9A8840054F513 /* mbmspcpp.cpp in Sources */,
151 | 4F4FD6E5187F2577005FB2B9 /* commonsyms.c in Sources */,
152 | );
153 | runOnlyForDeploymentPostprocessing = 0;
154 | };
155 | /* End PBXSourcesBuildPhase section */
156 |
157 | /* Begin XCBuildConfiguration section */
158 | 2FBBEAD008F335010078DB84 /* Debug */ = {
159 | isa = XCBuildConfiguration;
160 | buildSettings = {
161 | ENABLE_TESTABILITY = YES;
162 | ONLY_ACTIVE_ARCH = YES;
163 | };
164 | name = Debug;
165 | };
166 | 2FBBEAD108F335010078DB84 /* Release */ = {
167 | isa = XCBuildConfiguration;
168 | buildSettings = {
169 | };
170 | name = Release;
171 | };
172 | 2FBBEAE108F335360078DB84 /* Debug */ = {
173 | isa = XCBuildConfiguration;
174 | baseConfigurationReference = 4F9C3769188168FF00A88A88 /* mbmspcpp.xcconfig */;
175 | buildSettings = {
176 | COMBINE_HIDPI_IMAGES = YES;
177 | COPY_PHASE_STRIP = NO;
178 | FRAMEWORK_SEARCH_PATHS = (
179 | "$(inherited)",
180 | "\"$(SRCROOT)/../../max-sdk/c74support/msp-includes\"",
181 | );
182 | GCC_OPTIMIZATION_LEVEL = 0;
183 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
184 | };
185 | name = Debug;
186 | };
187 | 2FBBEAE208F335360078DB84 /* Release */ = {
188 | isa = XCBuildConfiguration;
189 | baseConfigurationReference = 4F9C3769188168FF00A88A88 /* mbmspcpp.xcconfig */;
190 | buildSettings = {
191 | COMBINE_HIDPI_IMAGES = YES;
192 | COPY_PHASE_STRIP = YES;
193 | FRAMEWORK_SEARCH_PATHS = (
194 | "$(inherited)",
195 | "\"$(SRCROOT)/../../max-sdk/c74support/msp-includes\"",
196 | );
197 | OTHER_LDFLAGS = "$(C74_SYM_LINKER_FLAGS)";
198 | };
199 | name = Release;
200 | };
201 | /* End XCBuildConfiguration section */
202 |
203 | /* Begin XCConfigurationList section */
204 | 2FBBEACF08F335010078DB84 /* Build configuration list for PBXProject "mbmspcpp" */ = {
205 | isa = XCConfigurationList;
206 | buildConfigurations = (
207 | 2FBBEAD008F335010078DB84 /* Debug */,
208 | 2FBBEAD108F335010078DB84 /* Release */,
209 | );
210 | defaultConfigurationIsVisible = 0;
211 | defaultConfigurationName = Release;
212 | };
213 | 2FBBEAE008F335360078DB84 /* Build configuration list for PBXNativeTarget "max-external" */ = {
214 | isa = XCConfigurationList;
215 | buildConfigurations = (
216 | 2FBBEAE108F335360078DB84 /* Debug */,
217 | 2FBBEAE208F335360078DB84 /* Release */,
218 | );
219 | defaultConfigurationIsVisible = 0;
220 | defaultConfigurationName = Release;
221 | };
222 | /* End XCConfigurationList section */
223 | };
224 | rootObject = 089C1669FE841209C02AAC07 /* Project object */;
225 | }
226 |
--------------------------------------------------------------------------------