aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/tutorial
diff options
context:
space:
mode:
Diffstat (limited to 'externals/grill/flext/tutorial')
-rw-r--r--externals/grill/flext/tutorial/build-pd-darwin.sh10
-rw-r--r--externals/grill/flext/tutorial/config-pd-darwin.txt22
-rw-r--r--externals/grill/flext/tutorial/makefile.pd-darwin67
-rwxr-xr-xexternals/grill/flext/tutorial/maxmsp/ex-attr1bin0 -> 1050 bytes
-rwxr-xr-xexternals/grill/flext/tutorial/maxmsp/ex-attr2bin0 -> 1384 bytes
-rwxr-xr-xexternals/grill/flext/tutorial/maxmsp/ex-lib1bin0 -> 1440 bytes
-rw-r--r--externals/grill/flext/tutorial/pd/ex-attr1.pd34
-rw-r--r--externals/grill/flext/tutorial/pd/ex-attr2.pd49
-rw-r--r--externals/grill/flext/tutorial/pd/ex-lib1.pd51
9 files changed, 233 insertions, 0 deletions
diff --git a/externals/grill/flext/tutorial/build-pd-darwin.sh b/externals/grill/flext/tutorial/build-pd-darwin.sh
new file mode 100644
index 00000000..bd31780c
--- /dev/null
+++ b/externals/grill/flext/tutorial/build-pd-darwin.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+. config-pd-darwin.txt
+
+make -f makefile.pd-darwin &&
+{
+ if [ $INSTPATH != "" ]; then
+ echo Now install as root
+ sudo make -f makefile.pd-darwin install
+ fi
+}
diff --git a/externals/grill/flext/tutorial/config-pd-darwin.txt b/externals/grill/flext/tutorial/config-pd-darwin.txt
new file mode 100644
index 00000000..286e9333
--- /dev/null
+++ b/externals/grill/flext/tutorial/config-pd-darwin.txt
@@ -0,0 +1,22 @@
+# flext - C++ layer for Max/MSP and pd (pure data) externals
+# tutorial examples
+# Copyright (c) 2001,2002 Thomas Grill (xovo@gmx.net)
+#
+
+# where are the PD header files?
+# if it is a system include path (like /usr/local/include)
+# you should leave it blank (as e.g. g++ 3.2 complains about it)
+PDPATH=/usr/local/pd/src
+
+# where is the PD executable?
+PD=/usr/local/pd/bin/pd
+
+# where do the flext libraries reside?
+FLEXTPATH=/usr/local/pd/flext
+
+# where should the examples be built? (relative path)
+OUTPATH=./pd-darwin
+
+# where should the examples be installed?
+# (leave blank to omit installation)
+INSTPATH=${FLEXTPATH}/tutorial
diff --git a/externals/grill/flext/tutorial/makefile.pd-darwin b/externals/grill/flext/tutorial/makefile.pd-darwin
new file mode 100644
index 00000000..1f3743ef
--- /dev/null
+++ b/externals/grill/flext/tutorial/makefile.pd-darwin
@@ -0,0 +1,67 @@
+# flext tutorial examples
+#
+# Makefile for gcc @ darwin (OSX)
+#
+# usage: make -f makefile.pd-darwin
+#
+# -----------------------------------------------------
+
+include config-pd-darwin.txt
+
+FLEXTLIB=$(FLEXTPATH)/flext_t.a # take threaded library for all
+
+
+# compiler+linker stuff ### EDIT! ###
+INCLUDES=$(PDPATH)
+LIBPATH=
+FLAGS=-DPD -Dunix -DMACOSX -DFLEXT_THREADS -Wno-unused -Wno-parentheses -Wno-switch -Wstrict-prototypes # -maltivec
+CFLAGS=-O6
+LIBS=m
+LDFLAGS=-bundle -bundle_loader $(PD)
+
+# the rest can stay untouched
+# ----------------------------------------------
+
+# all the source files from the package
+
+EXAMPLES=simple1 simple2 simple3 adv1 attr1 attr2 signal1~ signal2~ lib1 thread1 thread2 # attr2
+
+
+TARGETS=$(patsubst %,$(OUTPATH)/%.pd_darwin,$(EXAMPLES))
+
+# default target
+all: $(OUTPATH) $(TARGETS)
+
+
+$(OUTPATH)/%~.pd_darwin: $(OUTPATH)/%.pd_darwin
+ mv $^ $@
+
+$(SRCS): $(HDRS)
+ touch $@
+
+$(OUTPATH):
+ mkdir $(OUTPATH)
+
+$(OUTPATH)/%.o : %/main.cpp
+ $(CXX) -c $(CFLAGS) $(FLAGS) $(patsubst %,-I%,$(INCLUDES) $(FLEXTPATH)) $< -o $@
+
+$(OUTPATH)/%.pd_darwin : $(OUTPATH)/%.o $(FLEXTLIB)
+ $(CXX) $(LDFLAGS) $(patsubst %,-L%,$(LIBPATH)) $^ $(patsubst %,-l%,$(LIBS)) -o $@
+ chmod 755 $@
+
+
+.PHONY: clean
+clean:
+ rm -f $(OUTPATH)/*.o $(TARGETS)
+
+ifdef INSTPATH
+$(INSTPATH):
+ -mkdir $(INSTPATH)
+
+install:: $(INSTPATH)
+endif
+
+install:: $(patsubst %,$(OUTPATH)/%.pd_darwin,$(EXAMPLES))
+ cp $^ $(INSTPATH)
+
+
diff --git a/externals/grill/flext/tutorial/maxmsp/ex-attr1 b/externals/grill/flext/tutorial/maxmsp/ex-attr1
new file mode 100755
index 00000000..5dc46f10
--- /dev/null
+++ b/externals/grill/flext/tutorial/maxmsp/ex-attr1
Binary files differ
diff --git a/externals/grill/flext/tutorial/maxmsp/ex-attr2 b/externals/grill/flext/tutorial/maxmsp/ex-attr2
new file mode 100755
index 00000000..39256fcb
--- /dev/null
+++ b/externals/grill/flext/tutorial/maxmsp/ex-attr2
Binary files differ
diff --git a/externals/grill/flext/tutorial/maxmsp/ex-lib1 b/externals/grill/flext/tutorial/maxmsp/ex-lib1
new file mode 100755
index 00000000..26f65f2b
--- /dev/null
+++ b/externals/grill/flext/tutorial/maxmsp/ex-lib1
Binary files differ
diff --git a/externals/grill/flext/tutorial/pd/ex-attr1.pd b/externals/grill/flext/tutorial/pd/ex-attr1.pd
new file mode 100644
index 00000000..97bfad84
--- /dev/null
+++ b/externals/grill/flext/tutorial/pd/ex-attr1.pd
@@ -0,0 +1,34 @@
+#N canvas 70 150 690 461 12;
+#X msg 160 85 help;
+#X obj 59 321 attr1 @arg 3;
+#X text 114 298 attribute as a creation arg;
+#X msg 160 123 getattributes;
+#X text 167 344 there is one additional outlet;
+#X text 167 359 for all attribute-enabled objects;
+#X obj 150 392 print;
+#X msg 160 166 getarg;
+#X text 12 117 trigger output;
+#X msg 160 228 arg \$1;
+#X text 230 216 set attribute "arg";
+#X text 295 123 query object attributes (watch console);
+#X text 228 167 query attribute "arg" (watch console);
+#X obj 16 8 cnv 15 550 40 empty empty attr1 10 22 32 24 -260818 -1
+0;
+#X text 175 8 flext tutorial \, (C)2002 Thomas Grill;
+#X text 175 28 http://www.parasitaere-kapazitaeten.net;
+#X text 206 85 get some "help";
+#X text 26 413 result;
+#X obj 23 139 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 32 12 -261681
+-1 -1 49 256;
+#X obj 29 395 nbx 7 16 -1e+37 1e+37 0 0 empty empty empty 0 -6 32 12
+-228992 -1 -1 52 256;
+#X obj 161 206 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 32 12 -261681
+-1 -1 0 256;
+#X connect 0 0 1 0;
+#X connect 1 0 19 0;
+#X connect 1 1 6 0;
+#X connect 3 0 1 0;
+#X connect 7 0 1 0;
+#X connect 9 0 1 0;
+#X connect 18 0 1 0;
+#X connect 20 0 9 0;
diff --git a/externals/grill/flext/tutorial/pd/ex-attr2.pd b/externals/grill/flext/tutorial/pd/ex-attr2.pd
new file mode 100644
index 00000000..4ac89a0e
--- /dev/null
+++ b/externals/grill/flext/tutorial/pd/ex-attr2.pd
@@ -0,0 +1,49 @@
+#N canvas 364 29 605 442 12;
+#X msg 21 84 help;
+#X msg 23 119 getattributes;
+#X text 265 350 there is one additional outlet;
+#X text 265 365 for all attribute-enabled objects;
+#X obj 247 389 print;
+#X msg 23 162 getarg;
+#X text 67 84 get some help;
+#X text 15 314 trigger output;
+#X msg 23 222 arg \$1;
+#X text 160 118 query object attributes (watch console);
+#X msg 96 162 getop;
+#X obj 159 330 attr2 @op +;
+#X text 255 161 query attributes;
+#X text 333 210 set attributes;
+#X msg 169 200 op +;
+#X msg 168 225 op -;
+#X msg 219 200 op *;
+#X msg 269 224 op **;
+#X msg 269 200 op =;
+#X msg 219 224 op /;
+#X msg 158 162 getresult;
+#X obj 16 8 cnv 15 550 40 empty empty attr2 10 22 32 24 -260818 -1
+0;
+#X text 173 8 flext tutorial \, (C)2002 Thomas Grill;
+#X text 173 28 http://www.parasitaere-kapazitaeten.net;
+#X text 91 391 result;
+#X obj 23 336 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 32 12 -261681
+-1 -1 -55 256;
+#X obj 23 201 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 96 12 -261681
+-1 -1 1 256;
+#X obj 151 391 nbx 7 16 -1e+37 1e+37 0 0 empty empty empty 0 -6 32
+12 -228992 -1 -1 -54 256;
+#X connect 0 0 11 0;
+#X connect 1 0 11 0;
+#X connect 5 0 11 0;
+#X connect 8 0 11 0;
+#X connect 10 0 11 0;
+#X connect 11 0 27 0;
+#X connect 11 1 4 0;
+#X connect 14 0 11 0;
+#X connect 15 0 11 0;
+#X connect 16 0 11 0;
+#X connect 17 0 11 0;
+#X connect 18 0 11 0;
+#X connect 19 0 11 0;
+#X connect 20 0 11 0;
+#X connect 25 0 11 0;
+#X connect 26 0 8 0;
diff --git a/externals/grill/flext/tutorial/pd/ex-lib1.pd b/externals/grill/flext/tutorial/pd/ex-lib1.pd
new file mode 100644
index 00000000..83311593
--- /dev/null
+++ b/externals/grill/flext/tutorial/pd/ex-lib1.pd
@@ -0,0 +1,51 @@
+#N canvas 120 205 580 295 12;
+#X msg 106 125 arg \$1;
+#X obj 34 161 lib1.+ @arg 3;
+#X text 105 77 set arg;
+#X msg 289 124 arg \$1;
+#X text 288 78 set arg;
+#X msg 476 127 arg \$1;
+#X text 475 81 set arg;
+#X obj 396 165 lib1.* @arg 2;
+#X obj 214 163 lib1.- @arg 7;
+#X text 29 76 trigger;
+#X text 211 80 trigger;
+#X text 395 81 trigger;
+#X obj 16 8 cnv 15 550 40 empty empty lib1 10 22 0 24 -260818 -1 0
+;
+#X text 173 8 flext tutorial \, (C)2002 Thomas Grill;
+#X text 173 28 http://www.parasitaere-kapazitaeten.net;
+#X obj 34 100 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 0 12 -261681
+-1 -1 0 256;
+#X obj 105 99 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 0 12 -261681
+-1 -1 0 256;
+#X obj 216 100 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 0 12 -261681
+-1 -1 0 256;
+#X obj 288 102 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 0 12 -261681
+-1 -1 0 256;
+#X obj 398 102 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 0 12 -261681
+-1 -1 0 256;
+#X obj 476 105 nbx 4 16 -999 999 0 0 empty empty empty 0 -6 0 12 -261681
+-1 -1 0 256;
+#X obj 34 194 nbx 7 16 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 12
+-228992 -1 -1 0 256;
+#X obj 214 194 nbx 7 16 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 12
+-228992 -1 -1 0 256;
+#X obj 396 194 nbx 7 16 -1e+37 1e+37 0 0 empty empty empty 0 -6 0 12
+-228992 -1 -1 0 256;
+#X text 26 245 In order to use the objects the library must have been
+;
+#X text 27 263 loaded at PD startup (with the "-lib lib1" argument)
+;
+#X connect 0 0 1 0;
+#X connect 1 0 21 0;
+#X connect 3 0 8 0;
+#X connect 5 0 7 0;
+#X connect 7 0 23 0;
+#X connect 8 0 22 0;
+#X connect 15 0 1 0;
+#X connect 16 0 0 0;
+#X connect 17 0 8 0;
+#X connect 18 0 3 0;
+#X connect 19 0 7 0;
+#X connect 20 0 5 0;