aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Iannini <lukeiannini@users.sourceforge.net>2009-03-25 00:18:02 +0000
committerLuke Iannini <lukeiannini@users.sourceforge.net>2009-03-25 00:18:02 +0000
commit8083144fbaca0a3511ed7706e81244ca4382859a (patch)
tree68caa3828c138ba9005b1a39ed2348e16871e668
parentfa7f114f6faa8a143992a93b2071dcbd66d92eec (diff)
swap-any and pd~.abstraction
svn path=/trunk/abstractions/sfruit/; revision=10901
-rw-r--r--sfruit/pd~.abstraction-help.pd48
-rw-r--r--sfruit/pd~.abstraction.pd338
-rw-r--r--sfruit/pd~.subprocess.pd35
-rw-r--r--sfruit/pd~.triple-ringmod.pd33
-rw-r--r--sfruit/swap-any-help.pd3
-rw-r--r--sfruit/swap-any.pd12
6 files changed, 469 insertions, 0 deletions
diff --git a/sfruit/pd~.abstraction-help.pd b/sfruit/pd~.abstraction-help.pd
new file mode 100644
index 0000000..b730488
--- /dev/null
+++ b/sfruit/pd~.abstraction-help.pd
@@ -0,0 +1,48 @@
+#N canvas 760 30 409 562 10;
+#X obj 107 202 pd~.abstraction pd~.triple-ringmod 440;
+#X obj 259 122 osc~ 1000;
+#X obj 251 335 dac~;
+#X obj 259 62 osc~ 0.25;
+#X obj 259 82 *~ 500;
+#X obj 259 102 +~ 1000;
+#X msg 125 173 pd dsp \$1;
+#X floatatom 107 66 5 0 0 0 ringmod-freq - -;
+#X obj 207 258 *~ 0;
+#X obj 308 258 *~ 0;
+#X obj 83 303 tgl 15 0 \$0.on.s \$0.on.r On 17 7 0 10 -204786 -1 -1
+0 1;
+#X obj 125 153 r \$0.on.s;
+#X obj 329 230 r \$0.on.s;
+#X text 49 272 Turn it on here;
+#X obj 308 301 *~ 0.1;
+#X obj 207 300 *~ 0.1;
+#X msg 107 119 INLET \$1;
+#X text 32 380 pd~.abstraction tries to make using pd~ more like using
+abstractions in Pd. You can make use of any abstraction with up to
+9 arguments.;
+#X text 31 477 The only limitation is the abstraction must have 1 inlet/inlet~
+and 2 outlet/outlet~s \, but you should have no trouble modifying it
+if you have different needs.;
+#X text 287 536 2009 Luke Iannini;
+#X text 17 9 [pd~.abstraction] - call like [pd~.abstraction myabstraction
+arg1 arg2...arg9] (all args optional);
+#X text 31 429 Messages prepended with INLET will go to the inlet of
+your abstraction. Messages sent to the outlet of your abstraction will
+appear at the outlet of [pd~.abstraction].;
+#X connect 0 1 8 0;
+#X connect 0 2 9 0;
+#X connect 1 0 0 2;
+#X connect 1 0 0 1;
+#X connect 3 0 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 1 0;
+#X connect 6 0 0 0;
+#X connect 7 0 16 0;
+#X connect 8 0 15 0;
+#X connect 9 0 14 0;
+#X connect 11 0 6 0;
+#X connect 12 0 8 1;
+#X connect 12 0 9 1;
+#X connect 14 0 2 1;
+#X connect 15 0 2 0;
+#X connect 16 0 0 0;
diff --git a/sfruit/pd~.abstraction.pd b/sfruit/pd~.abstraction.pd
new file mode 100644
index 0000000..ad8960e
--- /dev/null
+++ b/sfruit/pd~.abstraction.pd
@@ -0,0 +1,338 @@
+#N canvas 868 288 351 414 10;
+#X obj 39 324 pd~;
+#N canvas 209 160 485 630 gather-args 0;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 173 228 list append \$1;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X msg 238 108 1;
+#X obj 128 118 symbol \$1-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X connect 0 0 7 0;
+#X connect 1 1 6 0;
+#X connect 2 0 5 0;
+#X connect 2 1 4 0;
+#X connect 3 0 1 1;
+#X connect 4 0 3 0;
+#X connect 5 0 1 0;
+#X connect 6 0 0 0;
+#X connect 10 0 2 0;
+#X restore 216 89 pd ioTestArgument;
+#X obj 153 111 list append;
+#X obj 153 39 t b b;
+#X obj 180 63 s \$0.check-arg;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X obj 128 118 symbol \$2-test;
+#X msg 238 108 2;
+#X obj 173 228 list append \$2;
+#X connect 0 1 3 0;
+#X connect 1 0 8 0;
+#X connect 1 1 9 0;
+#X connect 2 0 0 1;
+#X connect 3 0 10 0;
+#X connect 7 0 1 0;
+#X connect 8 0 0 0;
+#X connect 9 0 2 0;
+#X connect 10 0 4 0;
+#X restore 216 139 pd ioTestArgument;
+#X obj 153 161 list append;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X msg 238 108 3;
+#X obj 128 118 symbol \$3-test;
+#X obj 173 228 list append \$3;
+#X connect 0 1 3 0;
+#X connect 1 0 9 0;
+#X connect 1 1 8 0;
+#X connect 2 0 0 1;
+#X connect 3 0 10 0;
+#X connect 7 0 1 0;
+#X connect 8 0 2 0;
+#X connect 9 0 0 0;
+#X connect 10 0 4 0;
+#X restore 216 189 pd ioTestArgument;
+#X obj 153 211 list append;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X obj 173 228 list append \$4;
+#X obj 128 118 symbol \$4-test;
+#X msg 238 108 4;
+#X connect 0 1 3 0;
+#X connect 1 0 9 0;
+#X connect 1 1 10 0;
+#X connect 2 0 0 1;
+#X connect 3 0 8 0;
+#X connect 7 0 1 0;
+#X connect 8 0 4 0;
+#X connect 9 0 0 0;
+#X connect 10 0 2 0;
+#X restore 216 239 pd ioTestArgument;
+#X obj 153 261 list append;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X obj 128 118 symbol \$5-test;
+#X msg 238 108 5;
+#X obj 173 228 list append \$5;
+#X connect 0 1 3 0;
+#X connect 1 0 8 0;
+#X connect 1 1 9 0;
+#X connect 2 0 0 1;
+#X connect 3 0 10 0;
+#X connect 7 0 1 0;
+#X connect 8 0 0 0;
+#X connect 9 0 2 0;
+#X connect 10 0 4 0;
+#X restore 216 289 pd ioTestArgument;
+#X obj 153 311 list append;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X obj 128 118 symbol \$6-test;
+#X msg 238 108 6;
+#X obj 173 228 list append \$6;
+#X connect 0 1 3 0;
+#X connect 1 0 8 0;
+#X connect 1 1 9 0;
+#X connect 2 0 0 1;
+#X connect 3 0 10 0;
+#X connect 7 0 1 0;
+#X connect 8 0 0 0;
+#X connect 9 0 2 0;
+#X connect 10 0 4 0;
+#X restore 216 339 pd ioTestArgument;
+#X obj 153 361 list append;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X obj 128 118 symbol \$7-test;
+#X msg 238 108 7;
+#X obj 173 228 list append \$7;
+#X connect 0 1 3 0;
+#X connect 1 0 8 0;
+#X connect 1 1 9 0;
+#X connect 2 0 0 1;
+#X connect 3 0 10 0;
+#X connect 7 0 1 0;
+#X connect 8 0 0 0;
+#X connect 9 0 2 0;
+#X connect 10 0 4 0;
+#X restore 216 389 pd ioTestArgument;
+#X obj 153 411 list append;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X obj 128 118 symbol \$8-test;
+#X msg 238 108 8;
+#X obj 173 228 list append \$8;
+#X connect 0 1 3 0;
+#X connect 1 0 8 0;
+#X connect 1 1 9 0;
+#X connect 2 0 0 1;
+#X connect 3 0 10 0;
+#X connect 7 0 1 0;
+#X connect 8 0 0 0;
+#X connect 9 0 2 0;
+#X connect 10 0 4 0;
+#X restore 216 439 pd ioTestArgument;
+#X obj 153 461 list append;
+#N canvas 0 22 450 300 ioTestArgument 0;
+#X obj 128 168 select s;
+#X obj 128 78 t b b;
+#X obj 238 138 makefilename $%d-test;
+#X obj 173 198 b;
+#X obj 173 258 outlet;
+#X text 19 181 no arg given ->;
+#X text 197 180 <- there is \$1;
+#X obj 128 18 r \$0.check-arg;
+#X obj 128 118 symbol \$9-test;
+#X msg 238 108 9;
+#X obj 173 228 list append \$9;
+#X connect 0 1 3 0;
+#X connect 1 0 8 0;
+#X connect 1 1 9 0;
+#X connect 2 0 0 1;
+#X connect 3 0 10 0;
+#X connect 7 0 1 0;
+#X connect 8 0 0 0;
+#X connect 9 0 2 0;
+#X connect 10 0 4 0;
+#X restore 216 489 pd ioTestArgument;
+#X obj 153 511 list append;
+#X obj 153 533 outlet;
+#X obj 153 14 inlet;
+#X connect 0 0 1 1;
+#X connect 1 0 5 0;
+#X connect 2 0 1 0;
+#X connect 2 1 3 0;
+#X connect 4 0 5 1;
+#X connect 5 0 7 0;
+#X connect 6 0 7 1;
+#X connect 7 0 9 0;
+#X connect 8 0 9 1;
+#X connect 9 0 11 0;
+#X connect 10 0 11 1;
+#X connect 11 0 13 0;
+#X connect 12 0 13 1;
+#X connect 13 0 15 0;
+#X connect 14 0 15 1;
+#X connect 15 0 17 0;
+#X connect 16 0 17 1;
+#X connect 17 0 19 0;
+#X connect 18 0 19 1;
+#X connect 19 0 20 0;
+#X connect 21 0 2 0;
+#X restore 39 57 pd gather-args;
+#N canvas 0 22 621 363 list-l2s 0;
+#X msg 327 196 set %s;
+#X obj 235 244 t a;
+#X obj 118 252 makefilename %s;
+#X obj 96 62 t b a b;
+#X obj 96 283 symbol;
+#X msg 142 22 a b c d 1 2;
+#X obj 118 158 route symbol float;
+#X obj 118 186 symbol;
+#X obj 178 190 makefilename %d;
+#X obj 96 21 inlet;
+#X obj 96 313 outlet;
+#X obj 395 192 makefilename 1%s%%s;
+#X obj 395 165 symbol \$1;
+#X msg 405 123 bang;
+#X obj 395 89 loadbang;
+#X msg 395 228 set set \, adddollsym \$1;
+#X msg 235 265 set \$1 %s;
+#N canvas 0 22 533 407 drip 0;
+#X obj 64 206 list split 1;
+#X obj 64 123 until;
+#X obj 64 181 list append;
+#X obj 194 206 bang;
+#X text 146 90 First store list \, then start the loop;
+#X text 163 118 "until" bangs its output until told to stop by a "bang"
+to its right inlet.;
+#X text 182 160 Store the remaining list.;
+#X text 239 205 third outlet of "split" tells us to stop.;
+#X obj 64 243 outlet;
+#X obj 64 57 inlet;
+#X text 237 44 From list-help.pd;
+#X obj 143 243 outlet;
+#X obj 64 86 t b a;
+#X connect 0 0 8 0;
+#X connect 0 1 2 1;
+#X connect 0 2 3 0;
+#X connect 0 2 11 0;
+#X connect 1 0 2 0;
+#X connect 2 0 0 0;
+#X connect 3 0 1 1;
+#X connect 9 0 12 0;
+#X connect 12 0 1 0;
+#X connect 12 1 2 1;
+#X restore 118 123 pd drip;
+#X obj 447 124 inlet;
+#X text 393 309 by Frank Barknecht;
+#X connect 0 0 2 0;
+#X connect 1 0 16 0;
+#X connect 2 0 1 0;
+#X connect 2 0 4 1;
+#X connect 3 0 4 0;
+#X connect 3 1 17 0;
+#X connect 3 2 0 0;
+#X connect 4 0 10 0;
+#X connect 5 0 3 0;
+#X connect 6 0 7 0;
+#X connect 6 1 8 0;
+#X connect 7 0 2 0;
+#X connect 8 0 2 0;
+#X connect 9 0 3 0;
+#X connect 11 0 15 0;
+#X connect 12 0 11 0;
+#X connect 13 0 12 0;
+#X connect 14 0 12 0;
+#X connect 15 0 16 0;
+#X connect 16 0 2 0;
+#X connect 17 0 6 0;
+#X connect 18 0 12 0;
+#X restore 39 153 pd list-l2s;
+#X obj 102 130 makefilename %c;
+#X msg 102 106 32;
+#X obj 113 274 inlet~;
+#X obj 69 273 inlet;
+#X obj 163 274 inlet~;
+#X obj 39 371 outlet;
+#X obj 89 371 outlet~;
+#X obj 145 371 outlet~;
+#X obj 39 16 loadbang;
+#X obj 39 252 list trim;
+#X obj 39 229 list append pd~.subprocess.pd;
+#X obj 39 206 list prepend pd~ start -send;
+#X msg 39 176 "ARGS \$1";
+#X obj 39 37 t b b b;
+#X msg 169 54 \; pd dsp 1;
+#X connect 0 0 8 0;
+#X connect 0 1 9 0;
+#X connect 0 2 10 0;
+#X connect 1 0 2 0;
+#X connect 2 0 15 0;
+#X connect 3 0 2 1;
+#X connect 4 0 3 0;
+#X connect 5 0 0 0;
+#X connect 6 0 0 0;
+#X connect 7 0 0 1;
+#X connect 11 0 16 0;
+#X connect 12 0 0 0;
+#X connect 13 0 12 0;
+#X connect 14 0 13 0;
+#X connect 15 0 14 0;
+#X connect 16 0 1 0;
+#X connect 16 1 4 0;
+#X connect 16 2 17 0;
diff --git a/sfruit/pd~.subprocess.pd b/sfruit/pd~.subprocess.pd
new file mode 100644
index 0000000..a50e930
--- /dev/null
+++ b/sfruit/pd~.subprocess.pd
@@ -0,0 +1,35 @@
+#N canvas 0 22 267 226 10;
+#N canvas 566 22 423 241 \$0.subprocess 0;
+#X obj 30 29 inlet;
+#X obj 110 29 inlet~;
+#X obj 180 29 inlet~;
+#X obj 30 179 outlet;
+#X obj 110 179 outlet~;
+#X obj 180 179 outlet~;
+#X restore 73 73 pd \$0.subprocess;
+#X obj 132 39 adc~;
+#X obj 131 111 dac~;
+#N canvas 463 357 459 206 init 0;
+#X obj 30 180 s pd-\$0.subprocess;
+#X obj 30 25 r ARGS;
+#X obj 57 141 list trim;
+#X obj 57 78 list prepend obj 30 100;
+#X obj 30 52 t b a;
+#X msg 30 104 connect 0 0 6 0 \, connect 1 0 6 1 \, connect 2 0 6 2
+\, connect 6 0 3 0 \, connect 6 1 4 0 \, connect 6 2 5 0 \, loadbang
+;
+#X connect 1 0 4 0;
+#X connect 2 0 0 0;
+#X connect 3 0 2 0;
+#X connect 4 0 5 0;
+#X connect 4 1 3 0;
+#X connect 5 0 0 0;
+#X restore 97 182 pd init;
+#X obj 73 111 stdout;
+#X obj 73 39 r INLET;
+#X connect 0 0 4 0;
+#X connect 0 1 2 0;
+#X connect 0 2 2 1;
+#X connect 1 0 0 1;
+#X connect 1 1 0 2;
+#X connect 5 0 0 0;
diff --git a/sfruit/pd~.triple-ringmod.pd b/sfruit/pd~.triple-ringmod.pd
new file mode 100644
index 0000000..dc1ce19
--- /dev/null
+++ b/sfruit/pd~.triple-ringmod.pd
@@ -0,0 +1,33 @@
+#N canvas 740 324 394 353 10;
+#X obj 19 168 osc~ 440;
+#X obj 89 168 osc~ 550;
+#X obj 159 168 osc~ 660;
+#X obj 163 322 outlet~;
+#X obj 113 322 outlet~;
+#X obj 34 322 outlet;
+#X obj 249 181 inlet~;
+#X obj 309 181 inlet~;
+#X obj 113 255 *~;
+#X obj 89 114 * 1.25;
+#X obj 159 114 * 1.5;
+#X obj 163 255 *~;
+#X obj 113 207 +~;
+#X obj 20 27 inlet;
+#X obj 59 27 loadbang;
+#X obj 20 57 f \$1;
+#X connect 0 0 12 0;
+#X connect 1 0 12 0;
+#X connect 2 0 12 0;
+#X connect 6 0 8 1;
+#X connect 7 0 11 1;
+#X connect 8 0 4 0;
+#X connect 9 0 1 0;
+#X connect 10 0 2 0;
+#X connect 11 0 3 0;
+#X connect 12 0 8 0;
+#X connect 12 0 11 0;
+#X connect 13 0 15 0;
+#X connect 14 0 15 0;
+#X connect 15 0 0 0;
+#X connect 15 0 9 0;
+#X connect 15 0 10 0;
diff --git a/sfruit/swap-any-help.pd b/sfruit/swap-any-help.pd
new file mode 100644
index 0000000..8e01fab
--- /dev/null
+++ b/sfruit/swap-any-help.pd
@@ -0,0 +1,3 @@
+#N canvas 0 22 450 300 10;
+#X text 31 28 [swap-any] just like [swap] but works on any type of
+atom.;
diff --git a/sfruit/swap-any.pd b/sfruit/swap-any.pd
new file mode 100644
index 0000000..6344747
--- /dev/null
+++ b/sfruit/swap-any.pd
@@ -0,0 +1,12 @@
+#N canvas 1010 279 259 224 10;
+#X obj 39 42 inlet;
+#X obj 120 42 inlet;
+#X obj 39 72 t b a;
+#X obj 178 167 outlet;
+#X obj 39 164 outlet;
+#X obj 39 137 list append \$1;
+#X connect 0 0 2 0;
+#X connect 1 0 5 1;
+#X connect 2 0 5 0;
+#X connect 2 1 3 0;
+#X connect 5 0 4 0;