pd-list-abs_0.1/0000755000076500007650000000000011516223054012230 5ustar hanshanspd-list-abs_0.1/list-fifo.pd0000644000076500007650000000233610755131205014455 0ustar hanshans#N canvas 300 195 729 624 10; #X obj 268 56 inlet; #X obj 268 184 t a a; #X obj 268 250 list prepend; #X obj 366 302 t b a; #X obj 366 325 list; #X obj 143 379 list; #X obj 143 407 list split 1; #X obj 143 492 list split; #X obj 143 527 outlet; #X obj 71 56 inlet; #X text 380 252 prepend size of list; #X obj 222 528 outlet; #X obj 347 217 list-len; #X obj 366 55 inlet; #X text 419 304 store lists; #X text 256 445 get length of next stored list and split it off.; #X text 270 34 push; #X text 365 35 reset stack; #X obj 366 79 b; #X obj 71 138 route clear; #X obj 143 164 b; #X text 69 34 pop (or clear); #X obj 143 441 t b a; #X obj 143 467 list append; #X obj 71 164 b; #X obj 268 301 list prepend; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 1 1 12 0; #X connect 2 0 25 0; #X connect 3 0 4 0; #X connect 3 1 4 1; #X connect 4 0 5 1; #X connect 4 0 25 1; #X connect 5 0 6 0; #X connect 6 0 22 0; #X connect 6 1 23 1; #X connect 6 2 11 0; #X connect 7 0 8 0; #X connect 7 1 3 0; #X connect 9 0 19 0; #X connect 12 0 2 1; #X connect 13 0 18 0; #X connect 18 0 3 0; #X connect 19 0 24 0; #X connect 19 1 20 0; #X connect 20 0 5 0; #X connect 22 0 23 0; #X connect 22 1 7 1; #X connect 23 0 7 0; #X connect 24 0 3 0; #X connect 25 0 3 0; pd-list-abs_0.1/list-add.pd0000644000076500007650000000026410755131205014260 0ustar hanshans#N canvas 256 135 500 518 10; #X obj 59 31 inlet; #X obj 138 34 inlet; #X obj 59 117 outlet; #X obj 59 85 list-emath +; #X connect 0 0 3 0; #X connect 1 0 3 1; #X connect 3 0 2 0; pd-list-abs_0.1/list-len-help.pd0000644000076500007650000000156311516222410015232 0ustar hanshans#N canvas 0 31 450 300 10; #X obj 123 162 list-len; #X msg 160 132 1 2 3 4 5 6; #X obj 123 232 print Length; #X floatatom 141 197 5 0 0 0 - - -; #X msg 123 77 bang; #X text 47 20 list-len: calculate length of a list.; #X msg 136 101 1; #X text 182 74 empty list; #X text 218 102 convert atom to 1-elem list; #X text 262 133 "real" lists; #X msg 167 101 dog; #N canvas 460 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 65 INLET_0 anything; #X text 12 45 DESCRIPTION calculate length of a list; #X text 12 85 OUTLET_0 float; #X restore 386 261 pd META; #X connect 0 0 2 0; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 4 0 0 0; #X connect 6 0 0 0; #X connect 10 0 0 0; pd-list-abs_0.1/list-nth-help.pd0000644000076500007650000000304311516222410015240 0ustar hanshans#N canvas 0 31 624 592 10; #X floatatom 268 339 5 0 0 1 n - -; #X text 136 110 Inlets: 1) list to look up in; #X text 134 38 look up the nth element in a list. n has to be positive and is zero-based!; #X obj 56 493 list-idx; #X text 53 472 Also see:; #X obj 215 392 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 56 38 list-nth; #X text 193 129 2) number giving position to filter. Zero-based \, positive.; #X msg 201 238 0 1 2 3 4 5 6; #X text 138 83 Argument: ; #X msg 223 300 a b c d e; #X obj 201 425 prepent set; #X msg 201 448; #X msg 149 395 bang; #X msg 218 266 list x y z; #X obj 201 364 list-nth 2; #X text 310 301 non-lists get converted to proper lists.; #X text 134 162 Note: negative postion numbers give no output \, lists longer than the index give a spurious 0 as result \, but also an error in the console: "$x: argument out of range".; #X text 53 520 [list-idx] is more flexible \, but a bit slower.; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION look up the nth element in a list; #X text 12 65 INLET_0 anything; #X text 12 85 OUTLET_0 float symbol pointer; #X restore 538 539 pd META; #X connect 0 0 15 1; #X connect 8 0 15 0; #X connect 10 0 15 0; #X connect 11 0 12 0; #X connect 13 0 11 0; #X connect 14 0 15 0; #X connect 15 0 5 0; #X connect 15 0 11 0; pd-list-abs_0.1/list-invint.pd0000644000076500007650000000100611516222410015025 0ustar hanshans#N canvas 229 30 753 746 10; #X obj 133 132 inlet; #X text 211 80 list-invint: Inverse intervals of a float list; #X msg 76 82 10 11 13 20; #X obj 133 351 outlet; #X obj 133 302 list-map; #X obj 217 319 -; #X obj 242 256 * 2; #X obj 217 289 swap; #X obj 133 166 t a a; #X obj 242 230 list split 1; #X connect 0 0 8 0; #X connect 2 0 8 0; #X connect 4 0 3 0; #X connect 4 1 7 0; #X connect 5 0 4 1; #X connect 6 0 7 1; #X connect 7 0 5 0; #X connect 7 1 5 1; #X connect 8 0 4 0; #X connect 8 1 9 0; #X connect 9 0 6 0; pd-list-abs_0.1/list-dotprod.pd0000644000076500007650000000163210755131205015203 0ustar hanshans#N canvas 0 0 750 558 10; #X obj 59 31 inlet; #X obj 280 39 inlet; #X obj 59 469 outlet; #X obj 78 138 list-drip; #X obj 257 231 list; #X obj 171 259 list-dripslow; #X obj 78 258 route float; #X obj 171 286 route float; #X obj 137 87 s \$0-reset; #X obj 108 359 r \$0-reset; #X obj 59 58 t b a b b; #X text 305 153 list-dotprod; #X text 325 174 dot-product of two lists: res = sum(Xi*Yi); #X obj 108 409 f 0; #X obj 108 384 0; #X obj 59 436 f; #X obj 78 408 +; #X obj 78 322 *; #X obj 78 162 t a b; #X connect 0 0 10 0; #X connect 1 0 4 1; #X connect 3 0 18 0; #X connect 4 0 5 1; #X connect 5 0 7 0; #X connect 6 0 17 0; #X connect 7 0 17 1; #X connect 9 0 14 0; #X connect 10 0 15 0; #X connect 10 1 3 0; #X connect 10 2 4 0; #X connect 10 3 8 0; #X connect 13 0 16 1; #X connect 14 0 13 0; #X connect 15 0 2 0; #X connect 16 0 13 0; #X connect 16 0 15 1; #X connect 17 0 16 0; #X connect 18 0 6 0; #X connect 18 1 5 0; pd-list-abs_0.1/list-centroid-help.pd0000644000076500007650000001251011516222410016255 0ustar hanshans#N struct 1031-centroid float x; #N canvas 0 26 626 572 10; #X floatatom 129 468 5 0 0 0 centroid - -; #X msg 129 363 1 1 1 1; #X msg 245 260 0 0 0 0; #X msg 245 279 -1 1; #X obj 215 469 bng 15 250 50 0 empty empty result_undefined 17 7 1 10 -262144 -1 -1; #X msg 129 245 0 1 0; #X obj 129 439 list-centroid; #X text 63 25 [list-centroid]; #X text 93 90 centroid = sum(mi * i) / sum(mi); #X text 71 49 Calculates the centroid or center of mass of a list of floats according to:; #X text 67 115 where the index i starts from 0; #X msg 247 344 -1 3; #X msg 129 287 1 2 3; #X text 314 270 these two are undefined!; #X msg 129 341 5 5 5; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 193 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 112 73 + 1; #X obj 112 53 random 10; #X obj 134 151 random 10; #X obj 134 171 - 5; #X connect 0 0 8 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 7 0; #X connect 6 0 3 0; #X connect 7 0 6 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X restore 295 337 pd randlist; #X msg 295 363 4; #X msg 295 315 bang; #X msg 129 306 10 20 30; #X msg 129 267 0 2 0 0 0 1; #X msg 248 325 -1 2; #X msg 248 407 -10 9; #X text 305 406 Note: a centroid can be negative!; #X text 75 520 2007 Frank Barknecht; #X text 67 146 Negative values are possible.; #X text 65 174 If all floats add up to 0 \, the result is undefined. In this case \, no result will be sent to the first outlet \, instead the second outlet will bang and a console warning will be issued.; #N canvas 318 53 641 556 graphical-centroid 0; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 193 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 134 151 random 100; #X obj 134 171 / 100; #X msg 112 59 10; #X connect 0 0 6 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 8 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X connect 8 0 3 0; #X restore 79 388 pd randlist; #X msg 79 366 bang; #X obj 79 447 list prepend 0; #X obj 79 470 s \$0-tab; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-tab 10 float 0; #X coords 0 1 9 0 200 140 1; #X restore 79 105 graph; #N canvas 0 0 694 427 \$0-c 0; #X scalar 1031-centroid 0 \;; #X coords 0 0 18 140 200 140 1; #X restore 79 105 pd \$0-c; #X floatatom 339 346 5 0 0 0 - - -; #X obj 339 313 list-centroid; #N canvas 336 319 712 355 \$0-centroid 0; #X obj 19 329 outlet; #X obj 19 86 route change; #X obj 19 62 struct \$0-centroid float x; #X obj 228 62 drawpolygon 900 2 x 0 x 140; #X connect 1 0 0 0; #X connect 2 0 1 0; #X restore 453 315 pd \$0-centroid; #X obj 339 367 set \$0-centroid x; #N canvas 0 0 503 429 create 0; #X msg 242 258 traverse pd-\$1 \, bang; #X obj 242 238 symbol \$0-c; #X msg 107 79 0; #X obj 242 278 pointer; #X msg 243 178 clear; #X obj 243 205 s pd-\$0-c; #X obj 107 302 append \$0-centroid x; #X obj 107 114 t a b b; #X obj 107 50 loadbang; #X obj 107 326 outlet; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 2 0 7 0; #X connect 3 0 6 1; #X connect 4 0 5 0; #X connect 6 0 9 0; #X connect 7 0 6 0; #X connect 7 1 1 0; #X connect 7 2 4 0; #X connect 8 0 2 0; #X restore 468 339 pd create; #X obj 339 127 metro 50; #X obj 339 102 tgl 15 0 empty empty show-centroid 17 7 1 10 -258699 -262144 -1 0 1; #N canvas 473 338 450 300 countto 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 174 113 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 116 until; #X obj 131 96 t a b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 6 0; #X connect 5 0 0 0; #X connect 6 0 5 0; #X connect 6 1 2 0; #X restore 362 195 pd countto; #X obj 362 219 tabread \$0-tab; #X obj 362 249 list prepend; #X obj 452 249 t a; #X msg 362 175 10; #X obj 339 148 t b b b; #X obj 339 274 list; #X text 77 30 Switch on the "show-centroid"-metro and play with the values in the array.; #X obj 79 344 loadbang; #X msg 79 414 0.56 0.59 0.8 0.98 0.3 0.64 0.96 0.57 0.55 0.08; #X connect 0 0 22 0; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 6 0 9 0; #X connect 7 0 6 0; #X connect 8 0 9 1; #X connect 10 0 9 1; #X connect 11 0 18 0; #X connect 12 0 11 0; #X connect 13 0 14 0; #X connect 14 0 15 0; #X connect 15 0 16 0; #X connect 15 0 19 1; #X connect 16 0 15 1; #X connect 17 0 13 0; #X connect 18 0 19 0; #X connect 18 1 17 0; #X connect 18 2 15 1; #X connect 19 0 7 0; #X connect 21 0 1 0; #X connect 22 0 2 0; #X restore 392 510 pd graphical-centroid; #X text 321 510 Also see:; #N canvas 520 35 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 75 INLET_0 list; #X text 12 95 OUTLET_0 float; #X text 12 115 OUTLET_1 bang; #X text 12 45 DESCRIPTION calculate the centroid or center of mass of a list of floats; #X restore 544 540 pd META; #X connect 1 0 6 0; #X connect 2 0 6 0; #X connect 3 0 6 0; #X connect 5 0 6 0; #X connect 6 0 0 0; #X connect 6 1 4 0; #X connect 11 0 6 0; #X connect 12 0 6 0; #X connect 14 0 6 0; #X connect 15 0 16 0; #X connect 16 0 6 0; #X connect 17 0 15 0; #X connect 18 0 6 0; #X connect 19 0 6 0; #X connect 20 0 6 0; #X connect 21 0 6 0; pd-list-abs_0.1/list-round.pd0000644000076500007650000000157710755131205014667 0ustar hanshans#N canvas 402 152 538 563 10; #X obj 74 453 list; #X obj 97 409 list prepend; #X obj 74 104 t b a b; #X text 172 135 "Drip" (serialize) the list; #X text 121 450 Final result is built here; #X obj 74 35 inlet; #X obj 74 484 outlet; #X text 255 413 Repack the list; #X obj 193 410 t a; #X obj 97 134 list-drip; #X obj 97 230 route float; #X text 298 308 round it; #X obj 281 166 inlet; #X obj 281 232 f \$1; #X obj 294 201 loadbang; #X obj 281 254 select 0; #X msg 281 274 1; #X obj 97 306 expr int(0.5 + $f1/$f2)*$f2; #X connect 0 0 6 0; #X connect 1 0 0 1; #X connect 1 0 8 0; #X connect 2 0 0 0; #X connect 2 1 9 0; #X connect 2 2 1 1; #X connect 5 0 2 0; #X connect 8 0 1 1; #X connect 9 0 10 0; #X connect 10 0 17 0; #X connect 10 1 1 0; #X connect 12 0 13 0; #X connect 13 0 15 0; #X connect 14 0 13 0; #X connect 15 0 16 0; #X connect 15 1 17 1; #X connect 16 0 17 1; #X connect 17 0 1 0; pd-list-abs_0.1/list-iter.pd0000644000076500007650000000171511201077563014500 0ustar hanshans#N canvas 172 34 839 437 10; #X floatatom 343 76 5 0 0 2 change-size - -; #X obj 299 41 inlet; #X obj 138 51 inlet; #X obj 138 343 outlet; #X obj 299 75 f \$1; #X obj 138 174 list prepend; #X obj 138 102 t b a; #X obj 138 129 until; #X obj 219 261 t b a; #X text 351 107 reset (b) and set new length (f).; #X text 327 216 Lists shorter than group size are stored for next list. Lists longer get split at group size \, shorter part is put out \, longer part is re-evaluated.; #X obj 251 283 route bang; #X obj 138 219 list split 1; #X obj 331 186 max 1; #X obj 299 109 t b f; #X obj 343 41 loadbang; #X connect 0 0 14 0; #X connect 1 0 4 0; #X connect 2 0 6 0; #X connect 4 0 14 0; #X connect 5 0 12 0; #X connect 6 0 7 0; #X connect 6 1 5 1; #X connect 7 0 5 0; #X connect 8 0 7 1; #X connect 8 1 11 0; #X connect 11 1 3 0; #X connect 12 0 3 0; #X connect 12 1 5 1; #X connect 12 2 8 0; #X connect 13 0 12 1; #X connect 14 0 5 1; #X connect 14 1 13 0; #X connect 15 0 4 0; pd-list-abs_0.1/list-mean-help.pd0000644000076500007650000001172411516222410015374 0ustar hanshans#N struct 1114-dial float y; #N canvas 0 31 534 466 10; #X obj 98 306 list-mean; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 193 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 112 73 + 1; #X obj 112 53 random 10; #X obj 134 151 random 10; #X obj 134 171 - 5; #X connect 0 0 8 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 7 0; #X connect 6 0 3 0; #X connect 7 0 6 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X restore 153 236 pd randlist; #X msg 153 214 bang; #X floatatom 98 340 5 0 0 1 arithmetric_mean - -; #X text 86 22 [list-mean]; #X msg 153 262 4 -3 -4 1 2 -3; #X msg 98 159 1 2 3 4; #X msg 98 185 any symbols 1 2 3 4 are ignored; #X text 96 117 Non-floats in a list are silently dropped.; #X text 114 82 mean = sum(f[i]) / total number of floats; #X text 96 42 Calculates the arithmetric mean of a list (of floats) according to:; #N canvas 318 53 648 574 graphical-mean 0; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 213 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 134 151 random 100; #X msg 112 59 10; #X obj 134 191 / 10; #X obj 134 170 + 1; #X connect 0 0 6 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 7 0; #X connect 6 0 9 0; #X connect 7 0 3 0; #X connect 8 0 2 0; #X connect 9 0 8 0; #X restore 79 388 pd randlist; #X msg 79 366 bang; #X obj 79 447 list prepend 0; #X obj 79 500 s \$0-tab; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-tab 10 float 0; #X coords 0 10 9 0 200 140 1; #X restore 75 152 graph; #N canvas 0 0 916 918 \$0-c 0; #X scalar 1114-dial 0 \;; #X coords 0 0 200 140 200 140 1; #X restore 75 152 pd \$0-c; #N canvas 0 0 503 429 create 0; #X msg 242 258 traverse pd-\$1 \, bang; #X obj 242 238 symbol \$0-c; #X msg 107 79 0; #X obj 242 278 pointer; #X msg 243 178 clear; #X obj 243 205 s pd-\$0-c; #X obj 107 114 t a b b; #X obj 107 50 loadbang; #X obj 107 326 outlet; #X obj 107 302 append \$0-dial y; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 2 0 6 0; #X connect 3 0 9 1; #X connect 4 0 5 0; #X connect 6 0 9 0; #X connect 6 1 1 0; #X connect 6 2 4 0; #X connect 7 0 2 0; #X connect 9 0 8 0; #X restore 468 339 pd create; #X obj 339 127 metro 50; #X obj 339 102 tgl 15 0 empty empty show-mean 17 7 1 10 -258699 -262144 -1 0 1; #N canvas 473 338 450 300 countto 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 174 113 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 116 until; #X obj 131 96 t a b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 6 0; #X connect 5 0 0 0; #X connect 6 0 5 0; #X connect 6 1 2 0; #X restore 362 195 pd countto; #X obj 362 219 tabread \$0-tab; #X obj 362 249 list prepend; #X obj 452 249 t a; #X msg 362 175 10; #X obj 339 148 t b b b; #X obj 339 274 list; #X obj 79 344 loadbang; #X msg 79 414 0.6 6.9 3.6 5.6 0.7 3.8 3.9 5.3 9.2 9.2; #X text 77 30 Switch on the "show"-metro and play with the values in the array.; #N canvas 336 319 712 355 \$0-dial 0; #X obj 19 119 outlet; #X obj 19 86 route change; #X obj 19 62 struct \$0-dial float y; #X obj 229 62 drawpolygon 900 2 0 y 200 y; #X connect 1 0 0 0; #X connect 2 0 1 0; #X restore 453 315 pd \$0-dial; #X msg 213 469 bounds 0 10 9 0; #X obj 213 449 loadbang; #X obj 339 313 list-mean; #X obj 339 388 set \$0-dial y; #X floatatom 339 339 5 0 0 0 - - -; #X msg 92 469 const 5; #N canvas 0 0 299 354 scale 0; #X msg 74 83 10 \$1; #X obj 74 107 -; #X obj 74 158 * 140; #X obj 74 134 / 20; #X obj 74 49 inlet; #X obj 74 182 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 5 0; #X connect 3 0 2 0; #X connect 4 0 0 0; #X restore 339 363 pd scale; #X connect 0 0 17 0; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 6 0 23 1; #X connect 7 0 14 0; #X connect 8 0 7 0; #X connect 9 0 10 0; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 11 0 15 1; #X connect 12 0 11 1; #X connect 13 0 9 0; #X connect 14 0 15 0; #X connect 14 1 13 0; #X connect 14 2 11 1; #X connect 15 0 22 0; #X connect 16 0 1 0; #X connect 17 0 2 0; #X connect 19 0 23 1; #X connect 20 0 3 0; #X connect 21 0 20 0; #X connect 22 0 24 0; #X connect 24 0 26 0; #X connect 25 0 3 0; #X connect 26 0 23 0; #X restore 97 363 pd graphical-mean; #X text 101 394 More means:; #X obj 192 394 list-geometric-mean; #X obj 192 415 list-harmonic-mean; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 115 AUTHOR Frank Barknecht; #X text 12 135 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 75 INLET_0 anything; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION calculate the arithmetric mean of a list of floats; #X text 12 95 OUTLET_0 float; #X restore 466 421 pd META; #X connect 0 0 3 0; #X connect 1 0 5 0; #X connect 2 0 1 0; #X connect 5 0 0 0; #X connect 6 0 0 0; #X connect 7 0 0 0; pd-list-abs_0.1/list-random-help.pd0000644000076500007650000000402711516222410015732 0ustar hanshans#N canvas 0 31 634 420 10; #N canvas 435 477 293 176 show 0; #X obj 77 36 inlet; #X obj 77 109 outlet; #X obj 77 60 list prepend set; #X obj 77 85 list trim; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X restore 105 331 pd show; #X msg 105 194 bang; #X msg 150 194 seed 123; #X floatatom 148 243 5 0 0 2 range - -; #X floatatom 191 243 5 0 0 2 length - -; #X text 63 26 [list-random]; #X obj 105 265 list-random 5; #X text 101 119 A seed-message is used to seed the random number generator. ; #X obj 172 140 random; #X text 103 141 Also see:; #X text 103 55 generates a list of pseudorandom integers from 0 to N-1 \, where N is the first creation argument. The second creation argument specifies the length of the list (minimum and default length is 1).; #N canvas 435 477 293 176 show 0; #X obj 77 36 inlet; #X obj 77 109 outlet; #X obj 77 60 list prepend set; #X obj 77 85 list trim; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X restore 289 331 pd show; #X msg 289 351; #X msg 289 194 bang; #X msg 334 194 seed 123; #X floatatom 346 243 5 0 0 2 range - -; #X floatatom 403 243 5 0 0 2 length - -; #X obj 289 265 list-random 10 20; #X msg 114 307 bang; #X msg 297 308 bang; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION generates a list of pseudorandom integers from 0 to N-1 \, where N is the first creation argument; #X text 12 5 KEYWORDS control list_op random; #X text 12 75 INLET_0 bang seed; #X text 12 95 INLET_1 float; #X text 12 115 INLET_2 float; #X text 12 135 OUTLET_0 list float; #X restore 567 386 pd META; #X msg 105 351; #X connect 0 0 21 0; #X connect 1 0 6 0; #X connect 2 0 6 0; #X connect 3 0 6 1; #X connect 4 0 6 2; #X connect 6 0 0 0; #X connect 11 0 12 0; #X connect 13 0 17 0; #X connect 14 0 17 0; #X connect 15 0 17 1; #X connect 16 0 17 2; #X connect 17 0 11 0; #X connect 18 0 0 0; #X connect 19 0 11 0; pd-list-abs_0.1/list-find.pd0000644000076500007650000000250110755131205014444 0ustar hanshans#N canvas 372 65 643 444 10; #X obj 91 359 f; #X obj 91 51 inlet; #X obj 183 47 inlet; #X obj 91 396 outlet; #X text 60 27 value to find; #X obj 91 180 list-drip; #X obj 91 210 t a b; #X obj 91 158 list; #X text 180 27 list to search in; #X text 208 103 [list-find] Find positions of a value (symbol or float) in a list.; #X obj 91 293 compare-any; #X obj 91 317 select 1; #N canvas 0 0 450 300 count 0; #X obj 120 148 f 0; #X obj 148 149 + 1; #X obj 163 100 0; #X obj 117 24 inlet; #X obj 119 176 outlet; #X obj 181 25 inlet; #X obj 114 47 b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 3 0 6 0; #X connect 5 0 2 0; #X connect 6 0 0 0; #X restore 121 245 pd count; #X obj 91 80 t b a b b; #X obj 176 395 outlet; #X obj 248 351 + 1; #X obj 176 375 f; #X obj 219 350 f 1; #X msg 235 317 1; #X msg 199 318 0; #X connect 0 0 3 0; #X connect 1 0 13 0; #X connect 2 0 7 1; #X connect 5 0 6 0; #X connect 5 1 16 0; #X connect 6 0 10 0; #X connect 6 1 12 0; #X connect 7 0 5 0; #X connect 10 0 11 0; #X connect 11 0 0 0; #X connect 11 0 17 0; #X connect 12 0 0 1; #X connect 13 0 7 0; #X connect 13 1 10 1; #X connect 13 2 12 1; #X connect 13 3 18 0; #X connect 13 3 19 0; #X connect 15 0 17 1; #X connect 16 0 14 0; #X connect 17 0 16 1; #X connect 17 0 15 0; #X connect 18 0 17 1; #X connect 19 0 16 1; pd-list-abs_0.1/list-group.pd0000644000076500007650000000174411201077563014673 0ustar hanshans#N canvas 172 34 832 393 10; #X floatatom 385 85 5 0 0 2 change-size - -; #X obj 341 40 inlet; #X obj 180 60 inlet; #X obj 180 302 outlet; #X obj 341 84 f \$1; #X obj 180 183 list prepend; #X obj 180 111 t b a; #X obj 180 138 until; #X obj 261 270 t b a; #X obj 261 153 list prepend; #X obj 341 118 t b b f; #X text 393 116 reset (b) and set new length (f).; #X text 369 225 Lists shorter than group size are stored for next list. Lists longer get split at group size \, shorter part is put out \, longer part is re-evaluated.; #X obj 395 40 loadbang; #X obj 180 228 list split 1; #X obj 387 154 max 1; #X connect 0 0 10 0; #X connect 1 0 4 0; #X connect 2 0 6 0; #X connect 4 0 10 0; #X connect 5 0 14 0; #X connect 6 0 7 0; #X connect 6 1 9 0; #X connect 7 0 5 0; #X connect 8 0 7 1; #X connect 8 1 9 1; #X connect 9 0 5 1; #X connect 10 0 5 1; #X connect 10 1 9 1; #X connect 10 2 15 0; #X connect 13 0 4 0; #X connect 14 0 3 0; #X connect 14 1 5 1; #X connect 14 2 8 0; #X connect 15 0 14 1; pd-list-abs_0.1/list-seek.pd0000644000076500007650000000210610755131205014454 0ustar hanshans#N canvas 443 126 634 604 10; #X obj 105 76 inlet; #X obj 300 74 inlet; #X obj 135 501 outlet; #X obj 300 500 outlet; #X text 349 72 list to manipulate; #X text 298 523 bang when done or index out of range; #X text 134 522 output value; #X obj 135 416 list; #X obj 300 438 bang; #X obj 135 317 moses; #X obj 127 239 + 1; #X msg 105 191 0; #X obj 165 294 list-len; #X obj 135 440 list-idx; #X obj 135 391 t b a; #X obj 89 239 f; #X obj 89 317 moses; #X obj 300 103 t b a a; #X obj 105 109 route set; #X obj 105 139 route bang; #X text 31 23 bang for next item \, float for index or set for no-output. ; #X connect 0 0 18 0; #X connect 1 0 17 0; #X connect 7 0 13 0; #X connect 8 0 3 0; #X connect 9 0 14 0; #X connect 9 1 8 0; #X connect 10 0 15 1; #X connect 11 0 15 1; #X connect 12 0 9 1; #X connect 13 0 2 0; #X connect 14 0 7 0; #X connect 14 1 13 1; #X connect 15 0 10 0; #X connect 15 0 16 0; #X connect 16 0 8 0; #X connect 16 1 9 0; #X connect 17 0 11 0; #X connect 17 1 12 0; #X connect 17 2 7 1; #X connect 18 0 19 0; #X connect 18 1 15 0; #X connect 19 0 11 0; #X connect 19 1 15 1; pd-list-abs_0.1/prepent-help.pd0000644000076500007650000000316511516222410015160 0ustar hanshans#N canvas 0 31 639 361 10; #X obj 429 170 prepent set; #X msg 429 225; #X floatatom 429 92 5 0 0 0 - - -; #X msg 501 142 set; #X msg 531 142 add2; #X msg 439 204 set; #X floatatom 49 67 5 0 0 0 - - -; #X obj 49 127 prepent x; #X obj 233 131 list prepend x; #X obj 233 240 print prepend_x; #X obj 49 241 print prepent_x; #X text 43 15 [prepent] is a shortcut for [list prepend]--[list trim] ; #X obj 233 267 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 49 267 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X text 231 105 Without trim:; #X obj 233 167 route x list; #X obj 272 196 print prepend_list; #X obj 49 168 route x list; #X obj 88 198 print prepent_list; #X obj 272 216 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 88 218 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #N canvas 465 89 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 65 INLET_0 anything; #X text 12 105 OUTLET_0 anything; #X text 12 45 DESCRIPTION a shortcut for [list prepend]--[list trim] ; #X text 12 85 INLET_1 anything; #X restore 552 320 pd META; #X connect 0 0 1 0; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 4 0 0 1; #X connect 5 0 1 0; #X connect 6 0 7 0; #X connect 6 0 8 0; #X connect 7 0 17 0; #X connect 8 0 15 0; #X connect 15 0 9 0; #X connect 15 0 12 0; #X connect 15 1 16 0; #X connect 15 1 19 0; #X connect 17 0 10 0; #X connect 17 0 13 0; #X connect 17 1 18 0; #X connect 17 1 20 0; pd-list-abs_0.1/list-fifo-delim-help.pd0000644000076500007650000000414411516222410016465 0ustar hanshans#N canvas 0 26 697 652 10; #X obj 193 561 print; #X obj 193 357 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X msg 300 383 1 2 3 4 5; #X symbolatom 313 404 10 0 0 0 - - -; #X floatatom 326 421 5 0 0 0 - - -; #X symbolatom 420 450 10 0 0 0 - - -; #X msg 110 438 clear; #X obj 293 535 bng 15 250 50 0 empty empty EOL 17 7 1 10 -262144 -1 -1; #X text 118 201 CAUTION:; #X text 119 219 When a message contains the delimiter symbol \, it is falsely split into two parts.; #X text 119 254 Default delimiter between messages is the empty symbol. You can customize this with the first argument:; #X text 62 423 clear stored list; #X text 164 340 trigger output; #X text 289 341 store lists or elements; #X text 417 433 manually change delimiter symbol; #X text 105 606 Based on a patch and idea by Roman Haefli 2006; #X msg 291 363 eins due trois four; #X text 82 55 [list-fifo-delim]; #X text 120 81 [list-fifo-delim] stores incoming (list-)messages and outputs them one by one on incoming bangs in the order they arrive like a FIFO: first in \, first out.; #X text 118 136 [list-fifo-delim] can be used to limit the number of messages passing during a certain time (might be usefull to limit the used network bandwidth). It also can be used as a sequencer.; #X obj 122 297 list-fifo-delim MY_DELIMITER; #X obj 193 502 list-fifo-delim; #X text 58 16 This object is obsolete! Use [list-fifo] instead!; #N canvas 491 26 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 195 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 135 OUTLET_0 list; #X text 12 45 DESCRIPTION This object is obsolete! Use [list-fifo] instead!; #X text 12 5 KEYWORDS control list_op deprecated; #X text 12 75 INLET_0 bang clear; #X text 12 115 INLET_2 symbol; #X text 12 95 INLET_1 anything; #X text 12 155 OUTLET_1 bang; #X text 12 174 AUTHOR Frank Barknecht \, Roman Haefli; #X restore 578 600 pd META; #X connect 1 0 21 0; #X connect 2 0 21 1; #X connect 3 0 21 1; #X connect 4 0 21 1; #X connect 5 0 21 2; #X connect 6 0 21 0; #X connect 16 0 21 1; #X connect 21 0 0 0; #X connect 21 1 7 0; pd-list-abs_0.1/list-swap.pd0000644000076500007650000000356511201077563014514 0ustar hanshans#N canvas 401 249 706 675 10; #X obj 32 27 inlet; #X obj 98 546 outlet; #X obj 217 48 inlet; #X obj 355 59 inlet; #X obj 260 429 list-replace; #X obj 113 400 list-idx; #X obj 260 385 list-idx; #X obj 196 101 f \$1; #X obj 334 105 f \$2; #X obj 113 446 list-replace; #X obj 224 126 s \$0-idx-1; #X obj 358 165 s \$0-idx-2; #X obj 275 323 r \$0-idx-1; #X obj 158 333 r \$0-idx-2; #N canvas 229 564 450 300 \$0-test-range 0; #X obj 46 38 inlet; #X obj 181 48 inlet; #X obj 307 44 inlet; #X obj 46 69 list-len; #X obj 185 119 abs; #X obj 323 121 abs; #X obj 185 95 moses 0; #X obj 323 96 moses 0; #X obj 224 119 + 1; #X obj 362 121 + 1; #X obj 76 118 t f f; #X obj 231 217 &&; #X obj 326 171 >=; #X obj 183 175 >=; #X obj 235 252 outlet; #X connect 0 0 3 0; #X connect 1 0 6 0; #X connect 2 0 7 0; #X connect 3 0 10 0; #X connect 4 0 13 1; #X connect 5 0 12 1; #X connect 6 0 4 0; #X connect 6 1 8 0; #X connect 7 0 5 0; #X connect 7 1 9 0; #X connect 8 0 13 1; #X connect 9 0 12 1; #X connect 10 0 13 0; #X connect 10 1 12 0; #X connect 11 0 14 0; #X connect 12 0 11 1; #X connect 13 0 11 0; #X restore 150 170 pd \$0-test-range; #X obj 85 228 == 0; #X obj 52 253 spigot; #X obj 159 227 spigot; #X obj 32 49 t a a b; #X obj 162 250 t a a a; #X connect 0 0 18 0; #X connect 2 0 7 1; #X connect 3 0 8 1; #X connect 4 0 9 2; #X connect 5 0 9 0; #X connect 6 0 4 0; #X connect 7 0 14 1; #X connect 7 0 10 0; #X connect 8 0 14 2; #X connect 8 0 11 0; #X connect 9 0 1 0; #X connect 12 0 6 1; #X connect 12 0 9 1; #X connect 13 0 5 1; #X connect 13 0 4 1; #X connect 14 0 15 0; #X connect 14 0 17 1; #X connect 15 0 16 1; #X connect 16 0 1 0; #X connect 17 0 19 0; #X connect 18 0 17 0; #X connect 18 0 16 0; #X connect 18 1 14 0; #X connect 18 2 8 0; #X connect 18 2 7 0; #X connect 19 0 5 0; #X connect 19 1 6 0; #X connect 19 2 4 2; pd-list-abs_0.1/list-filter.pd0000644000076500007650000000157710755131205015025 0ustar hanshans#N canvas 728 203 519 432 10; #X obj 86 33 inlet; #X obj 275 52 inlet; #X obj 151 352 outlet; #X obj 169 268 outlet; #X obj 169 215 list-drip; #X obj 326 250 list prepend; #X obj 405 220 t a; #X obj 86 58 route bang; #X obj 86 83 b; #X obj 151 84 t b a; #X obj 151 124 list; #X obj 275 111 select 0; #X obj 326 133 b; #X obj 326 209 list; #X obj 169 244 t a a; #X obj 151 317 list; #X obj 151 155 t b a b b b; #X connect 0 0 7 0; #X connect 1 0 11 0; #X connect 4 0 14 0; #X connect 5 0 6 0; #X connect 5 0 15 1; #X connect 6 0 5 1; #X connect 7 0 8 0; #X connect 7 1 9 0; #X connect 8 0 10 0; #X connect 9 0 10 0; #X connect 9 1 10 1; #X connect 10 0 16 0; #X connect 11 1 12 0; #X connect 12 0 13 0; #X connect 13 0 5 0; #X connect 14 0 3 0; #X connect 14 1 13 1; #X connect 15 0 2 0; #X connect 16 0 15 0; #X connect 16 1 4 0; #X connect 16 2 15 1; #X connect 16 3 5 1; #X connect 16 4 13 1; pd-list-abs_0.1/list-lifo.pd0000644000076500007650000000233510755131205014462 0ustar hanshans#N canvas 300 195 729 624 10; #X obj 268 56 inlet; #X obj 268 184 t a a; #X obj 268 250 list prepend; #X obj 366 302 t b a; #X obj 366 325 list; #X obj 143 379 list; #X obj 143 407 list split 1; #X obj 143 492 list split; #X obj 143 527 outlet; #X obj 71 56 inlet; #X text 380 252 prepend size of list; #X obj 222 528 outlet; #X obj 347 217 list-len; #X obj 366 55 inlet; #X text 419 304 store lists; #X text 256 445 get length of next stored list and split it off.; #X text 270 34 push; #X text 365 35 reset stack; #X obj 366 79 b; #X obj 71 138 route clear; #X obj 143 164 b; #X text 69 34 pop (or clear); #X obj 143 441 t b a; #X obj 143 467 list append; #X obj 268 301 list append; #X obj 71 164 b; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 1 1 12 0; #X connect 2 0 24 0; #X connect 3 0 4 0; #X connect 3 1 4 1; #X connect 4 0 5 1; #X connect 4 0 24 1; #X connect 5 0 6 0; #X connect 6 0 22 0; #X connect 6 1 23 1; #X connect 6 2 11 0; #X connect 7 0 8 0; #X connect 7 1 3 0; #X connect 9 0 19 0; #X connect 12 0 2 1; #X connect 13 0 18 0; #X connect 18 0 3 0; #X connect 19 0 25 0; #X connect 19 1 20 0; #X connect 20 0 5 0; #X connect 22 0 23 0; #X connect 22 1 7 1; #X connect 23 0 7 0; #X connect 24 0 3 0; #X connect 25 0 3 0; pd-list-abs_0.1/list-wrandom.pd0000644000076500007650000000336511350242556015210 0ustar hanshans#N canvas 417 418 656 550 10; #X obj 102 44 inlet; #X obj 472 418 table \$0-weights; #X obj 202 229 s \$0-weights; #X obj 202 176 change -1; #X msg 202 201 resize \$1; #X obj 124 226 f; #X obj 124 251 until; #X obj 102 373 f; #X obj 124 316 f 0; #X obj 150 316 + 1; #X obj 175 347 tabread \$0-weights; #X msg 140 290 0; #X obj 102 166 t b b b a; #X obj 102 442 outlet; #X obj 172 201 + 1; #X obj 175 377 <=; #X obj 155 407 select 0; #X obj 202 151 r \$0-len; #X obj 102 112 random 10000; #X obj 102 136 * 0.0001; #X obj 319 44 inlet; #X msg 451 112 0; #X obj 319 69 t a b a; #X obj 319 219 f 0; #X obj 347 219 + 1; #X obj 319 306 s \$0-weights; #X msg 452 219 normalize 1; #X obj 544 131 s \$0-len; #X obj 535 158 outlet; #X obj 535 105 list length; #X obj 379 219 +; #X obj 410 219 f; #X obj 319 251 pack 0 0; #X obj 319 171 t b a; #X obj 319 146 list-drip; #X connect 0 0 18 0; #X connect 3 0 4 0; #X connect 3 0 14 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 6 0 8 0; #X connect 7 0 13 0; #X connect 8 0 10 0; #X connect 8 0 7 1; #X connect 8 0 9 0; #X connect 9 0 8 1; #X connect 10 0 15 0; #X connect 11 0 8 1; #X connect 12 0 7 0; #X connect 12 1 5 0; #X connect 12 2 11 0; #X connect 12 3 15 1; #X connect 14 0 5 1; #X connect 15 0 16 0; #X connect 16 0 6 1; #X connect 17 0 3 0; #X connect 18 0 19 0; #X connect 19 0 12 0; #X connect 20 0 22 0; #X connect 21 0 23 1; #X connect 21 0 30 1; #X connect 22 0 34 0; #X connect 22 1 21 0; #X connect 22 2 29 0; #X connect 23 0 24 0; #X connect 23 0 32 0; #X connect 24 0 23 1; #X connect 26 0 25 0; #X connect 29 0 27 0; #X connect 29 0 28 0; #X connect 30 0 31 0; #X connect 30 0 32 1; #X connect 31 0 30 1; #X connect 32 0 25 0; #X connect 33 0 23 0; #X connect 33 1 30 0; #X connect 34 0 33 0; #X connect 34 1 26 0; pd-list-abs_0.1/list-compare.pd0000644000076500007650000000323610755131205015160 0ustar hanshans#N canvas 368 289 390 300 10; #X obj 222 58 inlet; #X obj 94 57 inlet; #X obj 94 199 outlet; #N canvas 380 394 492 461 compare-elements 0; #X obj 83 135 list-dripslow; #X obj 83 226 compare-any; #X obj 83 157 t a b; #X obj 264 48 inlet; #X obj 65 36 inlet; #X obj 241 111 list; #X obj 83 112 until; #X obj 83 256 select 0; #X obj 83 288 t b b; #X msg 83 317 0; #X obj 65 379 outlet; #X obj 65 356 f 1; #X obj 65 59 t b b a b b; #X msg 125 319 1; #X obj 155 192 list-dripslow; #X connect 0 0 2 0; #X connect 0 1 6 1; #X connect 1 0 7 0; #X connect 2 0 1 0; #X connect 2 1 14 0; #X connect 3 0 5 1; #X connect 4 0 12 0; #X connect 5 0 14 1; #X connect 6 0 0 0; #X connect 7 0 8 0; #X connect 8 0 9 0; #X connect 8 1 6 1; #X connect 9 0 11 1; #X connect 11 0 10 0; #X connect 12 0 11 0; #X connect 12 1 6 0; #X connect 12 2 0 1; #X connect 12 3 5 0; #X connect 12 4 13 0; #X connect 13 0 11 1; #X connect 14 0 1 1; #X restore 94 136 pd compare-elements; #X msg 216 167 0; #N canvas 446 369 450 300 compare-lengths 0; #X obj 45 102 ==; #X obj 45 123 select 1 0; #X obj 144 35 inlet; #X obj 45 20 inlet; #X obj 45 203 outlet; #X obj 77 182 outlet; #X obj 45 45 t a a; #X obj 45 154 list; #X text 39 237 if equal \, send list out to first outlet \, else bang second outlet; #X obj 144 68 list-len; #X obj 45 67 list-len; #X connect 0 0 1 0; #X connect 1 0 7 0; #X connect 1 1 5 0; #X connect 2 0 9 0; #X connect 3 0 6 0; #X connect 6 0 10 0; #X connect 6 1 7 1; #X connect 7 0 4 0; #X connect 9 0 0 1; #X connect 10 0 0 0; #X restore 94 93 pd compare-lengths; #X connect 0 0 5 1; #X connect 0 0 3 1; #X connect 1 0 5 0; #X connect 3 0 2 0; #X connect 4 0 2 0; #X connect 5 0 3 0; #X connect 5 1 4 0; pd-list-abs_0.1/list-l2s.pd0000644000076500007650000000173611201077563014240 0ustar hanshans#N canvas 424 382 729 381 10; #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 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; #X obj 447 124 inlet; #X obj 178 190 makefilename %g; #X obj 118 123 list-drip; #X connect 0 0 2 0; #X connect 1 0 15 0; #X connect 2 0 1 0; #X connect 2 0 4 1; #X connect 3 0 4 0; #X connect 3 1 18 0; #X connect 3 2 0 0; #X connect 4 0 9 0; #X connect 5 0 3 0; #X connect 6 0 7 0; #X connect 6 1 17 0; #X connect 7 0 2 0; #X connect 8 0 3 0; #X connect 10 0 14 0; #X connect 11 0 10 0; #X connect 12 0 11 0; #X connect 13 0 11 0; #X connect 14 0 15 0; #X connect 15 0 2 0; #X connect 16 0 11 0; #X connect 17 0 2 0; #X connect 18 0 6 0; pd-list-abs_0.1/list-normalize-help.pd0000644000076500007650000000473511516222410016460 0ustar hanshans#N canvas 0 31 832 543 10; #X obj 145 295 list-normalize; #X msg 145 183 10 100 200; #X msg 157 204 -10 100 200; #X msg 165 226 -10 100 and -200; #X msg 168 251 0.1 0.01 and -0.02; #X text 40 13 list-normalize: normalize a list.; #X text 54 89 All the other float elements then are scaled with the same factor.; #X text 54 41 First it looks for the element with the largest absolute value \, then this is scaled to be 1 or -1 preserving the sign.; #X text 54 129 It's the same operation as the "Normalize" instruction in many soundfile editors or the "normalize 1" method of Pd arrays. ; #X obj 427 425 list-math *; #X text 33 427 Hint: To normalize to values other than 1 \, you can use:; #X obj 499 366 loadbang; #X floatatom 499 406 5 0 0 0 - - -; #X msg 499 386 3; #X obj 145 377 print Normalized; #X obj 427 450 print Norm_to_3; #X obj 617 28 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 617 205 pack 0 0 0; #X obj 639 166 t b f; #X obj 685 169 t b f; #X obj 617 267 unpack 0 0 0; #X obj 652 28 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 685 28 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X floatatom 617 298 5 0 0 0 - - -; #X floatatom 656 298 5 0 0 0 - - -; #X floatatom 696 298 5 0 0 0 - - -; #X obj 617 324 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 656 324 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 696 324 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X text 735 94 0-127; #X text 740 390 0-1; #X obj 617 240 list-normalize; #N canvas 460 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 85 OUTLET_0 list; #X text 12 45 DESCRIPTION normalize a list; #X text 12 65 INLET_0 list; #X restore 746 491 pd META; #X connect 0 0 9 0; #X connect 0 0 14 0; #X connect 1 0 0 0; #X connect 2 0 0 0; #X connect 3 0 0 0; #X connect 4 0 0 0; #X connect 9 0 15 0; #X connect 11 0 13 0; #X connect 12 0 9 1; #X connect 13 0 12 0; #X connect 16 0 17 0; #X connect 17 0 31 0; #X connect 18 0 17 0; #X connect 18 1 17 1; #X connect 19 0 17 0; #X connect 19 1 17 2; #X connect 20 0 23 0; #X connect 20 1 24 0; #X connect 20 2 25 0; #X connect 21 0 18 0; #X connect 22 0 19 0; #X connect 23 0 26 0; #X connect 24 0 27 0; #X connect 25 0 28 0; #X connect 31 0 20 0; pd-list-abs_0.1/list-l2s-help.pd0000644000076500007650000000210711516222410015147 0ustar hanshans#N canvas 0 31 518 278 10; #X msg 52 90 a b c d 1 2; #X msg 165 90 a b c d 1 2; #X msg 288 91 a b c d 1 2; #X symbolatom 165 154 15 0 0 0 - - -; #X symbolatom 52 155 10 0 0 0 - - -; #X symbolatom 288 154 25 0 0 0 - - -; #X obj 52 127 list-l2s; #X obj 165 126 list-l2s -; #X obj 288 124 list-l2s _|_; #X msg 395 90 symbol PD; #X text 54 42 Concatenate a list into a single symbol using ARG1 as delimiter. Delimiter can be set through second inlet.; #X text 55 20 list-l2s; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op symbol_op; #X text 12 45 DESCRIPTION concatenate a list into a single symbol using ARG1 as delimiter; #X text 12 75 INLET_0 anything; #X text 12 95 INLET_1 symbol; #X text 12 115 OUTLET_0 symbol; #X restore 443 251 pd META; #X connect 0 0 6 0; #X connect 1 0 7 0; #X connect 2 0 8 0; #X connect 6 0 4 0; #X connect 7 0 3 0; #X connect 8 0 5 0; #X connect 9 0 8 1; pd-list-abs_0.1/list-wrandom-help.pd0000644000076500007650000001013611516222410016117 0ustar hanshans#N canvas 0 31 682 622 10; #X msg 167 312 bang; #X floatatom 133 407 5 0 0 0 - - -; #X obj 125 478 tabread \$0-rand; #X obj 125 456 t a a; #X obj 125 311 until; #X obj 125 503 + 0.001; #X obj 125 527 tabwrite \$0-rand; #X msg 251 247 bang; #X obj 251 273 list-random 10 10; #X msg 125 285 1000; #X msg 168 336 seed 12123; #X floatatom 204 406 5 0 0 1 length - -; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-rand 10 float 0; #X coords 0 1 9 0 200 140 1; #X restore 310 409 graph; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-dist 10 float 0; #X coords 0 1 9 0 200 140 1; #X restore 310 409 graph; #X obj 251 336 t a a; #X msg 317 304 3 8 0 2 3 5 1 4 7 2; #X msg 259 304 1 0 0 1; #N canvas 0 0 450 300 write-to-tables 0; #X obj 227 103 list-len; #X obj 308 180 s \$0-rand; #X obj 115 103 list prepend 0; #X obj 115 128 s \$0-dist; #X obj 93 256 s \$0-dist; #X msg 308 158 resize \$1 \, const 0; #X msg 93 155 normalize 1; #X msg 227 159 resize \$1; #X obj 93 55 t b a a; #X obj 93 33 inlet; #X connect 0 0 7 0; #X connect 0 0 5 0; #X connect 2 0 3 0; #X connect 5 0 1 0; #X connect 6 0 4 0; #X connect 7 0 4 0; #X connect 8 0 6 0; #X connect 8 1 2 0; #X connect 8 2 0 0; #X connect 9 0 8 0; #X restore 281 363 pd write-to-tables; #X text 79 20 [list-wrandom]; #X msg 464 304 10 20 70; #X msg 164 286 100; #X text 113 44 Use a list as a probability table for weighted random numbers.; #X obj 125 379 list-wrandom; #X text 112 87 Inlets; #X text 132 142 1: list of random weights. The weigths are used as probabilities for their positions (zero-based); #X text 111 179 Outlets:; #X text 127 199 0: random number; #X text 127 214 1: size of probability table (for convenience); #X text 131 109 0: connected to [random] internally. "bang" to make random choice \, "seed X" to seed; #N canvas 262 240 530 406 markov-example 0; #X text 32 19 Simple markov chain; #X obj 77 208 list-wrandom; #X obj 170 208 list-wrandom; #X obj 263 208 list-wrandom; #X obj 77 172 select 0 1 2; #X obj 77 150 f; #X obj 93 127 r \$0-state; #X obj 77 279 s \$0-state; #X obj 170 279 s \$0-state; #X obj 263 277 s \$0-state; #X obj 163 328 hradio 32 1 0 3 empty \$0-state state 0 -8 1 10 -262144 -1 -1 0; #X obj 239 98 loadbang; #X obj 77 97 bng 24 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X floatatom 91 242 5 0 0 0 - - -; #X obj 91 259 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X floatatom 185 240 5 0 0 0 - - -; #X obj 185 257 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X floatatom 277 239 5 0 0 0 - - -; #X obj 277 256 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 37 74 metro 200; #X obj 37 55 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 ; #X msg 239 125 s0 10 20 70 \, s1 80 10 10 \, s2 50 25 25; #X obj 239 159 route s0 s1 s2; #X connect 1 0 7 0; #X connect 1 0 13 0; #X connect 2 0 8 0; #X connect 2 0 15 0; #X connect 3 0 9 0; #X connect 3 0 17 0; #X connect 4 0 1 0; #X connect 4 1 2 0; #X connect 4 2 3 0; #X connect 5 0 4 0; #X connect 6 0 5 1; #X connect 11 0 21 0; #X connect 12 0 5 0; #X connect 13 0 14 0; #X connect 15 0 16 0; #X connect 17 0 18 0; #X connect 19 0 5 0; #X connect 20 0 19 0; #X connect 21 0 22 0; #X connect 22 0 1 1; #X connect 22 1 2 1; #X connect 22 2 3 1; #X restore 125 563 pd markov-example; #N canvas 520 99 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION use a list as a probability table for weighted random numbers; #X text 12 75 INLET_0 bang seed; #X text 12 95 INLET_1 list; #X text 12 115 OUTLET_0 float; #X text 12 135 OUTLET_1 float; #X restore 622 568 pd META; #X connect 0 0 22 0; #X connect 2 0 5 0; #X connect 3 0 2 0; #X connect 3 1 6 1; #X connect 4 0 22 0; #X connect 5 0 6 0; #X connect 7 0 8 0; #X connect 8 0 14 0; #X connect 9 0 4 0; #X connect 10 0 22 0; #X connect 14 0 22 1; #X connect 14 1 17 0; #X connect 15 0 14 0; #X connect 16 0 14 0; #X connect 19 0 14 0; #X connect 20 0 4 0; #X connect 22 0 1 0; #X connect 22 0 3 0; #X connect 22 1 11 0; pd-list-abs_0.1/list-lastx-help.pd0000644000076500007650000000144611516222410015607 0ustar hanshans#N canvas 0 31 498 331 10; #X floatatom 168 128 5 0 0 0 - - -; #X obj 168 184 print last_x; #X floatatom 247 129 5 0 0 2 change-size - -; #X text 104 62 list-lastx: make a list of the last x floats.; #X obj 168 153 list-lastx 4; #X msg 266 153 bang; #X text 308 152 reset stored list; #N canvas 460 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION make a list of the last x floats; #X text 12 65 INLET_0 float; #X text 12 85 INLET_1 float bang; #X text 12 105 OUTLET_0 list; #X restore 425 291 pd META; #X connect 0 0 4 0; #X connect 2 0 4 1; #X connect 4 0 1 0; #X connect 5 0 4 1; pd-list-abs_0.1/list-reduce-help.pd0000644000076500007650000001144311516222410015721 0ustar hanshans#N canvas 0 31 619 643 10; #X floatatom 128 286 5 0 0 0 - - -; #X msg 137 126 bang; #X obj 179 281 print TWO_ITEMS; #X obj 107 311 print RESULT; #X msg 144 150 1; #X msg 152 196 1 2 3; #X msg 149 172 1 2; #X msg 155 219 1 2 3 4; #X text 182 127 redo last list; #X text 73 12 [list-reduce]; #X text 188 151 list with only one item will pass unchanged.; #X symbolatom 101 416 15 0 0 0 - - -; #X msg 196 385 \$2-\$1; #X obj 102 584 list-reduce; #X msg 102 557 1 2 3 4 5 6 7 8; #X msg 197 583 \$2 \$1; #N canvas 209 220 605 355 more-info 0; #X msg 84 101 bang; #X obj 126 236 print TWO_ITEMS; #X obj 54 266 print RESULT; #X msg 91 125 1; #X msg 99 171 1 2 3; #X msg 96 147 1 2; #X text 36 42 If nothing is connected to the right inlet \, [list-reduce] will act like the left and right outlets of [list split 2] reversed. ; #X obj 54 203 list-reduce; #X msg 342 100 bang; #X obj 385 244 print TWO_ITEMS; #X obj 312 265 print RESULT; #X msg 349 124 1; #X msg 357 170 1 2 3; #X msg 354 146 1 2; #X obj 312 202 list split 2; #X text 178 202 equal to this:; #X connect 0 0 7 0; #X connect 3 0 7 0; #X connect 4 0 7 0; #X connect 5 0 7 0; #X connect 7 0 2 0; #X connect 7 1 1 0; #X connect 8 0 14 0; #X connect 11 0 14 0; #X connect 12 0 14 0; #X connect 13 0 14 0; #X connect 14 0 9 0; #X connect 14 2 10 0; #X restore 101 457 pd more-info; #X obj 102 612 print REVERSE?; #X obj 101 386 list-reduce; #X text 93 39 [list-reduce] returns a single value constructed by calling the user-defined objects connected to the right outlet on the first two items of the sequence \, then on the result (if it comes in through the right inlet) and the next item of the original list \, and so on. ; #X obj 107 248 list-reduce; #X text 99 487 It's important \, that there will be only one element coming back in through the right inlet. Lists with more than one item will be shortened automatically to avoid stack overflows.; #X text 251 582 <-- two items == bad idea; #X msg 101 359 a b c d e; #X obj 329 250 list-reduce; #X obj 416 250 min; #N canvas 0 0 450 300 randlist 0; #X obj 254 138 random 100; #X obj 254 116 until; #X msg 366 138 set; #X msg 232 61 10; #X msg 254 160 add2 \$1; #X obj 232 88 t b f b; #X obj 255 236 outlet; #X obj 232 38 inlet; #X connect 0 0 4 0; #X connect 1 0 0 0; #X connect 2 0 6 0; #X connect 3 0 5 0; #X connect 4 0 6 0; #X connect 5 0 6 0; #X connect 5 1 1 0; #X connect 5 2 2 0; #X connect 7 0 3 0; #X restore 329 197 pd randlist; #X msg 329 223 27 92 42 82 48 52 74 33 52 71; #X msg 329 177 bang; #X obj 382 276 list-reduce; #X floatatom 382 300 5 0 0 3 max - -; #X obj 469 276 max; #X floatatom 329 301 5 0 0 3 min - -; #X obj 196 248 +; #X obj 328 422 list-reduce; #X floatatom 328 445 5 0 0 0 - - -; #X msg 328 392 22 31 47 86; #N canvas 0 0 701 458 compare-two 0; #X obj 99 12 inlet; #X obj 99 318 outlet; #X obj 164 162 abs; #X obj 99 161 abs; #X obj 99 41 unpack f f; #X obj 99 90 t a a; #X obj 99 272 f; #X obj 164 90 t a a; #X obj 131 272 f; #X obj 99 247 select 1 0; #X text 178 276 send number with smaller distance back to reduce; #X text 215 151 calculate distances; #X obj 99 192 <; #X obj 217 91 inlet; #X obj 164 139 -; #X obj 99 138 -; #X connect 0 0 4 0; #X connect 2 0 12 1; #X connect 3 0 12 0; #X connect 4 0 5 0; #X connect 4 1 7 0; #X connect 5 0 15 0; #X connect 5 1 6 1; #X connect 6 0 1 0; #X connect 7 0 14 0; #X connect 7 1 8 1; #X connect 8 0 1 0; #X connect 9 0 6 0; #X connect 9 1 8 0; #X connect 12 0 9 0; #X connect 13 0 14 1; #X connect 13 0 15 1; #X connect 14 0 2 0; #X connect 15 0 3 0; #X restore 414 422 pd compare-two; #X floatatom 507 403 5 0 0 0 - - -; #X msg 507 380 45; #X obj 507 357 loadbang; #X text 325 355 Find closest element:; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 145 AUTHOR Frank Barknecht; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION; #X text 12 5 KEYWORDS control list_op; #X text 12 65 INLET_0 bang float list; #X text 12 105 OUTLET_0 float; #X text 12 125 OUTLET_1 list; #X text 12 85 INLET_1 float; #X restore 557 611 pd META; #X connect 1 0 20 0; #X connect 4 0 20 0; #X connect 5 0 20 0; #X connect 6 0 20 0; #X connect 7 0 20 0; #X connect 12 0 18 1; #X connect 13 0 17 0; #X connect 13 1 15 0; #X connect 14 0 13 0; #X connect 15 0 13 1; #X connect 18 0 11 0; #X connect 18 1 12 0; #X connect 20 0 0 0; #X connect 20 0 3 0; #X connect 20 1 2 0; #X connect 20 1 33 0; #X connect 23 0 18 0; #X connect 24 0 32 0; #X connect 24 1 25 0; #X connect 25 0 24 1; #X connect 26 0 27 0; #X connect 27 0 24 0; #X connect 27 0 29 0; #X connect 28 0 26 0; #X connect 29 0 30 0; #X connect 29 1 31 0; #X connect 31 0 29 1; #X connect 33 0 20 1; #X connect 34 0 35 0; #X connect 34 1 37 0; #X connect 36 0 34 0; #X connect 37 0 34 1; #X connect 38 0 37 1; #X connect 39 0 38 0; #X connect 40 0 39 0; pd-list-abs_0.1/list-mult-help.pd0000644000076500007650000000126611516222410015435 0ustar hanshans#N canvas 0 31 450 300 10; #X msg 145 116 5 5 5 NOPE 5; #X obj 145 217 print; #X msg 203 139 1 2 3 0 -1; #X text 108 67 Substract two lists element by element; #X obj 145 177 list-mult; #N canvas 460 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 105 OUTLET_0 list; #X text 12 45 DESCRIPTION substract two lists element by element; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 anything; #X restore 386 271 pd META; #X connect 0 0 4 0; #X connect 2 0 4 1; #X connect 4 0 1 0; pd-list-abs_0.1/examples/0000755000076500007650000000000011516223054014046 5ustar hanshanspd-list-abs_0.1/examples/list-inter-example.pd0000644000076500007650000000464711516222407020132 0ustar hanshans#N canvas 331 120 783 579 10; #X obj 118 233 list-inter; #X obj 118 166 list split 1; #X obj 201 234 t l; #X obj 118 193 expr 1-$f1; #X obj 461 377 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 9377 1; #X obj 118 303 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 6198 1; #X obj 157 303 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 3953 1; #X obj 197 303 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 4387 1; #X floatatom 118 277 5 0 0 0 - - -; #X floatatom 157 277 5 0 0 0 - - -; #X floatatom 197 277 5 0 0 0 - - -; #X obj 118 255 unpack 0 0 0; #X obj 461 400 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 2363 1; #X obj 461 423 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 960 1; #X obj 447 143 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 12700 1; #X obj 447 166 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 3200 1; #X obj 447 189 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 1300 1; #X msg 459 107 1; #X msg 118 136 \$1 5 2 3 \, \$2 4 5 6 \, \$3 6 7 1; #N canvas 0 0 753 456 normalize 0; #X obj 369 105 pack 0 0 0; #X obj 332 175 list-math /; #X obj 438 76 t b f; #X obj 391 78 t b f; #X obj 403 154 list-accum; #X obj 361 135 t a a; #X obj 330 202 unpack 0 0 0; #X msg 305 259 set \$1; #X msg 365 260 set \$1; #X msg 437 269 set \$1; #X obj 360 47 inlet; #X obj 403 48 inlet; #X obj 450 49 inlet; #X obj 328 327 outlet; #X obj 380 328 outlet; #X obj 438 324 outlet; #X obj 190 246 outlet; #X connect 0 0 5 0; #X connect 1 0 6 0; #X connect 1 0 16 0; #X connect 2 0 0 0; #X connect 2 1 0 2; #X connect 3 0 0 0; #X connect 3 1 0 1; #X connect 4 0 1 1; #X connect 5 0 1 0; #X connect 5 1 4 0; #X connect 6 0 7 0; #X connect 6 1 8 0; #X connect 6 2 9 0; #X connect 7 0 13 0; #X connect 8 0 14 0; #X connect 9 0 15 0; #X connect 10 0 0 0; #X connect 11 0 3 0; #X connect 12 0 2 0; #X restore 342 339 pd normalize; #X obj 342 369 s \$0-list; #X obj 118 107 r \$0-list; #X connect 0 0 11 0; #X connect 0 0 2 0; #X connect 1 0 3 0; #X connect 1 1 0 1; #X connect 2 0 0 2; #X connect 3 0 0 0; #X connect 8 0 5 0; #X connect 9 0 6 0; #X connect 10 0 7 0; #X connect 11 0 8 0; #X connect 11 1 9 0; #X connect 11 2 10 0; #X connect 14 0 19 0; #X connect 15 0 19 1; #X connect 16 0 19 2; #X connect 17 0 14 0; #X connect 18 0 1 0; #X connect 19 0 20 0; #X connect 19 1 4 0; #X connect 19 2 12 0; #X connect 19 3 13 0; #X connect 21 0 18 0; pd-list-abs_0.1/examples/list-sieve-example-2.pd0000644000076500007650000000473311516222407020257 0ustar hanshans#N canvas 630 119 650 767 10; #X obj 272 233 list-sieve; #X msg 207 155 0 5 7; #X msg 272 186 2 4 9; #X msg 337 206 11; #X obj 207 129 t b b b; #X obj 142 111 mod 12; #X floatatom 142 60 5 0 0 0 - - -; #X obj 142 83 t f f; #X obj 448 178 div 12; #X obj 448 204 * 12; #X msg 207 108 bang; #X obj 205 78 loadbang; #X obj 142 386 + 24; #X obj 142 360 list-drip; #X obj 448 270 t f; #X obj 448 97 t f; #X msg 193 300 0 4 7; #X msg 264 301 0 3 7; #X msg 332 302 0 3 6; #X obj 241 272 b; #X obj 140 484 rrad.fluid~ /fl; #X obj 148 432 pack 0 0; #X obj 144 457 list prepend 1; #X obj 148 676 ezdac~; #X obj 142 185 list-sieve; #X obj 207 212 list-sieve; #X obj 152 408 makenote 90 200; #X floatatom 151 142 5 0 0 0 - - -; #N canvas 0 0 450 300 add 0; #X obj 116 150 list-math +; #X obj 116 89 t b f; #X obj 116 121 list; #X obj 116 186 outlet; #X obj 175 86 inlet; #X obj 116 67 inlet; #X connect 0 0 3 0; #X connect 1 0 2 0; #X connect 1 1 0 1; #X connect 2 0 0 0; #X connect 4 0 2 1; #X connect 5 0 1 0; #X restore 320 329 pd add; #N canvas 0 0 450 300 add 0; #X obj 116 150 list-math +; #X obj 116 89 t b f; #X obj 116 121 list; #X obj 116 186 outlet; #X obj 175 86 inlet; #X obj 116 67 inlet; #X connect 0 0 3 0; #X connect 1 0 2 0; #X connect 1 1 0 1; #X connect 2 0 0 0; #X connect 4 0 2 1; #X connect 5 0 1 0; #X restore 218 329 pd add; #N canvas 0 0 450 300 add 0; #X obj 116 150 list-math +; #X obj 116 89 t b f; #X obj 116 121 list; #X obj 116 186 outlet; #X obj 175 86 inlet; #X obj 116 67 inlet; #X connect 0 0 3 0; #X connect 1 0 2 0; #X connect 1 1 0 1; #X connect 2 0 0 0; #X connect 4 0 2 1; #X connect 5 0 1 0; #X restore 142 323 pd add; #X connect 0 0 28 0; #X connect 0 1 13 0; #X connect 1 0 24 1; #X connect 2 0 25 1; #X connect 3 0 0 1; #X connect 4 0 1 0; #X connect 4 1 2 0; #X connect 4 2 3 0; #X connect 4 2 19 0; #X connect 5 0 24 0; #X connect 5 0 27 0; #X connect 6 0 7 0; #X connect 7 0 5 0; #X connect 7 1 15 0; #X connect 8 0 9 0; #X connect 9 0 14 0; #X connect 10 0 4 0; #X connect 11 0 4 0; #X connect 12 0 26 0; #X connect 13 0 12 0; #X connect 14 0 12 1; #X connect 15 0 8 0; #X connect 16 0 30 1; #X connect 17 0 29 1; #X connect 18 0 28 1; #X connect 19 0 16 0; #X connect 19 0 17 0; #X connect 19 0 18 0; #X connect 20 0 23 0; #X connect 20 1 23 1; #X connect 21 0 22 0; #X connect 22 0 20 0; #X connect 24 0 30 0; #X connect 24 1 25 0; #X connect 25 0 29 0; #X connect 25 1 0 0; #X connect 26 0 21 0; #X connect 26 1 21 1; #X connect 28 0 13 0; #X connect 29 0 13 0; #X connect 30 0 13 0; pd-list-abs_0.1/examples/list-demux.pd0000644000076500007650000000072711516222407016475 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 131 118 list prepend 0; #X obj 224 95 hradio 15 1 0 4 empty empty empty 0 -6 0 8 -262144 -1 -1 3; #X obj 131 146 route 0 1 2 3; #X obj 131 251 print d1; #X obj 195 177 print d4; #X obj 174 202 print d3; #X obj 152 224 print d2; #X floatatom 131 81 5 0 0 0 - - -; #X text 111 39 "demux" with lists; #X connect 0 0 2 0; #X connect 1 0 0 1; #X connect 2 0 3 0; #X connect 2 1 6 0; #X connect 2 2 5 0; #X connect 2 3 4 0; #X connect 7 0 0 0; pd-list-abs_0.1/examples/list-inter-gem-example.pd0000644000076500007650000000465211516222407020674 0ustar hanshans#N canvas 402 9 678 693 10; #X obj 459 490 gemwin; #X msg 459 452 reset \, create \, 1; #X msg 488 469 0 \, destroy; #X obj 57 199 translateXYZ; #X obj 58 161 gemhead; #X obj 48 381 gemhead; #X obj 249 202 translateXYZ; #X obj 248 167 gemhead; #X obj 426 203 translateXYZ; #X obj 425 168 gemhead; #X obj 151 313 t b a; #X obj 152 338 f; #X obj 90 99 hsl 128 15 0 1 0 0 empty empty factor_(0-1) -2 -6 0 10 -262144 -1 -1 7100 1; #X obj 377 105 hsl 128 15 0 1 0 0 empty empty factor_(0-1) -2 -6 0 10 -262144 -1 -1 7000 1; #X obj 253 114 t b b b; #X msg 259 93 bang; #X obj 97 290 list-inter; #X obj 163 357 list-inter; #X obj 62 234 color 1 0 0; #X obj 248 242 color 0 1 0; #X obj 422 246 color 0 0 1; #X obj 54 491 color 1 1 1; #X obj 483 170 unpack 0 0 0 0 0; #X obj 306 169 unpack 0 0 0 0 0; #X obj 116 163 unpack 0 0 0 0 0; #X obj 154 195 pack 0 0 0; #X msg 309 142 3 1 0 1 0; #X obj 336 218 pack 0 0 0; #X obj 519 205 pack 0 0 0; #X obj 106 383 unpack 0 0 0 0 0; #X obj 187 423 pack 0 0 0; #X msg 487 147 -2 -3 1 0.3 0.5; #X msg 119 135 -1 2 1 0 0; #X obj 57 264 circle 0.1; #X obj 251 277 circle 0.1; #X obj 420 283 circle 0.1; #X obj 35 421 translateXYZ 0 0 -0.1; #X obj 252 72 loadbang; #X obj 52 511 square 0.2; #X connect 1 0 0 0; #X connect 2 0 0 0; #X connect 3 0 18 0; #X connect 4 0 3 0; #X connect 5 0 36 0; #X connect 6 0 19 0; #X connect 7 0 6 0; #X connect 8 0 20 0; #X connect 9 0 8 0; #X connect 10 0 11 0; #X connect 10 1 17 1; #X connect 11 0 17 0; #X connect 12 0 16 0; #X connect 13 0 11 0; #X connect 14 0 32 0; #X connect 14 1 26 0; #X connect 14 2 31 0; #X connect 15 0 14 0; #X connect 16 0 10 0; #X connect 17 0 29 0; #X connect 18 0 33 0; #X connect 19 0 34 0; #X connect 20 0 35 0; #X connect 21 0 38 0; #X connect 22 0 8 1; #X connect 22 1 8 2; #X connect 22 2 28 0; #X connect 22 3 28 1; #X connect 22 4 28 2; #X connect 23 0 6 1; #X connect 23 1 6 2; #X connect 23 2 27 0; #X connect 23 3 27 1; #X connect 23 4 27 2; #X connect 24 0 3 1; #X connect 24 1 3 2; #X connect 24 2 25 0; #X connect 24 3 25 1; #X connect 24 4 25 2; #X connect 25 0 18 1; #X connect 26 0 16 2; #X connect 26 0 23 0; #X connect 27 0 19 1; #X connect 28 0 20 1; #X connect 29 0 36 1; #X connect 29 1 36 2; #X connect 29 2 30 0; #X connect 29 3 30 1; #X connect 29 4 30 2; #X connect 30 0 21 1; #X connect 31 0 17 2; #X connect 31 0 22 0; #X connect 32 0 16 1; #X connect 32 0 24 0; #X connect 36 0 21 0; #X connect 37 0 14 0; #X connect 37 0 13 0; #X connect 37 0 12 0; pd-list-abs_0.1/sroute.pd0000644000076500007650000000060210755131205014074 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 148 99 inlet; #X obj 90 54 list split 1; #X obj 90 31 inlet; #X obj 90 188 outlet; #X obj 90 124 select \$1; #X obj 90 154 list; #X obj 148 188 outlet; #X obj 148 156 list; #X connect 0 0 4 1; #X connect 1 0 4 0; #X connect 1 1 5 1; #X connect 1 1 7 1; #X connect 2 0 1 0; #X connect 4 0 5 0; #X connect 4 1 7 0; #X connect 5 0 3 0; #X connect 7 0 6 0; pd-list-abs_0.1/list-mult.pd0000644000076500007650000000026410755131205014511 0ustar hanshans#N canvas 256 135 500 518 10; #X obj 59 31 inlet; #X obj 138 34 inlet; #X obj 59 117 outlet; #X obj 59 84 list-emath *; #X connect 0 0 3 0; #X connect 1 0 3 1; #X connect 3 0 2 0; pd-list-abs_0.1/list-drip-help.pd0000644000076500007650000001262311516222410015411 0ustar hanshans#N canvas 0 26 635 655 10; #X obj 70 93 list-drip; #X msg 70 66 1 2 3 a b c; #X obj 70 124 print; #X obj 151 120 bng 15 250 50 0 empty empty end 0 -6 0 8 -262144 -1 -1; #X msg 297 70 1 2 3 a b c; #X obj 382 129 bng 15 250 50 0 empty empty end 0 -6 0 8 -262144 -1 -1; #X obj 297 178 print first; #X obj 329 154 print second; #X obj 212 390 bng 15 250 50 0 empty empty end 0 -6 0 8 -262144 -1 -1; #X text 71 217 Use list-drip2 to combine two lists into one \, for example by addition:; #X obj 219 550 list; #X obj 123 549 list prepend; #X obj 42 584 list; #X obj 42 612 print RESULT; #X obj 123 289 t b b; #X msg 123 269 bang; #X obj 123 346 t l b; #X text 190 302 Add these lists by element. Be careful with their lengths ; #X text 70 18 list-drip: drips or serializes a list \, that is \, it sends all elements one after another.; #X text 434 105 Drip two lists in sync.; #X text 285 429 filter out floats; #X obj 42 552 r \$0-end; #X obj 212 409 s \$0-end; #X text 200 508 reset first; #X obj 123 478 +; #N canvas 315 75 709 522 add-lots-of-lists 0; #X obj 273 211 bng 15 250 50 0 empty empty end 0 -6 0 8 -262144 -1 -1; #X obj 184 167 t l b; #X text 138 51 Add many lists by routing the result back to the second inlet of list-drip2; #X obj 154 142 t b a; #X obj 103 433 print CURRENT-RESULT; #X msg 68 145 bang; #X text 65 125 Reset; #X msg 232 103 0.1 0.2 0.3 0.4; #X msg 354 103 0.01 0.02 0.03 0.04; #X obj 184 370 list prepend; #X obj 280 371 list; #X obj 103 405 list; #X obj 184 299 +; #X msg 154 105 1 3 4 7; #X msg 84 219 0; #X obj 88 176 t b b b; #N canvas 347 135 671 625 weighted 0; #X obj 435 225 list split 1; #X text 59 90 weighted sum of lists; #X obj 435 294 list-math *; #X obj 435 270 list; #X obj 435 248 t b f; #X msg 361 184 \$1 0 0 1; #X msg 435 184 \$1 0 1 0; #X obj 380 83 hsl 64 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #X obj 454 83 hsl 64 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #X obj 530 83 hsl 64 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #X obj 353 486 list; #X obj 361 149 f; #X obj 435 151 f; #X obj 511 153 f; #N canvas 0 0 516 490 list-accum 0; #X obj 319 215 bng 15 250 50 0 empty empty end 0 -6 0 8 -262144 -1 -1; #X obj 230 171 t l b; #X obj 200 146 t b a; #X msg 399 128 bang; #X text 396 108 Reset; #X obj 230 374 list prepend; #X obj 326 375 list; #X obj 149 409 list; #X obj 230 303 +; #X msg 375 214 0; #X obj 379 171 t b b b; #X obj 149 437 outlet; #X obj 199 104 inlet; #X obj 343 106 inlet; #X obj 230 213 list-drip2; #X connect 1 0 14 0; #X connect 1 1 5 1; #X connect 2 0 7 0; #X connect 2 1 1 0; #X connect 3 0 10 0; #X connect 5 0 6 0; #X connect 5 0 7 1; #X connect 6 0 5 1; #X connect 7 0 11 0; #X connect 7 0 14 1; #X connect 8 0 5 0; #X connect 9 0 8 1; #X connect 10 0 9 0; #X connect 10 1 14 0; #X connect 10 2 14 1; #X connect 12 0 2 0; #X connect 13 0 10 0; #X connect 14 0 8 0; #X connect 14 1 8 1; #X connect 14 2 0 0; #X restore 376 444 pd list-accum; #X obj 354 509 print W_SUM; #X msg 266 81 bang; #X obj 269 104 t b b b; #X msg 511 183 \$1 1 1 0; #X obj 376 38 hsl 64 15 0 1 0 0 empty empty empty -2 -6 0 8 -262144 -1 -1 0 1; #X obj 375 59 t b f; #X connect 0 0 4 0; #X connect 0 1 3 1; #X connect 2 0 14 0; #X connect 3 0 2 0; #X connect 4 0 3 0; #X connect 4 1 2 1; #X connect 5 0 0 0; #X connect 6 0 0 0; #X connect 7 0 11 1; #X connect 8 0 12 1; #X connect 9 0 13 1; #X connect 10 0 15 0; #X connect 11 0 5 0; #X connect 12 0 6 0; #X connect 13 0 18 0; #X connect 14 0 10 1; #X connect 16 0 17 0; #X connect 17 0 10 0; #X connect 17 1 11 0; #X connect 17 1 12 0; #X connect 17 1 13 0; #X connect 17 2 14 1; #X connect 18 0 0 0; #X connect 19 0 20 0; #X connect 20 0 17 0; #X connect 20 1 11 1; #X restore 434 245 pd weighted; #X obj 184 209 list-drip2; #X text 419 223 Add lists weighted:; #X connect 1 0 17 0; #X connect 1 1 9 1; #X connect 3 0 11 0; #X connect 3 1 1 0; #X connect 5 0 15 0; #X connect 7 0 3 0; #X connect 8 0 3 0; #X connect 9 0 10 0; #X connect 9 0 11 1; #X connect 10 0 9 1; #X connect 11 0 4 0; #X connect 11 0 17 1; #X connect 12 0 9 0; #X connect 13 0 3 0; #X connect 14 0 12 1; #X connect 15 0 14 0; #X connect 15 1 17 0; #X connect 15 2 17 1; #X connect 17 0 12 0; #X connect 17 1 12 1; #X connect 17 2 0 0; #X restore 415 583 pd add-lots-of-lists; #X text 418 557 Another example:; #X obj 297 97 list-drip2; #X obj 123 388 list-drip2; #X msg 124 326 1 2 3 4; #X msg 196 326 5 6 7 8; #X msg 396 70 4 5 6 d e f ignored; #N canvas 431 110 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION drip or serialize a list \, that is \, send all elements one after another.; #X text 12 75 INLET_0 anything; #X text 12 95 OUTLET_0 symbol float pointer; #X text 12 115 OUTLET_1 bang; #X text 12 135 AUTHOR Frank Barknecht \, Mathieu Bouchard; #X restore 567 624 pd META; #X connect 0 0 2 0; #X connect 0 1 3 0; #X connect 1 0 0 0; #X connect 4 0 27 0; #X connect 8 0 22 0; #X connect 10 0 11 1; #X connect 11 0 10 0; #X connect 11 0 12 1; #X connect 12 0 13 0; #X connect 14 0 29 0; #X connect 14 1 30 0; #X connect 15 0 14 0; #X connect 16 0 28 0; #X connect 16 1 11 1; #X connect 21 0 12 0; #X connect 24 0 11 0; #X connect 27 0 6 0; #X connect 27 1 7 0; #X connect 27 2 5 0; #X connect 28 0 24 0; #X connect 28 1 24 1; #X connect 28 2 8 0; #X connect 29 0 16 0; #X connect 30 0 28 1; #X connect 31 0 27 1; pd-list-abs_0.1/list-fifo-delim.pd0000644000076500007650000000245510755131205015547 0ustar hanshans#N canvas 252 152 752 488 10; #X obj 22 272 list split 1; #X obj 22 224 until; #X obj 259 67 list append [delim]; #X obj 22 395 list; #X obj 22 321 t b b; #X obj 22 26 inlet trigger; #X obj 259 25 inlet list; #X obj 423 26 inlet delimiter; #X obj 22 419 outlet; #X obj 101 420 outlet; #X obj 52 198 b; #X obj 423 78 symbol \$1; #X obj 441 48 loadbang; #X obj 423 124 route symbol; #X obj 22 75 route bang clear; #X obj 22 250 list; #X obj 259 155 list-extend; #X obj 115 365 list-extend; #X obj 301 131 t b b; #X obj 157 338 t b b; #X obj 22 296 select [delim]; #X text 108 439 EOL; #X text 20 440 list; #X text 334 310 Based on a patch and idea by Roman Haefli 2006; #X connect 0 0 20 0; #X connect 0 1 15 1; #X connect 0 1 16 1; #X connect 0 2 9 0; #X connect 0 2 10 0; #X connect 1 0 15 0; #X connect 2 0 16 0; #X connect 3 0 8 0; #X connect 4 0 3 0; #X connect 4 1 1 1; #X connect 4 1 17 1; #X connect 5 0 14 0; #X connect 6 0 2 0; #X connect 7 0 11 0; #X connect 10 0 1 1; #X connect 11 0 13 0; #X connect 12 0 11 0; #X connect 13 0 2 1; #X connect 13 0 20 1; #X connect 14 0 1 0; #X connect 14 1 18 0; #X connect 14 1 19 0; #X connect 15 0 0 0; #X connect 16 0 15 1; #X connect 17 0 3 1; #X connect 18 0 16 0; #X connect 18 1 16 1; #X connect 19 0 17 0; #X connect 19 1 17 1; #X connect 20 0 4 0; #X connect 20 1 17 0; pd-list-abs_0.1/list-mean.pd0000644000076500007650000000213211350242556014450 0ustar hanshans#N canvas 0 0 457 428 10; #X obj 127 69 inlet; #X obj 127 337 outlet; #X obj 146 138 list-drip; #X obj 146 164 route float; #X obj 127 274 f; #X obj 127 308 /; #X obj 146 189 t a b; #N canvas 370 313 450 300 accum 0; #X obj 182 102 0; #X obj 135 79 inlet; #X obj 182 79 inlet; #X obj 135 169 outlet; #X obj 135 137 +; #X obj 168 138 f; #X connect 0 0 4 1; #X connect 1 0 4 0; #X connect 2 0 0 0; #X connect 4 0 3 0; #X connect 4 0 5 0; #X connect 5 0 4 1; #X restore 146 224 pd accum; #N canvas 425 298 450 300 count 0; #X obj 133 59 b; #X obj 133 35 inlet; #X obj 183 35 inlet; #X obj 164 111 + 1; #X obj 133 133 outlet; #X msg 183 71 1; #X obj 133 110 f 1; #X connect 0 0 6 0; #X connect 1 0 0 0; #X connect 2 0 5 0; #X connect 3 0 6 1; #X connect 5 0 6 1; #X connect 6 0 3 0; #X connect 6 0 4 0; #X restore 229 227 pd count; #X obj 127 105 t b a b b; #X connect 0 0 9 0; #X connect 2 0 3 0; #X connect 3 0 6 0; #X connect 4 0 5 0; #X connect 5 0 1 0; #X connect 6 0 7 0; #X connect 6 1 8 0; #X connect 7 0 4 1; #X connect 8 0 5 1; #X connect 9 0 4 0; #X connect 9 1 2 0; #X connect 9 2 7 1; #X connect 9 3 8 1; pd-list-abs_0.1/list-unique.pd0000644000076500007650000000206010755131205015032 0ustar hanshans#N canvas 197 380 791 465 10; #X obj 131 240 list-find; #X obj 309 270 t a; #X obj 217 269 list prepend; #X obj 131 187 t a a; #X obj 217 240 list; #X obj 131 162 list-drip; #X obj 109 315 list; #X obj 109 105 t b a b; #X text 156 314 result list; #X text 108 412 2007 Frank Barknecht; #X obj 217 196 < 1; #X obj 217 217 select 1; #X obj 233 76 inlet; #X obj 109 72 inlet; #X obj 109 343 outlet; #X text 235 53 number of allowed repetitions (default 1); #X text 84 51 list to uniquify; #X text 355 232 If current item is found less often than the allowed number of repetitions (default 1) \, then store it in [list-find] and in result list. Else discard it.; #X obj 254 240 t b b; #X connect 0 1 10 0; #X connect 1 0 2 1; #X connect 2 0 1 0; #X connect 2 0 0 1; #X connect 2 0 6 1; #X connect 3 0 0 0; #X connect 3 1 4 1; #X connect 4 0 2 0; #X connect 5 0 3 0; #X connect 6 0 14 0; #X connect 7 0 6 0; #X connect 7 1 5 0; #X connect 7 2 18 0; #X connect 10 0 11 0; #X connect 11 0 4 0; #X connect 12 0 10 1; #X connect 13 0 7 0; #X connect 18 0 2 0; #X connect 18 1 2 1; pd-list-abs_0.1/OSCprepend-help.pd0000644000076500007650000000252211516222410015501 0ustar hanshans#N canvas 0 31 565 415 10; #X msg 121 238 /a 1 c 3; #X obj 121 350 print OSC; #X text 52 262 ignored:; #X text 72 238 okay:; #X obj 121 323 OSCprepend /synth/ha; #X msg 256 231 /osc; #X text 304 230 change OSC-messages; #X msg 256 257 /freq/1; #X obj 104 31 cnv 15 220 30 empty empty OSCprepend 20 12 0 14 -233017 -66577 0; #X text 98 76 "Prepends" first argument to an OSC message list.; #X text 106 140 Right inlet lets you change the prepended argument ; #X msg 121 262 900 2 3 4 a b c; #X text 104 103 Example: with ARG_1 being "/synth" the message "/set x 1 2" will become "/synth/set x 1 2".; #X text 107 166 Lists not starting with a symbol are filtered out. ; #X msg 325 285 1; #X text 359 287 oops...; #X symbolatom 324 260 10 0 0 1 type-here - -; #N canvas 462 89 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION "Prepends" first argument to an OSC message list; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 anything; #X text 12 105 OUTLET_0 anything; #X restore 504 381 pd META; #X connect 0 0 4 0; #X connect 4 0 1 0; #X connect 5 0 4 1; #X connect 7 0 4 1; #X connect 11 0 4 0; #X connect 14 0 4 1; #X connect 16 0 4 1; pd-list-abs_0.1/list-moses-help.pd0000644000076500007650000000264011516222410015577 0ustar hanshans#N canvas 0 31 691 397 10; #X floatatom 95 93 5 0 0 0 - - -; #X obj 95 355 print smaller; #X obj 141 332 print bigger-or-equal; #X floatatom 141 227 5 0 0 2 split-value - -; #X text 57 38 list-moses: like [moses] for lists. Additionally you can set the element index \, at which to compare \, if it is bigger or smaller than the stored value.; #X text 338 217 arg1: comparison value; #X obj 188 255 hradio 15 1 0 8 empty empty split-index 0 -6 0 10 -262144 -1 -1 1; #X floatatom 128 148 5 0 0 0 - - -; #X obj 95 277 list-moses 4 2; #X text 337 252 arg2: which element to compare (zero based). Can be negative \, too.; #X msg 128 172 1 TEST \$1 4 5 6 7 8; #X obj 188 306 print not-a-float; #X msg 95 117 \$1 \$1 \$1 \$1 \$1 \$1 \$1 \$1; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 185 AUTHOR Frank Barknecht; #X text 12 205 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION like [moses] for lists; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 float; #X text 12 105 INLET_2 float; #X text 12 125 OUTLET_0 list; #X text 12 145 OUTLET_1 list; #X text 12 165 OUTLET_2 list; #X restore 636 371 pd META; #X connect 0 0 12 0; #X connect 3 0 8 1; #X connect 6 0 8 2; #X connect 7 0 10 0; #X connect 8 0 1 0; #X connect 8 1 2 0; #X connect 8 2 11 0; #X connect 10 0 8 0; #X connect 12 0 8 0; pd-list-abs_0.1/list-drip2-help.pd0000644000076500007650000000216111516222410015467 0ustar hanshans#N canvas 0 26 588 432 10; #X obj 146 235 list-drip2; #X text 72 58 Drips two lists in sync \, as long as the first list lasts.; #X text 42 25 list-drip2; #X msg 213 208 a b c d; #X obj 213 258 bng 15 250 50 0 empty empty End_of_1st_list 17 7 1 10 -262144 -1 -1; #X obj 179 306 print 2nd; #X obj 146 334 print 1st; #X msg 146 122 1 2 3 4; #X msg 146 100 1 2 3; #X msg 146 145 1 2 3 4 5; #X obj 146 199 t a b; #N canvas 436 26 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 175 AUTHOR Frank Barknecht; #X text 12 195 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION drip two lists in sync \, as long as the first list lasts; #X text 12 95 INLET_1 anything; #X text 12 75 INLET_0 anything; #X text 12 135 OUTLET_1 float symbol; #X text 12 115 OUTLET_0 float symbol; #X text 12 155 OUTLET_2 bang; #X restore 517 397 pd META; #X connect 0 0 6 0; #X connect 0 1 5 0; #X connect 0 2 4 0; #X connect 3 0 0 1; #X connect 7 0 10 0; #X connect 8 0 10 0; #X connect 9 0 10 0; #X connect 10 0 0 0; #X connect 10 1 3 0; pd-list-abs_0.1/list-insert.pd0000644000076500007650000000275010755131206015037 0ustar hanshans#N canvas 313 86 599 614 10; #X obj 94 50 inlet; #X obj 259 133 inlet; #X obj 308 134 inlet; #X text 257 112 pos; #X text 306 113 list; #X obj 173 180 list; #X obj 94 528 outlet; #X obj 94 308 list; #X obj 94 250 list prepend; #X text 91 29 list to insert; #X obj 173 206 list-splat \$1; #X obj 371 246 > 0; #X obj 292 337 route 0 1; #X obj 292 316 list prepend; #X obj 292 371 list prepend; #X obj 393 370 list; #X obj 94 75 t a b b a; #X obj 152 100 s \$0-insert; #X obj 416 338 r \$0-insert; #X obj 149 122 s \$0-init; #X obj 190 250 r \$0-init; #X obj 322 290 s \$0-out-of-range; #X obj 145 350 r \$0-out-of-range; #X obj 292 243 t a b; #X obj 94 374 spigot 1; #X obj 397 157 s \$0-out-of-range; #X obj 397 108 r \$0-init; #X obj 397 130 1; #X obj 322 266 0; #X obj 130 307 r \$0-init; #X text 231 524 This is more complicated than I thought!; #X connect 0 0 16 0; #X connect 1 0 10 1; #X connect 1 0 11 0; #X connect 2 0 5 1; #X connect 5 0 10 0; #X connect 7 0 24 0; #X connect 8 0 7 0; #X connect 10 0 8 1; #X connect 10 1 7 1; #X connect 10 2 23 0; #X connect 11 0 13 1; #X connect 12 0 14 0; #X connect 12 1 15 0; #X connect 13 0 12 0; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 8 0; #X connect 16 1 5 0; #X connect 16 2 19 0; #X connect 16 3 17 0; #X connect 18 0 15 1; #X connect 18 0 14 1; #X connect 20 0 8 1; #X connect 22 0 24 1; #X connect 23 0 13 0; #X connect 23 1 28 0; #X connect 24 0 6 0; #X connect 26 0 27 0; #X connect 27 0 25 0; #X connect 28 0 21 0; #X connect 29 0 7 1; pd-list-abs_0.1/list-sieve-help.pd0000644000076500007650000000526711516222410015574 0ustar hanshans#N canvas 0 31 566 348 10; #X floatatom 132 121 5 0 10 0 - - -; #X obj 132 174 list-sieve; #X obj 199 209 print MISS; #X obj 132 233 print FOUND; #X text 61 30 list-sieve; #X text 73 55 Look up occurence of incoming floats in a list. If found \, pass them along \, if not \, signal the miss in second outlet.; #X obj 306 157 tgl 15 0 empty empty try_me! 0 -6 0 8 -262144 -1 -1 0 1; #N canvas 500 266 524 502 gameboy-player 0; #X obj 173 50 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1 ; #X obj 173 105 random 12; #X obj 173 144 list-sieve; #X obj 269 61 loadbang; #X obj 173 176 + 48; #X obj 260 143 t b; #N canvas 0 0 597 521 gameboy 0; #X obj 136 165 mtof; #X obj 137 291 *~; #X obj 224 255 vline~; #X obj 275 130 / 127; #X obj 136 84 inlet; #X obj 224 53 inlet; #X obj 135 326 dac~; #X obj 224 96 select 0; #X obj 274 152 t f f; #X obj 274 180 pack 0 0; #X obj 225 285 *~; #X obj 224 312 *~; #X obj 325 156 * 0.8; #X obj 136 223 phasor~; #X obj 137 257 lop~ 18000; #X msg 224 118 0 80; #X msg 274 202 \$1 30 \, \$2 100 30; #X connect 0 0 13 0; #X connect 1 0 6 0; #X connect 1 0 6 1; #X connect 2 0 10 0; #X connect 2 0 10 1; #X connect 3 0 8 0; #X connect 4 0 0 0; #X connect 5 0 7 0; #X connect 7 0 15 0; #X connect 7 1 3 0; #X connect 8 0 9 0; #X connect 8 1 12 0; #X connect 9 0 16 0; #X connect 10 0 11 0; #X connect 10 0 11 1; #X connect 11 0 1 1; #X connect 12 0 9 1; #X connect 13 0 14 0; #X connect 14 0 1 0; #X connect 15 0 2 0; #X connect 16 0 2 0; #X restore 173 274 pd gameboy; #X obj 75 104 select 1; #X msg 75 134 \; pd dsp 1; #X msg 269 84 0 2 4 5 7 9 11; #X msg 269 105 0 2 3 5 7 9 10; #X obj 173 27 inlet; #X obj 173 72 metro 200; #X obj 173 210 makenote 100 100; #X text 296 144 careful with stack overflows!!; #X connect 0 0 7 0; #X connect 0 0 12 0; #X connect 1 0 2 0; #X connect 2 0 4 0; #X connect 2 1 5 0; #X connect 3 0 9 0; #X connect 4 0 13 0; #X connect 5 0 1 0; #X connect 7 0 8 0; #X connect 9 0 2 1; #X connect 10 0 2 1; #X connect 11 0 0 0; #X connect 12 0 1 0; #X connect 13 0 6 0; #X connect 13 1 6 1; #X restore 306 178 pd gameboy-player; #X obj 199 119 loadbang; #X msg 199 143 0 2 3 5 7 10; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION look up occurence of incoming floats in a list; #X text 12 65 INLET_0 float; #X text 12 85 INLET_1 list; #X text 12 105 OUTLET_0 float; #X text 12 125 OUTLET_1 float; #X text 12 145 AUTHOR Frank Barknecht; #X restore 495 312 pd META; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 1 1 2 0; #X connect 6 0 7 0; #X connect 8 0 9 0; #X connect 9 0 1 1; pd-list-abs_0.1/list-makefilename.pd0000644000076500007650000000225211201077563016150 0ustar hanshans#N canvas 424 89 624 640 10; #X msg 119 113 1 2 3 4 a b c; #X text 251 117 <- click to test; #X obj 196 386 list; #X obj 77 499 list; #X obj 100 385 list prepend; #X obj 78 150 t b a b; #X obj 122 178 s \$0-reset-result; #X obj 179 357 r \$0-reset-result; #X text 260 177 clear result list; #X text 181 204 "Drip" (serialize) the list; #X text 258 389 Repack the list (think of the counter); #X text 124 496 Final result is built here; #X obj 78 81 inlet; #X obj 223 248 inlet; #X obj 77 530 outlet; #X obj 100 231 route symbol; #X obj 100 334 makefilename \$1; #X text 202 228 only work on symbols; #X obj 223 272 symbol; #X msg 223 293 set \$1; #X text 148 27 Use as "list-makefilename makefilename-arg". Right inlet can be used to change the arg to makefilename. Please only use symbol placeholders (== "%s"); #X obj 100 202 list-drip; #X connect 0 0 5 0; #X connect 2 0 4 1; #X connect 3 0 14 0; #X connect 4 0 2 0; #X connect 4 0 3 1; #X connect 5 0 3 0; #X connect 5 1 21 0; #X connect 5 2 6 0; #X connect 7 0 4 1; #X connect 12 0 5 0; #X connect 13 0 18 0; #X connect 15 0 16 0; #X connect 15 1 4 0; #X connect 16 0 4 0; #X connect 18 0 19 0; #X connect 19 0 16 0; #X connect 21 0 15 0; pd-list-abs_0.1/list-insert-help.pd0000644000076500007650000000233411516222410015755 0ustar hanshans#N canvas 0 31 451 383 10; #X obj 125 251 list-insert 2; #X obj 168 172 hradio 15 1 0 8 empty empty POS_(zero-based) 0 -6 0 8 -262144 -1 -1 0; #X msg 233 222 0 1 2 3 4 5 6; #X text 231 203 original list; #X floatatom 168 197 5 0 0 0 - - -; #X text 68 69 Argument: default POS; #X text 67 49 POS is zerobased. Negative POS will count from the end. ; #X msg 125 132 list SOME ELEMENTS; #X msg 125 162 INS; #X text 65 12 list-insert: insert LIST before element at position POS in original list.; #X obj 125 280 print NEW_LIST; #X floatatom 125 190 5 0 0 0 - - -; #X text 125 113 LIST or element to insert; #N canvas 461 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 75 INLET_0 anything; #X text 12 95 INLET_1 float; #X text 12 45 DESCRIPTION insert LIST before element at position POS in original list; #X text 12 115 INLET_2 anything; #X text 12 135 OUTLET_0 list; #X restore 397 357 pd META; #X connect 0 0 10 0; #X connect 1 0 4 0; #X connect 2 0 0 2; #X connect 4 0 0 1; #X connect 7 0 0 0; #X connect 8 0 0 0; #X connect 11 0 0 0; pd-list-abs_0.1/list-map2.pd0000644000076500007650000000152110755131205014364 0ustar hanshans#N canvas 470 232 489 423 10; #X obj 86 33 inlet; #X obj 300 34 inlet; #X obj 151 352 outlet; #X obj 169 269 outlet; #X obj 151 317 list; #X obj 300 215 list prepend; #X obj 379 185 t a; #X obj 86 58 route bang; #X obj 86 83 b; #X obj 151 84 t b a; #X obj 151 124 list; #X obj 169 215 list-drip2; #X obj 169 243 list; #X obj 258 33 inlet; #X obj 234 192 list; #X obj 151 155 t b a a b b; #X connect 0 0 7 0; #X connect 1 0 5 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 5 0 4 1; #X connect 6 0 5 1; #X connect 7 0 8 0; #X connect 7 1 9 0; #X connect 8 0 10 0; #X connect 9 0 10 0; #X connect 9 1 10 1; #X connect 10 0 15 0; #X connect 11 0 12 0; #X connect 11 1 12 1; #X connect 12 0 3 0; #X connect 13 0 14 1; #X connect 14 0 11 1; #X connect 15 0 4 0; #X connect 15 1 11 0; #X connect 15 2 4 1; #X connect 15 3 14 0; #X connect 15 4 5 1; pd-list-abs_0.1/list-makefilename-a-help.pd0000644000076500007650000000263011516222410017304 0ustar hanshans#N canvas 0 31 605 472 10; #X obj 83 371 print M; #X obj 82 33 cnv 15 220 30 empty empty list-makefilename-a 20 12 0 14 -233017 -66577 0; #X msg 283 219 xyz-%s-abc; #X msg 283 199 /help/%s; #X msg 83 200 1 2 3 4 SYMBOL; #X msg 83 222 list FREQ 440 AMP 1; #X msg 283 286 const; #X msg 330 285 You-probably-%don't-want-this; #X text 317 249 pass unchanged; #X msg 283 248 %s; #N canvas 460 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 105 OUTLET_0 list; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 anything; #X text 12 45 DESCRIPTION apply makefilename on list items.; #X restore 476 411 pd META; #X obj 83 334 list-makefilename-a %s-blabla; #X text 80 76 Apply makefilename on list items.; #X text 78 111 Use as "list-makefilename-a makefilename-arg". Right inlet can be used to change the arg to makefilename. You can use any makefilename format placeholders \, but have to take care on your own \, if your incoming lists have the correct item types.; #X msg 100 249 1 2 3 4; #X msg 104 274 a b c; #X connect 2 0 11 1; #X connect 3 0 11 1; #X connect 4 0 11 0; #X connect 5 0 11 0; #X connect 6 0 11 1; #X connect 7 0 11 1; #X connect 9 0 11 1; #X connect 11 0 0 0; #X connect 14 0 11 0; #X connect 15 0 11 0; pd-list-abs_0.1/list-unique-help.pd0000644000076500007650000000261211516222410015756 0ustar hanshans#N canvas 0 31 543 489 10; #X msg 93 366; #N canvas 0 0 450 300 show 0; #X obj 41 39 inlet; #X obj 41 124 outlet; #X obj 41 59 list prepend set; #X obj 41 83 list trim; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X restore 93 336 pd show; #X msg 105 307 bang; #X text 90 415 2007 Frank Barknecht; #X text 208 246 number of allowed repetitions (default 1); #X obj 93 270 list-unique; #X floatatom 165 246 5 0 0 0 - - -; #X msg 112 100 1 1 1 1 1 1 1 1; #X msg 93 78 1 2 3 2 1; #X text 56 27 [list-unique] - remove duplicates from a list; #X text 90 57 list to uniquify; #X obj 120 144 hradio 15 1 0 3 empty empty empty 0 -8 0 10 -262144 -1 -1 0; #X obj 150 212 + 1; #X obj 120 162 t b a; #X msg 120 183 list H e l l o - W o r l d; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION remove duplicates from a list; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 float; #X text 12 105 OUTLET_0 list; #X text 12 5 KEYWORDS control list_op filter; #X restore 474 450 pd META; #X connect 1 0 0 0; #X connect 2 0 1 0; #X connect 5 0 1 0; #X connect 6 0 5 1; #X connect 7 0 5 0; #X connect 8 0 5 0; #X connect 11 0 13 0; #X connect 12 0 6 0; #X connect 13 0 14 0; #X connect 13 1 12 0; #X connect 14 0 5 0; pd-list-abs_0.1/list-abs-help.pd0000644000076500007650000000124111516222410015212 0ustar hanshans#N canvas 0 26 475 311 10; #X obj 147 204 print; #X msg 147 109 1 2 -3 -4 5 and -6; #X text 55 66 list-abs: apply abs() on float elements of a list.; #X obj 147 158 list-abs; #N canvas 416 170 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 115 AUTHOR Frank Barknecht; #X text 12 45 DESCRIPTION list-abs: apply abs() on float elements of a list.; #X text 12 75 INLET_0 list; #X text 12 95 OUTLET_0 list; #X text 12 135 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op needs_work (object won't create) ; #X restore 397 277 pd META; #X connect 1 0 3 0; #X connect 3 0 0 0; pd-list-abs_0.1/list-equalize-help.pd0000644000076500007650000000350311516222410016267 0ustar hanshans#N canvas 0 26 562 531 10; #X obj 93 283 list-equalize; #X obj 93 71 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 93 248 pack 0 0 0; #X obj 115 209 t b f; #X obj 161 212 t b f; #X obj 93 310 unpack 0 0 0; #X obj 128 71 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 161 71 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X floatatom 93 341 5 0 0 0 - - -; #X floatatom 132 341 5 0 0 0 - - -; #X floatatom 172 341 5 0 0 0 - - -; #X obj 93 367 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 132 367 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 172 367 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X text 207 34 list-equalize:; #X text 227 53 scale a list so that all float elements sum up to 1 ; #X text 227 77 L_result = L_input / sum(L_input); #X obj 306 253 list-equalize; #X obj 306 280 print; #X text 258 177 Also handles non-float elements gracefully.; #X msg 306 226 90 plus 10 is 100; #X text 40 138 0-127; #X text 42 427 0-1; #N canvas 416 170 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 115 AUTHOR Frank Barknecht; #X text 12 95 OUTLET_0 list; #X text 12 135 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION scale a list so that all float elements sum up to 1; #X text 12 5 KEYWORDS control list_op; #X text 12 75 INLET_0 anything; #X restore 500 502 pd META; #X connect 0 0 5 0; #X connect 1 0 2 0; #X connect 2 0 0 0; #X connect 3 0 2 0; #X connect 3 1 2 1; #X connect 4 0 2 0; #X connect 4 1 2 2; #X connect 5 0 8 0; #X connect 5 1 9 0; #X connect 5 2 10 0; #X connect 6 0 3 0; #X connect 7 0 4 0; #X connect 8 0 11 0; #X connect 9 0 12 0; #X connect 10 0 13 0; #X connect 17 0 18 0; #X connect 20 0 17 0; pd-list-abs_0.1/last-x-help.pd0000644000076500007650000000131511516222410014706 0ustar hanshans#N canvas 0 26 569 323 10; #X obj 188 143 last-x 4; #X floatatom 188 118 5 0 0 0 - - -; #X obj 188 174 print last_x; #X text 124 52 last-x: make a list of the last x floats.; #X floatatom 239 119 5 0 0 2 change-size - -; #N canvas 520 35 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION make a list of the last x floats; #X text 12 65 INLET_0 float; #X text 12 105 OUTLET_0 list; #X text 12 85 INLET_1 float; #X restore 511 292 pd META; #X connect 0 0 2 0; #X connect 1 0 0 0; #X connect 4 0 0 1; pd-list-abs_0.1/list-find-help.pd0000644000076500007650000000343711516222410015376 0ustar hanshans#N canvas 0 26 552 533 10; #X floatatom 159 259 5 0 0 0 - - -; #X obj 144 331 list-find; #X obj 202 293 loadbang; #X obj 101 449 print FOUND_AT; #X text 59 21 [list-find]; #N canvas 516 236 450 300 collect 0; #X obj 195 37 inlet; #X obj 41 37 inlet; #X obj 41 144 outlet; #X msg 195 74 set; #X text 143 140 1993-2004 by Karlheinz Essl; #X text 143 160 vs. 1.1; #X obj 41 99 list trim; #X obj 41 74 list prepend add2; #X connect 0 0 3 0; #X connect 1 0 7 0; #X connect 3 0 2 0; #X connect 6 0 2 0; #X connect 7 0 6 0; #X restore 144 395 pd collect; #X obj 144 309 t a b; #X msg 159 237 0; #X msg 189 237 4; #X text 120 53 Find position(s) of a value in a list.; #X text 120 72 Inlet0: value to search; #X text 120 91 Inlet1: list to search in.; #X msg 144 184 seven; #X msg 202 315 0 1 2 3 4 5 6 seven eight 0 0; #X msg 144 206 symbol eight; #X msg 144 417; #X text 120 110 Outlet0: stream of found positions; #X floatatom 202 354 5 0 0 1 hits - -; #X msg 219 237 100; #X text 120 129 Outlet1: after list was completely scanned \, report number of elements found.; #N canvas 491 26 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 145 AUTHOR Frank Barknecht; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 125 OUTLET_1 float; #X text 12 45 DESCRIPTION find position(s) of a value in a list; #X text 12 65 INLET_0 float; #X text 12 85 INLET_1 list; #X text 12 105 OUTLET_0 float; #X restore 483 503 pd META; #X connect 0 0 6 0; #X connect 1 0 3 0; #X connect 1 0 5 0; #X connect 1 1 17 0; #X connect 2 0 13 0; #X connect 5 0 15 0; #X connect 6 0 1 0; #X connect 6 1 5 1; #X connect 7 0 0 0; #X connect 8 0 0 0; #X connect 12 0 6 0; #X connect 13 0 1 1; #X connect 14 0 6 0; #X connect 18 0 0 0; pd-list-abs_0.1/list-unitvec-help.pd0000644000076500007650000000157211516222410016131 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 141 197 list-unitvec; #X obj 141 229 print; #X msg 158 163 1 1 0; #X msg 153 140 1 0 0; #X msg 149 108 0 2 2; #X msg 141 84 0 2 a 0; #X text 34 28 list-unitvec; #X text 52 48 make a unit vector out of any list \, ignoring non-float elements (i.e. normalize a list geometrically); #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 115 AUTHOR Frank Barknecht; #X text 12 135 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 95 OUTLET_0 list; #X text 12 45 DESCRIPTION make a unit vector out of any list \, ignoring non-float elements (i.e. normalize a list geometrically); #X text 12 75 INLET_0 list; #X restore 385 265 pd META; #X connect 0 0 1 0; #X connect 2 0 0 0; #X connect 3 0 0 0; #X connect 4 0 0 0; #X connect 5 0 0 0; pd-list-abs_0.1/list-math-help.pd0000644000076500007650000000346611516222410015411 0ustar hanshans#N canvas 0 31 618 551 10; #X obj 100 259 print L; #X msg 100 194 1 2 3 4 a b c; #X floatatom 210 193 5 0 0 0 - - -; #X obj 344 263 print L; #X msg 344 198 1 2 3 4 a b c; #X floatatom 454 197 5 0 0 0 - - -; #X obj 104 365 print L; #X msg 104 300 1 2 3 4 a b c; #X floatatom 214 299 5 0 0 0 - - -; #X obj 100 226 list-math *; #X msg 99 167 1 2 3 4 a b c \, 10 20 30 x y z; #X text 72 87 Use as "list-math operator" where operator is some binary operator \, that expr can understand \, like + \, - \, * or /; #X obj 346 373 print L; #X msg 346 308 1 2 3 4 a b c; #X floatatom 456 307 5 0 0 0 - - -; #X obj 72 31 cnv 15 140 30 empty empty list-math 20 12 0 14 -233017 -66577 0; #X text 232 40 simple mathematical operations on lists.; #X obj 344 230 list-math +; #X obj 104 332 list-math /; #X obj 346 340 list-math -; #X msg 346 416 1 2 3 4 a b c; #X floatatom 456 415 5 0 0 0 - - -; #X obj 346 448 list-math - 2; #X obj 346 481 print L-with-arg; #X text 189 448 Using a default arg:; #X text 71 125 A second argument is accepted to set a default scalar to use.; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 65 INLET_0 anything; #X text 12 5 KEYWORDS control list_op; #X text 12 105 OUTLET_0 list; #X text 12 45 DESCRIPTION simple mathematical operations on lists; #X text 12 85 INLET_1 float; #X restore 556 521 pd META; #X connect 1 0 9 0; #X connect 2 0 9 1; #X connect 4 0 17 0; #X connect 5 0 17 1; #X connect 7 0 18 0; #X connect 8 0 18 1; #X connect 9 0 0 0; #X connect 10 0 9 0; #X connect 13 0 19 0; #X connect 14 0 19 1; #X connect 17 0 3 0; #X connect 18 0 6 0; #X connect 19 0 12 0; #X connect 20 0 22 0; #X connect 21 0 22 1; #X connect 22 0 23 0; pd-list-abs_0.1/list-delete.pd0000644000076500007650000000117510755131206014775 0ustar hanshans#N canvas 18 49 525 309 10; #X obj 151 149 list-splat \$1; #X obj 237 50 inlet; #X text 235 30 pos; #X obj 151 51 inlet; #X text 135 29 orig. list; #X obj 194 217 list split 1; #X obj 151 256 list; #X obj 151 285 outlet; #X obj 302 127 moses 1; #X obj 302 50 inlet; #X obj 327 78 loadbang; #X text 299 30 how many items to delete; #X obj 302 106 f \$2; #X msg 302 149 1; #X connect 0 0 6 0; #X connect 0 1 5 0; #X connect 0 2 7 0; #X connect 1 0 0 1; #X connect 3 0 0 0; #X connect 5 1 6 1; #X connect 6 0 7 0; #X connect 8 0 13 0; #X connect 8 1 5 1; #X connect 9 0 12 0; #X connect 10 0 12 0; #X connect 12 0 8 0; #X connect 13 0 5 1; pd-list-abs_0.1/list-nth.pd0000644000076500007650000000075711201077563014333 0ustar hanshans#N canvas 0 0 570 388 10; #X obj 116 86 list; #X msg 203 167 set \, adddollar \$1; #X obj 116 259 outlet; #X obj 116 57 inlet; #X obj 171 88 f \$1; #X obj 217 58 loadbang; #X obj 171 57 inlet; #X obj 171 111 moses; #X obj 203 133 + 1; #X msg 171 145 set; #X msg 116 227; #X connect 0 0 10 0; #X connect 1 0 10 0; #X connect 3 0 0 0; #X connect 4 0 7 0; #X connect 5 0 4 0; #X connect 6 0 4 0; #X connect 7 0 9 0; #X connect 7 1 8 0; #X connect 8 0 1 0; #X connect 9 0 10 0; #X connect 10 0 2 0; pd-list-abs_0.1/list-normalize.pd0000644000076500007650000000055210755131206015531 0ustar hanshans#N canvas 306 264 642 393 10; #X obj 209 202 list-minmax; #X obj 209 170 list-abs; #X obj 179 77 inlet; #X obj 179 99 t a a; #X obj 209 286 list-math /; #X obj 209 319 outlet; #X text 135 41 list-normalize: normalize a list inside (-1 \, 1); #X connect 0 1 4 1; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 3 1 1 0; #X connect 4 0 5 0; pd-list-abs_0.1/list-inter.pd0000644000076500007650000000230710755131205014651 0ustar hanshans#N canvas 364 37 760 649 10; #X obj 345 204 list-drip; #X obj 426 327 list-dripslow; #X obj 345 264 t a b; #X obj 439 434 t l; #X obj 322 477 list; #X obj 322 502 outlet; #X obj 345 176 list; #X obj 368 145 inlet; #X obj 535 282 inlet; #X obj 345 64 inlet; #X obj 345 434 list prepend; #X obj 345 369 expr $f3*($f2-$f1) + $f1; #X text 23 67 inlets:; #X text 37 85 1) float 0-1: distance between lists; #X text 39 106 2) list 1; #X text 39 125 2) list 2; #X text 20 25 list-inter: elementwise linear interpolation between two (float) lists.; #X obj 345 93 t b f b; #X obj 512 303 list; #X obj 512 259 r \$0-start; #X obj 389 117 s \$0-start; #X obj 424 411 r \$0-start; #X obj 345 226 route float; #X text 14 197 Non-float elements in first list will be kept.; #X connect 0 0 22 0; #X connect 0 1 4 0; #X connect 1 0 11 1; #X connect 2 0 11 0; #X connect 2 1 1 0; #X connect 3 0 10 1; #X connect 4 0 5 0; #X connect 6 0 0 0; #X connect 7 0 6 1; #X connect 8 0 18 1; #X connect 9 0 17 0; #X connect 10 0 3 0; #X connect 10 0 4 1; #X connect 11 0 10 0; #X connect 17 0 6 0; #X connect 17 1 11 2; #X connect 17 2 20 0; #X connect 18 0 1 1; #X connect 19 0 18 0; #X connect 21 0 10 1; #X connect 22 0 2 0; #X connect 22 1 10 0; pd-list-abs_0.1/list-map-help.pd0000644000076500007650000001616211516222410015232 0ustar hanshans#N canvas 0 31 612 654 10; #X obj 67 280 list-map; #X text 65 22 [list-map] - the swiss army knife of list-operations ; #X obj 135 280 spigot; #X obj 171 263 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X msg 67 236 0 1 2 3; #X obj 118 317 print SERIALIZED; #X obj 67 346 print MAIN; #X msg 313 238 0 1 2 3; #X obj 364 319 print SERIALIZED; #X obj 313 348 print MAIN; #X floatatom 404 262 5 0 0 0 - - -; #X msg 67 215 bang; #X msg 145 235 a b c; #X msg 145 215 bang; #X obj 381 282 * 10; #X msg 313 214 bang; #X msg 72 417 0 1 2 3; #X obj 72 506 list trim; #X obj 72 486 list prepend set; #X msg 72 528; #X obj 138 441 list append -|-; #X msg 227 511 set; #X text 304 534 A more complex example:; #N canvas 164 99 846 438 filters 0; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-in 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 503 222 graph; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-out 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 645 222 graph; #X obj 110 316 s \$0-out; #N canvas 414 307 437 371 tabdump-in 0; #X obj 147 152 tabread \$0-in; #X obj 147 205 list prepend; #X obj 238 205 t a; #X obj 125 254 list; #X obj 125 23 inlet; #X obj 125 279 outlet; #X obj 125 46 t b b b; #X msg 147 104 64; #N canvas 0 0 450 300 countto 0; #X obj 163 151 f 0; #X obj 190 151 + 1; #X obj 163 109 until; #X msg 205 111 0; #X obj 163 180 outlet; #X obj 163 39 inlet; #X obj 163 87 t a b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X restore 147 126 pd countto; #X connect 0 0 1 0; #X connect 1 0 3 1; #X connect 1 0 2 0; #X connect 2 0 1 1; #X connect 3 0 5 0; #X connect 4 0 6 0; #X connect 6 0 3 0; #X connect 6 1 7 0; #X connect 6 2 1 1; #X connect 7 0 8 0; #X connect 8 0 0 0; #X restore 110 206 pd tabdump-in; #X msg 110 155 bang; #X obj 110 294 list prepend 0; #N canvas 0 0 297 272 pole 0; #X obj 71 140 +; #X obj 71 172 t a a; #X obj 117 173 * 0.9; #X obj 71 54 inlet; #X obj 147 51 inlet; #X obj 71 230 outlet; #X text 72 17 one-pole filter; #X obj 147 74 t b a; #X msg 87 118 0; #X connect 0 0 1 0; #X connect 1 0 5 0; #X connect 1 1 2 0; #X connect 2 0 0 1; #X connect 3 0 0 0; #X connect 4 0 7 0; #X connect 7 0 8 0; #X connect 7 1 2 1; #X connect 8 0 0 1; #X restore 297 269 pd pole; #X obj 269 117 hsl 64 15 0 0.99 0 0 empty empty filter-coeff -2 -8 1 10 -262144 -1 -1 0 1; #N canvas 0 0 297 272 zero 0; #X obj 71 142 t a a; #X obj 71 44 inlet; #X obj 124 41 inlet; #X obj 71 230 outlet; #X text 71 20 one-zero filter; #X obj 71 204 +; #X obj 154 112 * -1; #X obj 71 168 * -0.5; #X obj 124 66 t b a; #X msg 87 113 0; #X connect 0 0 7 0; #X connect 0 1 5 0; #X connect 1 0 0 0; #X connect 2 0 8 0; #X connect 5 0 3 0; #X connect 6 0 7 1; #X connect 7 0 5 1; #X connect 8 0 9 0; #X connect 8 1 6 0; #X connect 9 0 5 1; #X restore 244 269 pd zero; #N canvas 0 0 341 267 split 0; #X obj 11 193 outlet; #X obj 68 194 outlet; #X obj 11 143 list prepend 0; #X obj 11 169 route 0 1; #X obj 104 110 hradio 12 1 0 2 empty empty zero 28 3 1 10 -262144 -1 -1 0; #X obj 11 68 inlet; #X obj 180 33 select 0 1; #X msg 180 62 label zero; #X msg 211 87 label pole; #X obj 104 38 loadbang; #X msg 104 64 0; #X connect 2 0 3 0; #X connect 3 0 0 0; #X connect 3 1 1 0; #X connect 4 0 2 1; #X connect 4 0 6 0; #X connect 5 0 2 0; #X connect 6 0 7 0; #X connect 6 1 8 0; #X connect 7 0 4 0; #X connect 8 0 4 0; #X connect 9 0 10 0; #X connect 10 0 4 0; #X coords 0 -1 1 1 60 30 2 100 100; #X restore 244 217 pd split; #X floatatom 266 139 5 0 0 0 - - -; #N canvas 0 0 297 280 noise 0; #X obj 33 115 random 1000; #X obj 33 88 t b a; #X obj 33 194 tabwrite \$0-in; #X obj 33 143 / 500; #X obj 33 163 - 1; #X msg 33 44 64; #N canvas 0 0 450 300 countto 0; #X obj 163 151 f 0; #X obj 190 151 + 1; #X obj 163 109 until; #X msg 205 111 0; #X obj 163 180 outlet; #X obj 163 39 inlet; #X obj 163 87 t a b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X restore 33 66 pd countto; #X obj 33 21 inlet; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 1 1 2 1; #X connect 3 0 4 0; #X connect 4 0 2 0; #X connect 5 0 6 0; #X connect 6 0 1 0; #X connect 7 0 5 0; #X restore 504 184 pd noise; #X msg 504 160 make noise; #X obj 266 158 t b a a; #X msg 439 324 const 0; #X obj 439 365 s \$0-in; #X obj 440 390 s \$0-out; #X msg 500 324 const 0 \, 16 1; #X text 498 308 impulse; #X text 112 34 This is a more complex example showing how to apply a set of elementary filters on a list of floats. Try playing with the coeff-slider and switch between pole and zero operation.; #X obj 110 236 list-map; #X connect 3 0 20 0; #X connect 4 0 3 0; #X connect 5 0 2 0; #X connect 6 0 20 1; #X connect 7 0 10 0; #X connect 8 0 20 1; #X connect 9 0 8 0; #X connect 9 1 6 0; #X connect 10 0 13 0; #X connect 12 0 11 0; #X connect 13 0 3 0; #X connect 13 1 8 1; #X connect 13 2 6 1; #X connect 14 0 15 0; #X connect 14 0 16 0; #X connect 17 0 15 0; #X connect 20 0 5 0; #X connect 20 1 9 0; #X restore 330 556 pd filters; #X text 67 596 2007 Frank Barknecht \, original idea by IOhannes m zmoelnig and Thomas Musil.; #X obj 313 282 list-map; #X obj 72 441 list-map; #X msg 71 391 bang; #X text 64 52 Calls a user-defined operation for each of the incoming list's items and returns a list of the return values.; #X text 64 90 [list-map] is a helper abstraction to make element-wise operations on lists easy to patch. The basic idea is to bundle a list-serializer and a list-repacker into one object. Then you connect whatever operation should be applied on every list item to the right outlet and send the modified items back to the right inlet. Here the modified elements get packed into a list again and sent to the left outlet of [list-map]. ; #X obj 315 430 list-map; #X obj 315 472 list trim; #X obj 315 452 list prepend set; #X obj 387 430 pow 3; #X floatatom 417 407 5 0 0 0 - - -; #X msg 315 405 1 2 3 4 5; #X msg 315 494; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 75 INLET_0 anything; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION call a user-defined operation for each of the incoming list's items and return a list of the return values; #X text 12 95 INLET_1 anything; #X text 12 115 OUTLET_0 list; #X text 12 135 OUTLET_1 float symbol pointer; #X restore 533 611 pd META; #X connect 0 0 6 0; #X connect 0 1 2 0; #X connect 0 1 5 0; #X connect 2 0 0 1; #X connect 3 0 2 1; #X connect 4 0 0 0; #X connect 7 0 25 0; #X connect 10 0 14 1; #X connect 11 0 0 0; #X connect 12 0 0 1; #X connect 13 0 0 1; #X connect 14 0 25 1; #X connect 15 0 25 0; #X connect 16 0 26 0; #X connect 17 0 19 0; #X connect 18 0 17 0; #X connect 20 0 26 1; #X connect 21 0 19 0; #X connect 25 0 9 0; #X connect 25 1 8 0; #X connect 25 1 14 0; #X connect 26 0 18 0; #X connect 26 1 20 0; #X connect 27 0 26 0; #X connect 30 0 32 0; #X connect 30 1 33 0; #X connect 31 0 36 0; #X connect 32 0 31 0; #X connect 33 0 30 1; #X connect 34 0 33 1; #X connect 35 0 30 0; pd-list-abs_0.1/take-two-help.pd0000644000076500007650000000134711516222410015236 0ustar hanshans#N canvas 0 31 578 344 10; #X obj 68 133 take-two; #X obj 68 176 print; #X msg 68 77 1 2 3 4; #X msg 130 76 list a b c d e f g h; #X text 146 126 take a list as input and print all combinations of length two without repetition.; #N canvas 520 226 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 115 AUTHOR Frank Barknecht; #X text 12 135 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION take a list as input and print all combinations of length two without repetition; #X text 12 75 INLET_0 list; #X text 12 95 OUTLET_0 list; #X restore 494 302 pd META; #X connect 0 0 1 0; #X connect 2 0 0 0; #X connect 3 0 0 0; pd-list-abs_0.1/list-dotprod-help.pd0000644000076500007650000000176411516222410016132 0ustar hanshans#N canvas 0 26 483 343 10; #X obj 59 150 list-dotprod; #X msg 138 118 3 1; #X text 40 32 list-dotprod; #X text 60 53 dot-product of two lists: res = sum(Xi*Yi); #X obj 290 188 list-mult; #X obj 290 215 list-accum; #X msg 348 160 3 1; #X floatatom 59 179 5 0 0 0 - - -; #X floatatom 290 240 5 0 0 0 - - -; #X text 240 137 a bit faster \, but the same as; #X msg 59 119 2 4; #X msg 290 161 2 4; #X text 57 209 2*3 + 4*1 = 10; #N canvas 520 35 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 65 INLET_0 list; #X text 12 85 INLET_1 list; #X text 12 105 OUTLET_0 list; #X text 12 45 DESCRIPTION dot-product of two lists : res = sum(Xi*Yi) ; #X restore 421 312 pd META; #X connect 0 0 7 0; #X connect 1 0 0 1; #X connect 4 0 5 0; #X connect 5 0 8 0; #X connect 6 0 4 1; #X connect 10 0 0 0; #X connect 11 0 4 0; pd-list-abs_0.1/README.txt0000644000076500007650000000031511516222410013720 0ustar hanshanslist-abs -------- A collection of list-processing abstractions for Pd. For a list of included objects open list-abs-intro.pd or list-abs-intro.txt Maintainer: Frank Barknecht -- pd-list-abs_0.1/list-makefilename-a.pd0000644000076500007650000000201611516222410016354 0ustar hanshans#N canvas 674 83 624 640 10; #X msg 119 113 1 2 3 4 a b c; #X text 251 117 <- click to test; #X obj 196 386 list; #X obj 77 499 list; #X obj 100 385 list prepend; #X obj 78 150 t b a b; #X obj 122 178 s \$0-reset-result; #X obj 179 357 r \$0-reset-result; #X text 260 177 clear result list; #X text 181 204 "Drip" (serialize) the list; #X text 258 389 Repack the list (think of the counter); #X text 124 496 Final result is built here; #X obj 78 81 inlet; #X obj 223 248 inlet; #X obj 77 530 outlet; #X obj 100 334 makefilename \$1; #X obj 223 272 symbol; #X msg 223 293 set \$1; #X text 148 27 Use as "list-makefilename makefilename-arg". Right inlet can be used to change the arg to makefilename.; #X obj 100 202 list-drip; #X connect 0 0 5 0; #X connect 2 0 4 1; #X connect 3 0 14 0; #X connect 4 0 2 0; #X connect 4 0 3 1; #X connect 5 0 3 0; #X connect 5 1 19 0; #X connect 5 2 6 0; #X connect 7 0 4 1; #X connect 12 0 5 0; #X connect 13 0 16 0; #X connect 15 0 4 0; #X connect 16 0 17 0; #X connect 17 0 15 0; #X connect 19 0 15 0; pd-list-abs_0.1/list-inter-help.pd0000644000076500007650000000362411516222410015575 0ustar hanshans#N canvas 0 31 555 606 10; #X text 101 83 inlets:; #X text 115 101 1) float 0-1: distance between lists; #X text 117 122 2) list 1; #X text 117 141 2) list 2; #X text 95 30 list-inter: elementwise linear interpolation between two (float) lists.; #X obj 228 153 hsl 128 15 0 1 0 0 empty empty factor_(0-1) -2 -6 0 10 -262144 -1 -1 0 0; #X obj 225 359 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 264 359 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 304 359 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X floatatom 225 333 5 0 0 0 - - -; #X floatatom 264 333 5 0 0 0 - - -; #X floatatom 304 333 5 0 0 0 - - -; #X obj 225 282 list-inter; #X text 87 519 Also see [triple-scale] \, but [list-inter] works for float lists of arbitrary length.; #X obj 225 311 unpack 0 0 0 0; #X obj 343 360 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X floatatom 343 334 5 0 0 0 - - -; #X obj 164 307 print; #X text 96 63 Non-float elements in first list will be kept.; #X msg 257 181 5 2 9 3; #X msg 267 207 5 x 9 3; #X text 326 207 careful!; #X msg 290 255 8 7 1 10; #N canvas 432 135 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 135 OUTLET_0 list; #X text 12 45 DESCRIPTION elementwise linear interpolation between two (float) lists; #X text 12 75 INLET_0 float; #X text 12 95 INLET_1 list; #X text 12 115 INLET_2 list; #X restore 497 577 pd META; #X connect 5 0 12 0; #X connect 9 0 6 0; #X connect 10 0 7 0; #X connect 11 0 8 0; #X connect 12 0 14 0; #X connect 12 0 17 0; #X connect 14 0 9 0; #X connect 14 1 10 0; #X connect 14 2 11 0; #X connect 14 3 16 0; #X connect 16 0 15 0; #X connect 19 0 12 1; #X connect 20 0 12 1; #X connect 22 0 12 2; pd-list-abs_0.1/list-seek-help.pd0000644000076500007650000000717511516222410015410 0ustar hanshans#N canvas 0 31 666 505 10; #X msg 139 267 list one two three four; #X obj 139 365 bng 15 250 50 0 empty empty empty 0 -6 0 10 -262144 -1 -1; #X text 160 366 bang when done or index out of range; #X floatatom 98 151 5 0 0 0 - - -; #X msg 81 104 bang; #N canvas 0 0 450 300 show 0; #X obj 47 38 inlet; #X obj 47 115 outlet; #X obj 47 62 list prepend set; #X obj 47 85 list trim; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X restore 81 403 pd show; #X msg 89 381 bang; #X msg 165 312 0 1 2 3 4 5 6 7 8 9; #X msg 151 290 twenty three 23; #X text 322 267 Set list to seek (will also do a rewind); #X text 75 45 walk through a list element by element - similar to [textfile] and [qlist].; #X text 142 149 output item by index number (zero-based \, only positive) ; #X text 63 461 2007 Hans-Christoph Steiner \, Frank Barknecht; #X msg 129 221 set; #X msg 121 200 set \$1; #X floatatom 121 180 5 0 0 0 - - -; #X text 175 223 just "set" is "set 0" (rewind); #X text 173 200 set start position without output; #X obj 81 334 list-seek; #X text 130 103 output one item and move to the next (takes off \, where the last float \, set or bang message was); #X text 63 19 [list-seek]; #N canvas 324 88 739 396 example 0; #X msg 203 170 0; #X obj 145 140 list-seek; #X obj 63 152 delay; #X obj 78 184 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X obj 203 196 spigot; #X obj 240 26 tgl 32 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 145 71 select 1; #X obj 145 92 t b b; #X obj 63 333 dac~; #X obj 64 309 *~ 0; #X obj 101 309 dbtorms; #X obj 104 286 hsl 128 15 0 100 0 0 empty empty empty -2 -8 0 10 -262144 -1 -1 0 1; #X text 261 171 Caution: may generate stack overflows when [list-seek] is uninitialized!; #X obj 219 141 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X floatatom 93 105 5 0 0 0 - - -; #N canvas 0 0 397 287 plong~ 0; #X obj 112 142 vline~; #X obj 112 221 *~; #X obj 112 245 outlet~; #X obj 112 54 inlet; #X obj 127 200 osc~ 220; #X obj 113 168 *~; #X msg 112 113 1 3 \, 0 100 20; #X obj 112 78 t b a; #X obj 215 112 mtof; #X connect 0 0 5 0; #X connect 0 0 5 1; #X connect 1 0 2 0; #X connect 3 0 7 0; #X connect 4 0 1 1; #X connect 5 0 1 0; #X connect 6 0 0 0; #X connect 7 0 6 0; #X connect 7 1 8 0; #X connect 8 0 4 0; #X restore 63 263 pd plong~; #X obj 63 130 * 120; #X msg 63 240 60; #X msg 203 115 0 2 2 1 2 2 2 1; #X connect 0 0 4 0; #X connect 1 0 16 0; #X connect 1 1 0 0; #X connect 1 1 13 0; #X connect 2 0 3 0; #X connect 2 0 1 0; #X connect 2 0 17 0; #X connect 4 0 1 0; #X connect 5 0 4 1; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 1 0; #X connect 7 1 18 0; #X connect 9 0 8 0; #X connect 9 0 8 1; #X connect 10 0 9 1; #X connect 11 0 10 0; #X connect 14 0 16 1; #X connect 15 0 9 0; #X connect 16 0 2 0; #X connect 17 0 15 0; #X connect 18 0 1 1; #X restore 265 407 pd example; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION walk through a list element by element - similar to [textfile] and [qlist]; #X text 12 5 KEYWORDS control list_op storage; #X text 12 75 INLET_0 bang float set; #X text 12 95 INLET_1 anything; #X text 12 115 OUTLET_0 symbol float pointer; #X text 12 135 OUTLET_1 bang; #X text 12 155 AUTHOR Frank Barknecht \, Hans-Christoph Steiner; #X restore 602 471 pd META; #X msg 81 424; #X connect 0 0 18 1; #X connect 3 0 18 0; #X connect 4 0 18 0; #X connect 5 0 23 0; #X connect 6 0 5 0; #X connect 7 0 18 1; #X connect 8 0 18 1; #X connect 13 0 18 0; #X connect 14 0 18 0; #X connect 15 0 14 0; #X connect 18 0 5 0; #X connect 18 1 1 0; pd-list-abs_0.1/list-geometric-mean-help.pd0000644000076500007650000001220211516222410017340 0ustar hanshans#N struct 1106-dial float y; #N canvas 0 31 540 547 10; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 193 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 112 73 + 1; #X obj 112 53 random 10; #X obj 134 151 random 10; #X obj 134 171 + 1; #X connect 0 0 8 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 7 0; #X connect 6 0 3 0; #X connect 7 0 6 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X restore 153 266 pd randlist; #X msg 153 244 bang; #X floatatom 98 400 5 0 0 1 geometric_mean - -; #X msg 153 292 8 6 7 3 8 3 1 7; #X msg 98 189 1 2 3 4; #X msg 98 215 any symbols 1 2 3 4 are ignored; #X text 96 146 Non-floats in a list are silently dropped.; #X obj 98 366 list-geometric-mean; #X text 86 22 [list-geometric-mean]; #X text 96 51 Calculates the geometric mean of a list (of floats) according to:; #X text 96 119 where n is the total number of floats in a list.; #X text 232 329 0 destroys everything!; #X msg 154 328 1 2 0 3 4; #X text 114 91 geometric mean = pow(f0 * f1 * f2 * ... * fn \, 1/n) ; #N canvas 318 53 648 574 graphical-mean 0; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 213 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 134 151 random 100; #X msg 112 59 10; #X obj 134 191 / 10; #X obj 134 170 + 1; #X connect 0 0 6 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 7 0; #X connect 6 0 9 0; #X connect 7 0 3 0; #X connect 8 0 2 0; #X connect 9 0 8 0; #X restore 79 388 pd randlist; #X msg 79 366 bang; #X obj 79 447 list prepend 0; #X obj 79 500 s \$0-tab; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-tab 10 float 0; #X coords 0 10 9 0 200 140 1; #X restore 75 152 graph; #N canvas 0 0 916 918 \$0-c 0; #X scalar 1106-dial 0 \;; #X coords 0 0 200 140 200 140 1; #X restore 75 152 pd \$0-c; #N canvas 0 0 503 429 create 0; #X msg 242 258 traverse pd-\$1 \, bang; #X obj 242 238 symbol \$0-c; #X msg 107 79 0; #X obj 242 278 pointer; #X msg 243 178 clear; #X obj 243 205 s pd-\$0-c; #X obj 107 114 t a b b; #X obj 107 50 loadbang; #X obj 107 326 outlet; #X obj 107 302 append \$0-dial y; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 2 0 6 0; #X connect 3 0 9 1; #X connect 4 0 5 0; #X connect 6 0 9 0; #X connect 6 1 1 0; #X connect 6 2 4 0; #X connect 7 0 2 0; #X connect 9 0 8 0; #X restore 468 339 pd create; #X obj 339 127 metro 50; #X obj 339 102 tgl 15 0 empty empty show-mean 17 7 1 10 -258699 -262144 -1 0 1; #N canvas 473 338 450 300 countto 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 174 113 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 116 until; #X obj 131 96 t a b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 6 0; #X connect 5 0 0 0; #X connect 6 0 5 0; #X connect 6 1 2 0; #X restore 362 195 pd countto; #X obj 362 219 tabread \$0-tab; #X obj 362 249 list prepend; #X obj 452 249 t a; #X msg 362 175 10; #X obj 339 148 t b b b; #X obj 339 274 list; #X obj 79 344 loadbang; #X msg 79 414 0.6 6.9 3.6 5.6 0.7 3.8 3.9 5.3 9.2 9.2; #X text 77 30 Switch on the "show"-metro and play with the values in the array.; #N canvas 336 319 712 355 \$0-dial 0; #X obj 19 119 outlet; #X obj 19 86 route change; #X obj 19 62 struct \$0-dial float y; #X obj 229 62 drawpolygon 900 2 0 y 200 y; #X connect 1 0 0 0; #X connect 2 0 1 0; #X restore 453 315 pd \$0-dial; #X msg 213 469 bounds 0 10 9 0; #X obj 213 449 loadbang; #X obj 339 388 set \$0-dial y; #X floatatom 339 339 5 0 0 0 - - -; #X msg 92 469 const 5; #N canvas 0 0 299 354 scale 0; #X msg 74 83 10 \$1; #X obj 74 107 -; #X obj 74 158 * 140; #X obj 74 134 / 20; #X obj 74 49 inlet; #X obj 74 182 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 5 0; #X connect 3 0 2 0; #X connect 4 0 0 0; #X restore 339 363 pd scale; #X obj 339 313 list-geometric-mean; #X connect 0 0 17 0; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 6 0 22 1; #X connect 7 0 14 0; #X connect 8 0 7 0; #X connect 9 0 10 0; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 11 0 15 1; #X connect 12 0 11 1; #X connect 13 0 9 0; #X connect 14 0 15 0; #X connect 14 1 13 0; #X connect 14 2 11 1; #X connect 15 0 26 0; #X connect 16 0 1 0; #X connect 17 0 2 0; #X connect 19 0 22 1; #X connect 20 0 3 0; #X connect 21 0 20 0; #X connect 23 0 25 0; #X connect 24 0 3 0; #X connect 25 0 22 0; #X connect 26 0 23 0; #X restore 98 420 pd graphical-mean; #X obj 185 453 list-harmonic-mean; #X obj 184 474 list-mean; #X text 97 450 More means:; #N canvas 491 26 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION calculate the geometric mean of a list of floats; #X text 12 65 INLET_0 list; #X text 12 85 OUTLET_0 float; #X restore 478 520 pd META; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 3 0 7 0; #X connect 4 0 7 0; #X connect 5 0 7 0; #X connect 7 0 2 0; #X connect 12 0 7 0; pd-list-abs_0.1/list-dripslow.pd0000644000076500007650000000071311201077563015375 0ustar hanshans#N canvas 592 504 407 292 10; #X obj 148 186 list split 1; #X obj 148 161 list append; #X obj 148 237 outlet; #X obj 148 37 inlet; #X obj 229 237 outlet; #X obj 222 35 inlet; #X obj 148 72 b; #X text 265 36 list; #X text 103 37 bang; #X text 273 237 EOL; #X text 89 236 element; #X obj 229 207 b; #X connect 0 0 2 0; #X connect 0 1 1 1; #X connect 0 2 11 0; #X connect 1 0 0 0; #X connect 3 0 6 0; #X connect 5 0 1 1; #X connect 6 0 1 0; #X connect 11 0 4 0; pd-list-abs_0.1/list-invint-help.pd0000644000076500007650000000106511516222410015760 0ustar hanshans#N canvas 121 115 518 278 10; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION Inverse (musical) intervals of a float list ; #X text 12 65 INLET_0 list; #X text 12 85 OUTLET_0 list; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht; #X restore 443 251 pd META; #X obj 52 127 list-invint; #X msg 52 81 10 11 13 20; #X obj 52 164 print; #X text 38 26 list-invint: Inverse (musical) intervals of a float list ; #X connect 1 0 3 0; #X connect 2 0 1 0; pd-list-abs_0.1/list-len.pd0000644000076500007650000000035010755131205014302 0ustar hanshans#N canvas 0 0 534 321 10; #X obj 126 70 inlet; #X obj 126 271 outlet; #X text 37 37 list-len: calculate length of a list.; #X obj 126 149 list length; #X obj 126 125 list; #X connect 0 0 4 0; #X connect 3 0 1 0; #X connect 4 0 3 0; pd-list-abs_0.1/list-compare-help.pd0000644000076500007650000000247211516222410016102 0ustar hanshans#N canvas 0 26 529 463 10; #X floatatom 149 244 5 0 0 0 - - -; #X obj 213 244 loadbang; #X msg 149 217 0; #X msg 179 217 4; #X msg 134 169 seven; #X msg 134 196 symbol eight; #X obj 134 316 list-compare; #X obj 134 354 tgl 24 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X obj 134 389 print EQUAL?; #X text 69 21 [list-compare]; #X text 108 42 Compare two lists element by element.; #X floatatom 228 295 5 0 0 0 - - -; #X text 134 90 Out: 1 if equal \, 0 if not equal.; #X text 134 66 In: two lists to compare.; #X msg 134 115 0 1 2 3 4 5 6 seven eight; #X msg 134 142 0 1 2 3 4 5 6 seventy eight; #X msg 213 271 0 1 2 3 4 5 6 seven eight; #N canvas 416 170 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 105 OUTLET_0 float; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 anything; #X text 12 45 DESCRIPTION compare two lists element by element; #X restore 456 427 pd META; #X connect 0 0 6 0; #X connect 1 0 16 0; #X connect 2 0 0 0; #X connect 3 0 0 0; #X connect 4 0 6 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 8 0; #X connect 11 0 6 1; #X connect 14 0 6 0; #X connect 15 0 6 0; #X connect 16 0 6 1; pd-list-abs_0.1/list-abs-intro.txt0000644000076500007650000001011311466042251015636 0ustar hanshansOSCprepend - "Prepends" first argument to an OSC message list. compare-any - Test if two anythings are the same. Out: 1 if equal last-x - last-x: make a list of the last x floats (deprecated: use [list-lastx] instead list-abs - apply abs() on float elements of a list. list-accum - add all floats in a list list-add - Add two lists element by element list-apply - apply the object created by [arg1 arg2] on list-centroid - Calculates the centroid or center of mass of a list of list-clip - clip for lists list-compare - Compare two lists element by element. list-delete - delete element at position POS from list. list-dotprod - dot-product of two lists: res = sum(Xi*Yi) list-drip - list-drip: drips or serializes a list list-drip2 - Drips two lists in sync as long as the first list list-dripslow - Serialize a list on demand. list-emath - Do math on lists element by element list-enumerate - serialize a list and put numbers in front of every element list-equalize - scale a list so that all float elements sum up to 1 list-extend - Build a list from incoming lists or elements. list-fifo-delim - This object is obsolete! Use [list-fifo] instead! list-fifo - stores incoming (list-)messages list-filter - filter out list elemnent by a condition list-find - Find position(s) of a value in a list. list-group - group items into lists of the same size list-geometric-mean - Calculates the geometric mean of a list (of floats) list-harmonic-mean - Calculates the harmonic mean of a list (of floats) list-idx - Get element at position idx. list-insert - insert LIST before element at position POS list-inter - elementwise linear interpolation between list-inter-many - Elementwise linear interpolation between several float lists list-iter - group lists into sub-lists with size-limit list-l2s - Concatenate a list into a single symbol using ARG1 as delimiter list-lastx - make a list of the last x floats. list-len - calculate length of a list (use [list length] if available) list-lifo - stores incoming (list-)messages list-makefilename - Change symbols in a list pass floats unchanged. list-map - Calls a user-defined operation for each of the incoming list elements list-map2 - Calls a user-defined operation for each pair of elements of two lists list-math - simple mathematical operations on lists. list-mean - Calculates the arithmetric mean of a list (of floats) list-minmax - find minimum and maximum float in a list. list-moses - [moses] for lists list-mult - Substract two lists element by element list-normalize - normalize a list list-nth - look up the nth element in a list. n has to be positive list-onearg - defaults for abstractions arguments list-pad - pad a list with elements from a longer list list-random - generate lists of pseudorandom integers list-rdrip - drips or serializes a list in reverse. list-reduce - apply a function of two arguments cumulatively to the items of a list list-replace - replace a list starting at position POS with another list list-rev - reverse a list list-rot - Rotate a list (move ROT# elements from front to back) list-round - round all numbers in a list list-sect - outputs the elements that are common to both input lists. list-seek - walk through a list element by element - similar to [textfile] list-shellsort - Sort a list of floats into ascending order using a Shell sort list-sieve - Look up occurence of incoming floats in a list list-sort - Sort an incoming list of values list-splat - like [list split] which also accepts negative split locations list-stddev - calculate the standard deviation of a float list-sub - Substract two lists element by element list-swap - swap two elements of a list at given indices. list-tabdump - dump a [table] into a list list-unique - remove duplicates from a list list-unitvec - make a unit vector out of any list list-wrandom - Use a list as a probability table for weighted random values prepent - shortcut for [list prepend]--[list trim] sroute - settable [route] take-two - take a list as input and print all combinations of triple-scale - interpolate linearily between two points (x y z) pd-list-abs_0.1/list-rev.pd0000644000076500007650000000077211201077563014333 0ustar hanshans#N canvas 575 449 566 351 10; #X obj 92 29 inlet; #X obj 148 141 t l; #X obj 92 141 list; #X obj 152 210 list; #X obj 152 262 outlet; #X text 174 95 drip list; #X text 190 213 intermediate store \, bang'd on list end.; #X text 178 140 repack in reverse order; #X obj 92 54 t a b b; #X obj 92 94 list-drip; #X connect 0 0 8 0; #X connect 1 0 2 1; #X connect 2 0 1 0; #X connect 2 0 3 1; #X connect 3 0 4 0; #X connect 8 0 9 0; #X connect 8 1 2 1; #X connect 8 2 3 1; #X connect 9 0 2 0; #X connect 9 1 3 0; pd-list-abs_0.1/list-sort-help.pd0000644000076500007650000000303311516222410015435 0ustar hanshans#N canvas 0 31 628 576 10; #X obj 188 357 hradio 15 1 0 2 empty empty empty 0 -8 0 10 -262144 -1 -1 0; #X msg 232 357 asc; #X msg 270 357 desc; #X obj 35 11 list-sort; #X obj 93 205 list-random 100 10; #X obj 125 256 prepent set; #X msg 93 179 bang; #X obj 93 230 t b a; #X msg 93 291 91 35 78 70 85 46 64 10 93 83; #X text 279 324 non-floats are removed with a warning.; #X msg 135 324 100 2 wrong type 3; #X obj 93 441 prepent set; #X text 55 523 2008 Michal Seta; #X obj 93 396 list-sort desc; #X text 66 80 Inlets: 1) list to sort; #X text 66 134 Argument:; #X text 121 98 2) direction: 0 or asc for ascending \, 1 or desc for descending; #X text 137 134 ; #X text 65 40 Sort an incoming list of values in ascending or descending order. Non-numbers are dropped.; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 135 AUTHOR Michal Seta; #X text 12 45 DESCRIPTION sort an incoming list of values in ascending or descending order; #X text 12 75 INLET_0 list; #X text 12 95 INLET_1 float asc desc; #X text 12 115 OUTLET_0 list; #X restore 571 544 pd META; #X msg 93 470; #X connect 0 0 13 1; #X connect 1 0 13 1; #X connect 2 0 13 1; #X connect 4 0 7 0; #X connect 5 0 8 0; #X connect 6 0 4 0; #X connect 7 0 8 0; #X connect 7 1 5 0; #X connect 8 0 13 0; #X connect 10 0 13 0; #X connect 11 0 20 0; #X connect 13 0 11 0; pd-list-abs_0.1/list-moses.pd0000644000076500007650000000137510755131205014662 0ustar hanshans#N canvas 264 111 497 457 10; #X obj 66 63 inlet; #X obj 201 120 list-idx \$2; #X obj 273 91 inlet; #X obj 231 210 inlet; #X obj 201 148 route float; #X obj 66 399 outlet; #X obj 90 369 outlet; #X obj 201 242 >= \$1; #X obj 66 90 t a a; #X text 165 34 arg1: comparison value; #X text 165 59 arg2: which element to compare (zero based); #X obj 114 338 outlet; #X obj 273 210 b; #X obj 66 278 list prepend 2; #X obj 273 242 2; #X obj 66 308 route 0 1 2; #X connect 0 0 8 0; #X connect 1 0 4 0; #X connect 2 0 1 1; #X connect 3 0 7 1; #X connect 4 0 7 0; #X connect 4 1 12 0; #X connect 7 0 13 1; #X connect 8 0 13 0; #X connect 8 1 1 0; #X connect 12 0 14 0; #X connect 13 0 15 0; #X connect 14 0 13 1; #X connect 15 0 5 0; #X connect 15 1 6 0; #X connect 15 2 11 0; pd-list-abs_0.1/list-tabdump.pd0000644000076500007650000000366611350242556015201 0ustar hanshans#N canvas 288 81 555 678 10; #X obj 68 19 inlet; #X obj 68 602 outlet; #X obj 88 285 f \$2; #X obj 146 406 until; #X obj 185 446 + 1; #X obj 146 497 tabread \$1; #X obj 215 444 symbol \$1; #X msg 215 465 set \$1; #X obj 106 256 unpack 0 0 s; #X obj 153 49 s \$0-reset; #X obj 225 496 r \$0-reset; #X obj 194 406 f \$3; #X obj 146 446 f; #X obj 194 359 r \$0-reset; #X obj 88 326 moses; #X obj 88 118 list prepend; #X obj 88 146 route 0 1 2 3; #X obj 131 180 list append 0; #X obj 68 51 t b a a b; #N canvas 0 0 450 300 rot1 0; #X obj 173 193 list prepend; #X obj 151 44 inlet; #X obj 259 115 inlet; #X text 311 115 how often to rotate; #X obj 151 220 list; #X text 198 43 list to rotate; #X obj 151 250 outlet; #X text 267 194 move right part of list to left.; #X obj 151 70 t b a b; #X obj 174 152 list split 1; #X connect 0 0 4 1; #X connect 1 0 8 0; #X connect 2 0 9 1; #X connect 4 0 6 0; #X connect 8 0 4 0; #X connect 8 1 9 0; #X connect 8 2 0 1; #X connect 9 0 0 0; #X connect 9 1 0 1; #X restore 131 225 pd rot1; #X msg 146 517 add2 \$1; #X msg 225 518 set; #N canvas 0 0 575 324 msgbox 0; #X obj 94 113 inlet; #X msg 166 148; #X obj 88 193 outlet; #X text 163 108 hidden msgbox to not clutter the main patch; #X connect 0 0 1 0; #X connect 1 0 2 0; #X restore 68 568 pd msgbox; #X obj 168 91 list length; #X connect 0 0 18 0; #X connect 2 0 14 0; #X connect 3 0 12 0; #X connect 4 0 12 1; #X connect 5 0 20 0; #X connect 6 0 7 0; #X connect 7 0 5 0; #X connect 8 0 2 0; #X connect 8 1 11 0; #X connect 8 2 6 0; #X connect 10 0 21 0; #X connect 11 0 12 1; #X connect 12 0 4 0; #X connect 12 0 5 0; #X connect 13 0 11 0; #X connect 14 1 3 0; #X connect 15 0 16 0; #X connect 16 0 2 0; #X connect 16 1 2 0; #X connect 16 2 17 0; #X connect 16 3 19 0; #X connect 17 0 19 0; #X connect 18 0 22 0; #X connect 18 1 15 0; #X connect 18 2 23 0; #X connect 18 3 9 0; #X connect 19 0 8 0; #X connect 20 0 22 0; #X connect 21 0 22 0; #X connect 22 0 1 0; #X connect 23 0 15 1; pd-list-abs_0.1/list-math.pd0000644000076500007650000000063610755131206014465 0ustar hanshans#N canvas 424 89 462 324 10; #X obj 55 58 inlet; #X obj 55 235 outlet; #X text 44 16 Use as "list-math operator" where operator is some binary operator \, expr can understand.; #X obj 55 136 list-map; #X obj 152 208 \$1 \$2; #X obj 182 134 inlet; #X obj 152 97 route float; #X connect 0 0 3 0; #X connect 3 0 1 0; #X connect 3 1 6 0; #X connect 4 0 3 1; #X connect 5 0 4 1; #X connect 6 0 4 0; #X connect 6 1 3 1; pd-list-abs_0.1/list-random.pd0000644000076500007650000000153310755131206015011 0ustar hanshans#N canvas 253 175 513 548 10; #X obj 73 55 inlet; #X msg 73 111 seed \$1; #X obj 161 290 random \$1; #X obj 161 352 list prepend; #X obj 254 353 t a; #X obj 161 256 until; #X obj 138 109 t b b b; #X obj 138 373 list; #X obj 219 53 inlet; #X obj 292 54 inlet; #X obj 292 133 f \$2; #X obj 303 105 loadbang; #X obj 73 86 route seed; #X obj 138 406 outlet; #X text 73 29 seed/bang; #X text 220 31 range; #X text 293 30 length; #X obj 161 235 f 1; #X obj 292 153 max 1; #X connect 0 0 12 0; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 3 0 7 1; #X connect 4 0 3 1; #X connect 5 0 2 0; #X connect 6 0 7 0; #X connect 6 1 17 0; #X connect 6 2 3 1; #X connect 7 0 13 0; #X connect 8 0 2 1; #X connect 9 0 10 0; #X connect 10 0 18 0; #X connect 11 0 10 0; #X connect 12 0 1 0; #X connect 12 1 6 0; #X connect 17 0 5 0; #X connect 18 0 17 1; pd-list-abs_0.1/list-delete-help.pd0000644000076500007650000000256111516222410015715 0ustar hanshans#N canvas 0 26 572 423 10; #X obj 85 190 hradio 15 1 0 8 empty empty POS_(zero-based) 0 -6 0 8 -262144 -1 -1 0; #X floatatom 85 210 5 0 0 0 - - -; #X msg 49 160 0 1 2 3 4; #X obj 49 288 print; #X text 36 55 Negative POS counts from the end of the list.; #X text 35 26 list-delete: delete element at position POS from list. ; #X floatatom 121 239 5 0 0 1 how_many - -; #X msg 293 170 0 1 2 3 4; #X obj 293 288 print; #X text 322 211 arguments: ; #X obj 49 258 list-delete; #X text 38 79 Arguments; #X text 51 102 1: Default POS to delete.; #X text 51 123 2: How many items to delete (cannot be less than 1) ; #X floatatom 343 239 5 0 0 0 - - -; #X floatatom 393 240 5 0 0 0 - - -; #X obj 293 259 list-delete 2 3; #N canvas 520 35 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 145 AUTHOR Frank Barknecht; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 65 INLET_0 list; #X text 12 45 DESCRIPTION delete element at position POS from list ; #X text 12 85 INLET_1 float; #X text 12 105 INLET_2 float; #X text 12 125 OUTLET_0 list; #X restore 507 387 pd META; #X connect 0 0 1 0; #X connect 1 0 10 1; #X connect 2 0 10 0; #X connect 6 0 10 2; #X connect 7 0 16 0; #X connect 10 0 3 0; #X connect 14 0 16 1; #X connect 15 0 16 2; #X connect 16 0 8 0; pd-list-abs_0.1/list-tabdump-help.pd0000644000076500007650000000421211516222410016102 0ustar hanshans#N canvas 0 31 881 635 10; #X msg 618 57 0 1 2 3 4 5 6 7 8 9 10; #X obj 618 34 loadbang; #X msg 39 126 bang; #X obj 39 384 print dump; #X obj 619 142 loadbang; #X msg 619 165 0 10 20 30 40 50 60 70 80 90 100; #X obj 619 187 s y-dump; #X obj 619 213 table y-dump 10; #X obj 618 104 table x-dump 10; #X obj 618 79 s x-dump; #X floatatom 46 188 5 0 0 0 - - -; #X msg 55 279 list x-dump 3 4; #X msg 55 223 list x-dump 3; #X msg 56 307 list y-dump 1 3; #X obj 89 497 expr size("$s1"); #X floatatom 104 523 5 0 0 0 - - -; #X obj 36 465 t a a; #X obj 36 545 pack s 0; #X msg 36 443 symbol y-dump; #X text 213 495 gets size of array; #X text 21 23 list-tabdump: get a table's content as a list.; #X text 172 187 float : set to and do a dump; #X text 33 58 Arguments: ; #X text 174 223 list : set and and do a dump.; #X text 174 291 list : set \, and position and do a dump.; #X text 171 124 bang: dump contents of table as specified by
\, and .
\, and can be set by arguments or with the following messages.; #X obj 39 349 list-tabdump x-dump; #X text 33 91 Inlet methods:; #X obj 36 603 print dump; #X obj 36 568 list-tabdump y-dump; #X text 34 412 Hint: You can use [expr] to get the size of a table if you want to dump everything:; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION get a table's content as a list; #X text 12 65 INLET_0 bang float list; #X text 12 85 OUTLET_0 list; #X restore 817 602 pd META; #X connect 0 0 9 0; #X connect 1 0 0 0; #X connect 2 0 26 0; #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 10 0 26 0; #X connect 11 0 26 0; #X connect 12 0 26 0; #X connect 13 0 26 0; #X connect 14 0 15 0; #X connect 14 0 17 1; #X connect 16 0 17 0; #X connect 16 1 14 0; #X connect 17 0 29 0; #X connect 18 0 16 0; #X connect 26 0 3 0; #X connect 29 0 28 0; pd-list-abs_0.1/list-reduce.pd0000644000076500007650000000161510755131205015000 0ustar hanshans#N canvas 238 102 593 526 10; #X obj 86 33 inlet; #X obj 275 52 inlet; #X obj 151 352 outlet; #X obj 205 353 outlet; #X obj 86 58 route bang; #X obj 86 83 b; #X obj 151 84 t b a; #X obj 151 124 list; #X obj 151 233 list split 2; #X obj 151 155 t a b; #X obj 275 189 list append; #X text 53 386 [list-reduce]; #X text 55 423 [list-reduce] returns a single value constructed by calling the user-defined objects connected to the right outlet on the first two items of the sequence \, then on the result (if it comes in through the right inlet) and the next item \, and so on.; #X obj 275 124 list split 1; #X connect 0 0 4 0; #X connect 1 0 13 0; #X connect 4 0 5 0; #X connect 4 1 6 0; #X connect 5 0 7 0; #X connect 6 0 7 0; #X connect 6 1 7 1; #X connect 7 0 9 0; #X connect 8 0 3 0; #X connect 8 1 10 1; #X connect 8 2 2 0; #X connect 9 0 8 0; #X connect 9 1 10 1; #X connect 10 0 8 0; #X connect 13 0 10 0; pd-list-abs_0.1/list-makefilename-help.pd0000644000076500007650000000236411516222410017072 0ustar hanshans#N canvas 0 31 605 472 10; #X obj 83 371 print M; #X obj 83 334 list-makefilename %s-blabla; #X obj 82 33 cnv 15 220 30 empty empty list-makefilename 20 12 0 14 -233017 -66577 0; #X msg 267 220 xyz-%s-abc; #X msg 267 200 /help/%s; #X text 80 76 Change symbols in a list \, pass floats unchanged.; #X msg 83 200 1 2 3 4 SYMBOL; #X msg 83 222 list FREQ 440 AMP 1; #X msg 267 287 const; #X msg 314 286 You-probably-%don't-want-this; #X text 301 250 pass unchanged; #X msg 267 249 %s; #X text 78 111 Use as "list-makefilename makefilename-arg". Right inlet can be used to change the arg to makefilename. Please only use symbol placeholders (== "%s"); #N canvas 460 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 105 OUTLET_0 list; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 anything; #X text 12 45 DESCRIPTION change symbols in a list \, pass floats unchanged ; #X restore 476 411 pd META; #X connect 1 0 0 0; #X connect 3 0 1 1; #X connect 4 0 1 1; #X connect 6 0 1 0; #X connect 7 0 1 0; #X connect 8 0 1 1; #X connect 9 0 1 1; #X connect 11 0 1 1; pd-list-abs_0.1/list-replace-help.pd0000644000076500007650000000255611516222410016072 0ustar hanshans#N canvas 0 31 583 391 10; #X msg 287 266 0 1 2 3 4 5; #X obj 194 343 print RESULT; #X obj 240 244 hradio 15 1 0 8 empty empty empty 0 -6 0 8 -262144 -1 -1 0; #X floatatom 240 265 5 0 0 0 - - -; #X obj 194 298 list-replace 2; #X text 50 32 list-replace: Replace the list starting at position POS with a new list \, overwriting the old elements.; #X text 49 92 POS is zerobased and can be negative \, in which case it is taken from the end of the orig. list.; #X text 49 67 Argument: default POS; #X text 49 129 If POS exceeds the length of the original list in whatever direction \, is is prepended resp. appended to the orig. list.; #X msg 194 190 list aa bb; #X msg 194 216 list aa bb cc dd ee ff gg; #X msg 194 167 aa; #N canvas 472 161 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 75 INLET_0 anything; #X text 12 95 INLET_1 float; #X text 12 115 INLET_2 list; #X text 12 135 OUTLET_0 list; #X text 12 45 DESCRIPTION replace the list starting at position POS with a new list \, overwriting the old elements; #X restore 523 358 pd META; #X connect 0 0 4 2; #X connect 2 0 3 0; #X connect 3 0 4 1; #X connect 4 0 1 0; #X connect 9 0 4 0; #X connect 10 0 4 0; #X connect 11 0 4 0; pd-list-abs_0.1/list-inter-many.pd0000644000076500007650000000341510755131205015614 0ustar hanshans#N canvas 452 377 578 375 10; #X obj 85 312 list-inter; #X obj 263 227 textfile; #N canvas 490 388 450 300 get-list 0; #X obj 61 48 inlet; #X msg 105 133 rewind; #X obj 83 158 until; #X obj 61 74 f; #X obj 61 97 t b a b; #X obj 61 221 outlet; #X obj 83 202 outlet; #X connect 0 0 3 0; #X connect 1 0 6 0; #X connect 2 0 6 0; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 4 1 2 0; #X connect 4 2 1 0; #X restore 191 193 pd get-list; #X obj 191 263 list; #X obj 337 27 inlet; #X obj 191 97 int; #X obj 191 161 + 1; #X obj 191 139 t a a; #X obj 221 161 + 2; #N canvas 490 388 450 300 get-list 0; #X obj 61 48 inlet; #X msg 105 133 rewind; #X obj 83 158 until; #X obj 61 74 f; #X obj 61 97 t b a b; #X obj 61 221 outlet; #X obj 83 198 outlet; #X connect 0 0 3 0; #X connect 1 0 6 0; #X connect 2 0 6 0; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 4 1 2 0; #X connect 4 2 1 0; #X restore 358 192 pd get-list; #X obj 358 262 list; #X obj 191 119 change; #X obj 85 22 inlet; #X obj 85 47 t a a; #X obj 85 335 outlet; #X obj 337 84 t b a; #X obj 147 77 moses 0; #N canvas 0 0 450 300 wrap 0; #X obj 139 160 -; #X obj 169 137 int; #X obj 139 116 t a a; #X obj 139 91 inlet; #X obj 139 185 outlet; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 2 1 1 0; #X connect 3 0 2 0; #X restore 85 128 pd wrap; #X connect 0 0 14 0; #X connect 1 0 3 1; #X connect 1 0 10 1; #X connect 2 0 3 0; #X connect 2 1 1 0; #X connect 3 0 0 1; #X connect 4 0 15 0; #X connect 5 0 11 0; #X connect 6 0 2 0; #X connect 7 0 6 0; #X connect 7 1 8 0; #X connect 8 0 9 0; #X connect 9 0 10 0; #X connect 9 1 1 0; #X connect 10 0 0 2; #X connect 11 0 7 0; #X connect 12 0 13 0; #X connect 13 0 17 0; #X connect 13 1 16 0; #X connect 15 0 11 0; #X connect 15 1 1 0; #X connect 16 1 5 0; #X connect 17 0 0 0; pd-list-abs_0.1/list-swap-help.pd0000644000076500007650000000201611516222410015420 0ustar hanshans#N canvas 0 31 574 354 10; #X msg 57 84 0 1 2 3 4 5 6 7 8 9 10 11; #X floatatom 145 148 5 0 0 0 - - -; #X floatatom 101 146 5 0 0 0 - - -; #X obj 57 190 list-swap 2 5; #X text 49 19 [list-swap] - swap two elements of a list at given indices. Index values can be negative. If an index value is out of range \, the list is passed with no change.; #X msg 75 114 list a b c d e f g h i j k; #X obj 57 216 prepent set; #X msg 57 241 a c b; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 65 INLET_0 anything; #X text 12 145 AUTHOR Frank Barknecht; #X text 12 45 DESCRIPTION swap two elements of a list at given indices ; #X text 12 85 INLET_1 float; #X text 12 105 INLET_2 flaot; #X text 12 125 OUTLET_0 list; #X restore 512 322 pd META; #X connect 0 0 3 0; #X connect 1 0 3 2; #X connect 2 0 3 1; #X connect 3 0 6 0; #X connect 5 0 3 0; #X connect 6 0 7 0; pd-list-abs_0.1/list-abs-intro.pd0000644000076500007650000000370511466042251015433 0ustar hanshans#N canvas 802 145 296 279 10; #N canvas 204 36 682 744 \$0-overview 0; #X restore 79 115 pd \$0-overview; #N canvas 337 123 805 747 dump 0; #X obj 94 243 textfile; #X obj 94 337 t a b; #X obj 128 411 f; #X obj 160 412 + 1; #X obj 240 603 s pd-\$0-overview; #X obj 94 461 list; #X msg 172 247 1; #X obj 94 211 until; #X obj 74 41 inlet; #X obj 74 76 list; #X msg 258 199 print; #X msg 115 184 read \$1 cr \, rewind; #X msg 239 247 clear; #X obj 239 42 inlet; #X obj 128 434 * 45; #X msg 74 113 symbol \$1.txt; #X obj 74 152 t b b a b; #X obj 94 362 list split 1; #X obj 264 494 list prepend 0; #X obj 264 536 list trim; #X obj 197 414 route bang; #X msg 74 537 vis 0 \, vis 1; #X obj 94 269 route float; #X obj 190 340 max; #X obj 190 362 until; #X text 258 348 lines that just contain a number are used to skip as many lines as the number specifies. use this to make room for larger GOP objects so they don't overlap with following objects.; #X msg 94 483 obj 50 \$2 \$1; #X obj 264 514 list prepend text 200; #X connect 0 0 22 0; #X connect 0 1 7 1; #X connect 1 0 17 0; #X connect 1 1 2 0; #X connect 2 0 3 0; #X connect 2 0 14 0; #X connect 3 0 2 1; #X connect 5 0 26 0; #X connect 6 0 2 1; #X connect 7 0 0 0; #X connect 8 0 9 0; #X connect 9 0 15 0; #X connect 10 0 0 0; #X connect 11 0 0 0; #X connect 12 0 4 0; #X connect 13 0 12 0; #X connect 14 0 5 1; #X connect 14 0 18 1; #X connect 15 0 16 0; #X connect 16 0 21 0; #X connect 16 1 7 0; #X connect 16 2 11 0; #X connect 16 3 12 0; #X connect 16 3 6 0; #X connect 17 0 5 0; #X connect 17 1 20 0; #X connect 18 0 27 0; #X connect 19 0 4 0; #X connect 20 1 18 0; #X connect 21 0 4 0; #X connect 22 0 23 0; #X connect 22 1 1 0; #X connect 23 0 24 0; #X connect 24 0 2 0; #X connect 26 0 4 0; #X connect 27 0 19 0; #X restore 79 93 pd dump; #X msg 138 93 clear; #X text 80 150 Help-click any object to; #X text 80 169 open the help file!; #X msg 79 66 list-abs-intro; #X text 77 42 click me:; #X connect 2 0 1 1; #X connect 5 0 1 0; pd-list-abs_0.1/list-unitvec.pd0000644000076500007650000000101510755131205015200 0ustar hanshans#N canvas 344 49 431 402 10; #X obj 221 167 s \$0-reset; #X obj 213 296 expr 1/sqrt($f1); #X obj 141 366 outlet; #X obj 141 145 inlet; #X obj 141 334 list-math *; #X obj 213 261 list-dotprod; #X obj 141 168 t a a a b; #X text 20 58 list-unitvec; #X text 38 78 make a unit vector out of any list \, ignoring non-float elements (i.e. normalize a list geometrically); #X connect 1 0 4 1; #X connect 3 0 6 0; #X connect 4 0 2 0; #X connect 5 0 1 0; #X connect 6 0 4 0; #X connect 6 1 5 0; #X connect 6 2 5 1; #X connect 6 3 0 0; pd-list-abs_0.1/list-lifo-help.pd0000644000076500007650000000323711516222410015405 0ustar hanshans#N canvas 0 31 546 480 10; #X msg 247 186 1 2 3 4 5; #X symbolatom 260 207 10 0 0 0 - - -; #X floatatom 273 224 5 0 0 0 - - -; #X obj 198 339 bng 15 250 50 0 empty empty EOL 17 7 1 10 -262144 -1 -1; #X msg 295 274 bang; #X msg 238 166 a b c; #X msg 140 149 bang; #X text 230 147 store lists or elements ("push"); #X text 111 125 trigger output ("pop"); #X text 277 255 clear stored list ("reset"); #X obj 140 305 list-lifo; #X text 60 38 [list-lifo]; #X text 97 64 [list-lifo] stores incoming (list-)messages and outputs them one by one on incoming bangs in the opposite order of arrival like a LIFO: Last in \, first out.; #N canvas 0 0 450 300 show 0; #X obj 60 48 inlet; #X obj 60 72 list prepend set; #X obj 60 97 list trim; #X obj 60 126 outlet; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 3 0; #X restore 140 364 pd show; #X msg 140 390; #X msg 74 262 clear; #X text 82 439 2007 Frank Barknecht; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 175 AUTHOR Frank Barknecht; #X text 12 195 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 75 INLET_0 bang clear; #X text 12 95 INLET_1 anything; #X text 12 115 INLET_2 bang; #X text 12 135 OUTLET_0 list; #X text 12 155 OUTLET_1 bang; #X text 12 45 DESCRIPTION stores incoming list messages and outputs them one by one in opposite order or arrival when banged; #X restore 487 447 pd META; #X connect 0 0 10 1; #X connect 1 0 10 1; #X connect 2 0 10 1; #X connect 4 0 10 2; #X connect 5 0 10 1; #X connect 6 0 10 0; #X connect 10 0 13 0; #X connect 10 1 3 0; #X connect 13 0 14 0; #X connect 15 0 10 0; pd-list-abs_0.1/list-drip.pd0000644000076500007650000000213111201077563014464 0ustar hanshans#N canvas 218 94 842 634 10; #X obj 63 84 t a a; #X obj 63 241 spigot; #X obj 102 149 bang; #X obj 102 168 1; #X obj 223 149 route bang; #X obj 183 150 bang; #X obj 183 169 0; #X obj 102 114 list split 2; #X obj 232 379 list split; #X obj 299 328 list length; #X obj 299 350 >> 1; #X obj 63 260 t a a a a; #X obj 63 446 list split; #X obj 130 398 list length; #X obj 130 423 >> 1; #X obj 31 19 inlet; #X obj 290 175 outlet; #X text 73 19 Copyright 2009 by Mathieu Bouchard; #X obj 31 53 t b a; #X obj 465 119 outlet; #X text 520 121 signal end of list; #X text 381 23 made compatible with [list-drip]: fbar 2009; #X connect 0 0 1 0; #X connect 0 1 7 0; #X connect 1 0 11 0; #X connect 2 0 3 0; #X connect 3 0 1 1; #X connect 4 1 16 0; #X connect 5 0 6 0; #X connect 6 0 1 1; #X connect 7 0 2 0; #X connect 7 2 4 0; #X connect 7 2 5 0; #X connect 8 0 0 0; #X connect 9 0 10 0; #X connect 10 0 8 1; #X connect 11 0 12 0; #X connect 11 1 13 0; #X connect 11 2 8 0; #X connect 11 3 9 0; #X connect 12 1 0 0; #X connect 13 0 14 0; #X connect 14 0 12 1; #X connect 15 0 18 0; #X connect 18 0 19 0; #X connect 18 1 0 0; pd-list-abs_0.1/list-enumerate.pd0000644000076500007650000000136410755131205015517 0ustar hanshans#N canvas 596 471 450 300 10; #X obj 152 100 list-drip; #X obj 152 78 t a b; #N canvas 473 338 450 300 count 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 147 133 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 96 b; #X obj 178 61 inlet; #X obj 178 98 b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 5 0; #X connect 5 0 0 0; #X connect 6 0 7 0; #X connect 7 0 2 0; #X restore 231 170 pd count; #X obj 152 128 t a b; #X obj 152 48 inlet; #X obj 152 196 list prepend; #X obj 152 224 outlet; #X obj 210 224 outlet; #X connect 0 0 3 0; #X connect 0 1 7 0; #X connect 1 0 0 0; #X connect 1 1 2 1; #X connect 2 0 5 1; #X connect 3 0 5 0; #X connect 3 1 2 0; #X connect 4 0 1 0; #X connect 5 0 6 0; pd-list-abs_0.1/list-splat-help.pd0000644000076500007650000000331311516222410015572 0ustar hanshans#N canvas 0 31 583 340 10; #X floatatom 197 104 5 0 0 0 - - -; #X msg 118 105 0 1 2 3 4; #X obj 197 163 print shorter; #N canvas 130 18 600 416 rot 0; #X obj 173 193 list prepend; #X obj 151 44 inlet; #X obj 252 115 inlet; #X text 304 115 how often to rotate; #X obj 151 220 list; #X text 198 43 list to rotate; #X obj 151 250 outlet; #X obj 151 70 t b l b; #X text 267 194 move right part of list to left.; #X obj 173 152 list-splat 1; #X connect 0 0 4 1; #X connect 1 0 7 0; #X connect 2 0 9 1; #X connect 4 0 6 0; #X connect 7 0 4 0; #X connect 7 1 9 0; #X connect 7 2 0 1; #X connect 9 0 0 0; #X connect 9 1 0 1; #X restore 374 156 pd rot; #X msg 374 126 0 1 2 3 4; #X floatatom 456 127 5 0 0 0 - - -; #X obj 374 184 print; #X obj 118 138 list-splat 2; #X text 72 37 list-splat: an advanced [list split] which also accepts negative indices to split of elements from the back of a list.; #X obj 118 219 print head; #X obj 157 192 print tail; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 195 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION an advanced [list split] which also accepts negative indices to split elements from the back of a list; #X text 12 75 INLET_0 anything; #X text 12 95 INLET_1 float; #X text 12 115 OUTLET_0 list float symbol pointer; #X text 12 135 OUTLET_1 list float symbol pointer; #X text 12 155 OUTLET_2 list float symbol pointer; #X text 12 175 AUTHOR Frank Barknecht; #X restore 521 311 pd META; #X connect 0 0 7 1; #X connect 1 0 7 0; #X connect 3 0 6 0; #X connect 4 0 3 0; #X connect 5 0 3 1; #X connect 7 0 9 0; #X connect 7 1 10 0; #X connect 7 2 2 0; pd-list-abs_0.1/list-rot.pd0000644000076500007650000000125310755131205014333 0ustar hanshans#N canvas 336 258 575 357 10; #X obj 170 253 list prepend; #X obj 151 44 inlet; #X obj 256 47 inlet; #X text 257 25 how often to rotate; #X obj 151 280 list; #X text 146 24 list to rotate; #X obj 151 310 outlet; #X text 278 232 move right part of list to left.; #X obj 256 174 mod \$1; #X obj 256 152 f \$1; #X obj 170 212 list split \$1; #X obj 151 70 t b a b b a; #X obj 293 153 list-len; #X connect 0 0 4 1; #X connect 1 0 11 0; #X connect 2 0 9 0; #X connect 4 0 6 0; #X connect 8 0 10 1; #X connect 9 0 8 0; #X connect 10 0 0 0; #X connect 10 1 0 1; #X connect 11 0 4 0; #X connect 11 1 10 0; #X connect 11 2 0 1; #X connect 11 3 9 0; #X connect 11 4 12 0; #X connect 12 0 8 1; pd-list-abs_0.1/triple-scale.pd0000644000076500007650000000146010755131205015142 0ustar hanshans#N canvas 146 135 849 526 10; #X obj 224 150 unpack 0 0 0; #X obj 224 117 inlet; #X obj 189 312 pack 0 0 0; #X obj 189 333 outlet; #X obj 382 150 unpack 0 0 0; #X obj 382 117 inlet; #X obj 134 118 inlet; #X obj 134 146 t f f f; #X obj 133 207 expr $f1*($f3-$f2) + $f2; #X obj 221 234 expr $f1*($f3-$f2) + $f2; #X obj 311 255 expr $f1*($f3-$f2) + $f2; #X text 178 41 interpolate linearily between to points (x \, y \, z) ; #X text 455 118 point 2; #X text 280 117 point 1; #X text 142 99 0-1; #X connect 0 0 8 1; #X connect 0 1 9 1; #X connect 0 2 10 1; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 4 0 8 2; #X connect 4 1 9 2; #X connect 4 2 10 2; #X connect 5 0 4 0; #X connect 6 0 7 0; #X connect 7 0 8 0; #X connect 7 1 9 0; #X connect 7 2 10 0; #X connect 8 0 2 0; #X connect 9 0 2 1; #X connect 10 0 2 2; pd-list-abs_0.1/list-rdrip-help.pd0000644000076500007650000000151611516222410015572 0ustar hanshans#N canvas 0 31 565 316 10; #X msg 100 79 1 2 3 a b c; #X obj 100 137 print; #X obj 181 133 bng 15 250 50 0 empty empty end 0 -6 0 8 -262144 -1 -1; #X text 70 18 list-rdrip: drips or serializes a list in reverse.; #X obj 100 106 list-rdrip; #X text 141 44 Last element will be first to output.; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 65 INLET_0 anything; #X text 12 45 DESCRIPTION drips or serializes a list in reverse; #X text 12 105 OUTLET_1 bang; #X text 12 85 OUTLET_0 float symbol pointer; #X text 12 5 KEYWORDS control list_op conversion; #X text 12 125 AUTHOR Frank Barknecht \, Mathieu Bouchard; #X restore 455 266 pd META; #X connect 0 0 4 0; #X connect 4 0 1 0; #X connect 4 1 2 0; pd-list-abs_0.1/list-sub.pd0000644000076500007650000000026410755131205014321 0ustar hanshans#N canvas 256 135 500 518 10; #X obj 59 31 inlet; #X obj 138 34 inlet; #X obj 59 117 outlet; #X obj 59 85 list-emath -; #X connect 0 0 3 0; #X connect 1 0 3 1; #X connect 3 0 2 0; pd-list-abs_0.1/list-centroid.pd0000644000076500007650000000334610755131205015343 0ustar hanshans#N canvas 204 70 675 629 10; #X obj 127 475 f; #X obj 127 65 inlet; #X obj 127 561 outlet; #X obj 163 170 list-enumerate; #X obj 163 197 t a a; #X obj 261 406 /; #X obj 261 376 swap; #X obj 210 345 select 0; #N canvas 286 344 401 287 sum(mi*i) 0; #X obj 126 138 +; #X obj 153 139 f; #X msg 168 88 0; #X obj 126 66 inlet; #X obj 168 66 inlet; #X obj 126 171 outlet; #X obj 126 103 *; #X connect 0 0 1 0; #X connect 0 0 5 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 3 0 6 0; #X connect 4 0 2 0; #X connect 6 0 0 0; #X restore 284 255 pd sum(mi*i); #N canvas 573 330 450 328 sum(mi) 0; #X obj 179 137 +; #X obj 206 138 f; #X msg 296 77 0; #X obj 179 55 inlet; #X obj 296 55 inlet; #X obj 179 170 outlet; #X text 143 34 in: (idx value); #X text 40 89 swap to: (val idx); #X text 67 172 sum of values; #X obj 179 89 swap; #X connect 0 0 1 0; #X connect 0 0 5 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 3 0 9 0; #X connect 4 0 2 0; #X connect 9 0 0 0; #X restore 163 253 pd sum(mi); #X obj 210 559 outlet; #X obj 127 399 spigot 1; #X obj 145 285 f; #X obj 240 528 print list-centroid; #X obj 210 468 t b b; #X msg 240 503 warning: sum of items equals 0: centroid is undefined! ; #X obj 127 89 t b b a b b; #X text 69 26 centroid (center of mass) = sum(mi * i) / sum(mi); #X connect 0 0 2 0; #X connect 1 0 16 0; #X connect 3 0 4 0; #X connect 4 0 9 0; #X connect 4 1 8 0; #X connect 5 0 0 1; #X connect 6 0 5 0; #X connect 6 1 5 1; #X connect 7 0 14 0; #X connect 7 1 6 0; #X connect 8 0 6 1; #X connect 9 0 12 1; #X connect 11 0 0 0; #X connect 12 0 7 0; #X connect 12 0 11 1; #X connect 14 0 10 0; #X connect 14 1 15 0; #X connect 15 0 13 0; #X connect 16 0 11 0; #X connect 16 1 12 0; #X connect 16 2 3 0; #X connect 16 3 9 1; #X connect 16 4 8 1; pd-list-abs_0.1/list-extend-help.pd0000644000076500007650000000220111516222410015731 0ustar hanshans#N canvas 0 26 481 399 10; #X msg 102 183 1 2 3; #X msg 156 290 bang; #X msg 101 215 bang; #X msg 102 161 a b c; #X msg 102 139 x y z; #X msg 154 259 A B C; #X obj 68 323 list-extend; #X obj 68 363 print LIST-EXTEND; #X text 44 27 list-extend; #X text 60 52 Build a list from incoming lists or elements.; #X floatatom 101 119 5 0 0 0 - - -; #X text 97 97 Add elements or lists and output stored list.; #X text 146 219 output stored list; #X text 201 261 set complete stored list; #X text 201 292 set stored list to empty list (==reset); #N canvas 491 26 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 105 OUTLET_0 list; #X text 12 45 DESCRIPTION build a list from incoming lists or elements ; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 anything; #X restore 426 372 pd META; #X connect 0 0 6 0; #X connect 1 0 6 1; #X connect 2 0 6 0; #X connect 3 0 6 0; #X connect 4 0 6 0; #X connect 5 0 6 1; #X connect 6 0 7 0; #X connect 10 0 6 0; pd-list-abs_0.1/list-stddev.pd0000644000076500007650000000137511516222410015020 0ustar hanshans#N canvas 259 173 646 615 10; #X obj 168 29 inlet; #X obj 168 379 sqrt; #X obj 168 400 outlet; #X obj 361 160 list length; #X obj 168 358 /; #X obj 186 185 -; #X obj 186 230 t f f; #X obj 186 252 *; #X obj 186 159 list-drip; #X obj 186 279 +; #X obj 217 280 f; #X msg 242 256 0; #X obj 168 318 f; #X obj 168 57 t b a a a b; #X obj 283 160 list-mean; #X connect 0 0 13 0; #X connect 1 0 2 0; #X connect 3 0 4 1; #X connect 4 0 1 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 6 1 7 1; #X connect 7 0 9 0; #X connect 8 0 5 0; #X connect 9 0 10 0; #X connect 9 0 12 1; #X connect 10 0 9 1; #X connect 11 0 9 1; #X connect 12 0 4 0; #X connect 13 0 12 0; #X connect 13 1 8 0; #X connect 13 2 14 0; #X connect 13 3 3 0; #X connect 13 4 11 0; #X connect 14 0 5 1; pd-list-abs_0.1/list-sect.pd0000644000076500007650000000141410755131206014465 0ustar hanshans#N canvas 384 285 600 467 10; #X obj 126 173 list-find; #X obj 184 194 > 0; #X obj 184 215 select 1; #X obj 126 117 list-drip; #X obj 126 142 t a a; #X obj 204 58 inlet; #X obj 184 242 list; #X obj 107 58 inlet; #X obj 183 265 list prepend; #X obj 278 265 t a; #X obj 107 327 list; #X obj 107 83 t b a b b; #X obj 107 353 outlet; #X text 97 18 list-sect; #X text 134 34 outputs the elements that are common to both input lists: ; #X connect 0 1 1 0; #X connect 1 0 2 0; #X connect 2 0 6 0; #X connect 3 0 4 0; #X connect 4 0 0 0; #X connect 4 1 6 1; #X connect 5 0 0 1; #X connect 6 0 8 0; #X connect 7 0 11 0; #X connect 8 0 9 0; #X connect 8 0 10 1; #X connect 9 0 8 1; #X connect 10 0 12 0; #X connect 11 0 10 0; #X connect 11 1 3 0; #X connect 11 2 10 1; #X connect 11 3 8 1; pd-list-abs_0.1/list-sieve.pd0000644000076500007650000000174210755131205014645 0ustar hanshans#N canvas 421 357 511 459 10; #X obj 100 19 inlet; #X obj 190 115 list; #X obj 190 137 list-drip; #X obj 35 297 select; #X obj 35 355 f; #X obj 213 67 inlet; #X obj 35 239 f; #X obj 35 379 outlet; #X obj 100 46 t b a b; #X obj 248 351 spigot 1; #X obj 35 326 t b b; #X obj 248 374 outlet; #X obj 159 67 s \$0-s; #X obj 299 326 r \$0-s; #X obj 81 349 s \$0-s; #X msg 159 42 1; #X msg 81 325 0; #X obj 51 161 route float; #X obj 190 177 route float; #X obj 248 324 f; #X obj 35 211 t b f f f; #X connect 0 0 8 0; #X connect 1 0 2 0; #X connect 2 0 18 0; #X connect 2 1 19 0; #X connect 3 0 10 0; #X connect 4 0 7 0; #X connect 5 0 1 1; #X connect 6 0 3 0; #X connect 8 0 1 0; #X connect 8 1 17 0; #X connect 8 2 15 0; #X connect 9 0 11 0; #X connect 10 0 4 0; #X connect 10 1 16 0; #X connect 13 0 9 1; #X connect 15 0 12 0; #X connect 16 0 14 0; #X connect 17 0 6 1; #X connect 17 0 19 1; #X connect 18 0 20 0; #X connect 19 0 9 0; #X connect 20 0 6 0; #X connect 20 1 3 1; #X connect 20 2 4 1; pd-list-abs_0.1/list-geometric-mean.pd0000644000076500007650000000222210755131205016420 0ustar hanshans#N canvas 355 173 457 428 10; #X obj 127 69 inlet; #X obj 127 337 outlet; #X obj 146 138 list-drip; #X obj 146 164 route float; #X obj 127 274 f; #N canvas 425 298 450 300 count 0; #X obj 133 59 b; #X obj 133 35 inlet; #X obj 183 35 inlet; #X obj 164 111 + 1; #X obj 133 133 outlet; #X msg 183 71 1; #X obj 133 110 f 1; #X connect 0 0 6 0; #X connect 1 0 0 0; #X connect 2 0 5 0; #X connect 3 0 6 1; #X connect 5 0 6 1; #X connect 6 0 3 0; #X connect 6 0 4 0; #X restore 222 226 pd count; #X obj 146 189 t a b; #X obj 127 105 t b a b b; #X obj 222 253 pow -1; #X obj 127 302 pow; #N canvas 370 313 450 300 product 0; #X obj 135 79 inlet; #X obj 182 79 inlet; #X obj 135 169 outlet; #X obj 168 138 f; #X obj 135 137 *; #X obj 182 102 1; #X connect 0 0 4 0; #X connect 1 0 5 0; #X connect 3 0 4 1; #X connect 4 0 2 0; #X connect 4 0 3 0; #X connect 5 0 4 1; #X restore 146 225 pd product; #X connect 0 0 7 0; #X connect 2 0 3 0; #X connect 3 0 6 0; #X connect 4 0 9 0; #X connect 5 0 8 0; #X connect 6 0 10 0; #X connect 6 1 5 0; #X connect 7 0 4 0; #X connect 7 1 2 0; #X connect 7 2 10 1; #X connect 7 3 5 1; #X connect 8 0 9 1; #X connect 9 0 1 0; #X connect 10 0 4 1; pd-list-abs_0.1/list-minmax-help.pd0000644000076500007650000000222311516222410015737 0ustar hanshans#N canvas 0 31 626 365 10; #X floatatom 254 271 5 0 0 0 min - -; #X floatatom 326 271 5 0 0 0 max - -; #X obj 254 138 random 100; #X obj 254 116 until; #X msg 366 138 set; #X msg 232 61 10; #X msg 254 160 add2 \$1; #X obj 232 88 t b f b; #X msg 254 203 41 49 75 14 47 94 89 87 30 87; #X text 178 28 list-minmax: find minimum and maximum float in a list. ; #X msg 141 201 2; #X text 140 178 special cases; #X obj 254 234 list-minmax; #X msg 179 202 11 2 2 2; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 85 OUTLET_0 float; #X text 12 45 DESCRIPTION find minimum and maximum float in a list ; #X text 12 65 INLET_0 list; #X text 12 105 OUTLET_1 float; #X restore 566 331 pd META; #X connect 2 0 6 0; #X connect 3 0 2 0; #X connect 4 0 8 0; #X connect 5 0 7 0; #X connect 6 0 8 0; #X connect 7 0 8 0; #X connect 7 1 3 0; #X connect 7 2 4 0; #X connect 8 0 12 0; #X connect 10 0 12 0; #X connect 12 0 0 0; #X connect 12 1 1 0; #X connect 13 0 12 0; pd-list-abs_0.1/list-replace.pd0000644000076500007650000000272010755131205015142 0ustar hanshans#N canvas 281 128 614 631 10; #X obj 164 224 list; #X obj 327 98 inlet; #X obj 250 98 inlet; #X text 331 72 orig; #X text 256 74 pos; #X text 77 70 list to insert; #X obj 85 94 inlet; #X obj 164 254 list-splat \$1; #X obj 272 231 list-len; #X obj 207 281 list split; #X obj 85 526 list; #X obj 85 598 outlet; #X obj 85 317 list prepend; #X obj 85 120 t a b a b; #X obj 85 430 list prepend 0; #X obj 250 125 t f f; #X obj 207 524 list prepend; #X obj 85 469 route 0 1; #X obj 316 347 f; #X obj 286 282 t a b; #X obj 316 377 > 0; #X obj 122 358 r \$0-init; #X obj 122 377 0; #X obj 300 524 r \$0-init; #X obj 176 317 r \$0-init; #X obj 118 527 r \$0-init; #X obj 159 131 s \$0-init; #X text 47 25 list-replace: Replace the list starting at position POS with a new list \, overwriting the old elements.; #X connect 0 0 7 0; #X connect 1 0 0 1; #X connect 2 0 15 0; #X connect 6 0 13 0; #X connect 7 0 12 1; #X connect 7 1 9 0; #X connect 7 2 19 0; #X connect 8 0 9 1; #X connect 9 1 10 1; #X connect 9 1 16 1; #X connect 10 0 11 0; #X connect 12 0 14 0; #X connect 13 0 12 0; #X connect 13 1 0 0; #X connect 13 2 8 0; #X connect 13 3 26 0; #X connect 14 0 17 0; #X connect 15 0 7 1; #X connect 15 1 18 1; #X connect 16 0 11 0; #X connect 17 0 10 0; #X connect 17 1 16 0; #X connect 18 0 20 0; #X connect 19 0 16 1; #X connect 19 0 10 1; #X connect 19 1 18 0; #X connect 20 0 14 1; #X connect 21 0 22 0; #X connect 22 0 14 1; #X connect 23 0 16 1; #X connect 24 0 12 1; #X connect 25 0 10 1; pd-list-abs_0.1/list-rot-help.pd0000644000076500007650000000145211516222410015255 0ustar hanshans#N canvas 0 31 479 301 10; #X msg 136 118 0 1 2 3 4 5 6 7; #X floatatom 201 151 5 0 0 0 ROT# - -; #X obj 136 230 print; #X obj 136 183 list-rot 3; #X text 124 33 list-rot; #X text 64 61 Rotate a list (move ROT# elements from front to back) ; #X text 63 81 Negative ROT# will rotate elements from back to front. ; #N canvas 472 161 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 65 INLET_0 anything; #X text 12 45 DESCRIPTION rotate the elements of a list; #X text 12 105 OUTLET_0 list; #X text 12 85 INLET_1 float; #X restore 413 268 pd META; #X connect 0 0 3 0; #X connect 1 0 3 1; #X connect 3 0 2 0; pd-list-abs_0.1/sroute-help.pd0000644000076500007650000000236511516222410015025 0ustar hanshans#N canvas 0 0 658 332 10; #X obj 127 156 sroute 1; #X obj 178 124 hradio 15 1 0 3 empty empty empty 0 -6 0 8 -262144 -1 -1 0; #X msg 127 72 1 1 1; #X msg 78 72 0 0 0; #X msg 176 72 2 2 2; #X text 84 29 sroute: settable route; #X obj 444 126 hradio 15 1 0 3 empty empty bad 0 -6 0 8 -262144 -1 -1 0; #X symbolatom 414 96 10 0 0 2 good - -; #X obj 127 235 print SR1; #X obj 335 235 print SR2; #X msg 351 99 b b b; #X msg 335 72 a a a; #X text 401 61 type "a" or "b"; #X obj 335 156 sroute a; #X obj 178 207 print SR1-miss; #X obj 386 203 print SR2-miss; #N canvas 520 226 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 145 AUTHOR Frank Barknecht; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION settable route; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 float symbol; #X text 12 105 OUTLET_0 anything; #X text 12 125 OUTLET_1 anything; #X restore 595 300 pd META; #X connect 0 0 8 0; #X connect 0 1 14 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 0; #X connect 4 0 0 0; #X connect 6 0 13 1; #X connect 7 0 13 1; #X connect 10 0 13 0; #X connect 11 0 13 0; #X connect 13 0 9 0; #X connect 13 1 15 0; pd-list-abs_0.1/list-dripslow-help.pd0000644000076500007650000000400611516222410016312 0ustar hanshans#N canvas 0 26 488 309 10; #X msg 208 152 1 2 3 4; #X obj 122 229 print element; #X obj 208 202 print EOL; #X msg 122 146 bang; #X text 60 30 list-dripslow: Serialize a list on demand.; #X text 56 69 First set list through right inlet \, then on each bang into left inlet \, one element will be output through left outlet. Right outlet bangs at list's end.; #N canvas 401 196 593 450 drip-many-example 0; #X obj 122 171 list-drip; #X obj 122 194 t a b; #X obj 122 323 print L1; #X obj 207 324 print L2; #X obj 297 326 print L3; #X obj 207 249 t a b; #X obj 122 121 t b b b; #X text 160 39 Drip many lists in sync; #X msg 122 92 bang; #X msg 383 187 A B C; #X msg 293 187 1 2 3; #X msg 122 149 x y z; #X obj 207 225 list-dripslow; #X obj 297 283 list-dripslow; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 1 1 12 0; #X connect 5 0 3 0; #X connect 5 1 13 0; #X connect 6 0 11 0; #X connect 6 1 10 0; #X connect 6 2 9 0; #X connect 8 0 6 0; #X connect 9 0 13 1; #X connect 10 0 12 1; #X connect 11 0 0 0; #X connect 12 0 5 0; #X connect 13 0 4 0; #X restore 332 185 pd drip-many-example; #N canvas 606 157 450 300 drip-emulation 0; #X obj 140 194 list-dripslow; #X obj 140 117 t b l; #X obj 140 167 until; #X obj 140 224 print; #X msg 140 82 1 2 3 4 5 6 7 achtung; #X text 135 49 drip fast with dripslow; #X connect 0 0 3 0; #X connect 0 1 2 1; #X connect 1 0 2 0; #X connect 1 1 0 1; #X connect 2 0 0 0; #X connect 4 0 1 0; #X restore 332 219 pd drip-emulation; #X obj 122 180 list-dripslow; #N canvas 416 170 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 145 AUTHOR Frank Barknecht; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION serialize a list on demand; #X text 12 65 INLET_0 bang; #X text 12 85 INLET_1 anything; #X text 12 105 INLET_2 float symbol pointer; #X text 12 125 OUTLET_0 bang; #X restore 437 287 pd META; #X connect 0 0 8 1; #X connect 3 0 8 0; #X connect 8 0 1 0; #X connect 8 1 2 0; pd-list-abs_0.1/list-extend.pd0000644000076500007650000000053310755131205015016 0ustar hanshans#N canvas 354 269 450 300 10; #X obj 77 41 inlet; #X obj 156 66 inlet; #X obj 77 257 outlet; #X text 72 21 add new elements to stored list and output it; #X text 156 47 set stored list \, no output; #X obj 77 153 list prepend; #X obj 172 153 t a; #X connect 0 0 5 0; #X connect 1 0 5 1; #X connect 5 0 6 0; #X connect 5 0 2 0; #X connect 6 0 5 1; pd-list-abs_0.1/LICENSE.txt0000644000076500007650000000304111373645032014056 0ustar hanshansThis software is copyrighted by Frank Barknecht and others. The following terms (the "Standard Improved BSD License") apply to all files associated with the software unless explicitly disclaimed in individual files: Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. pd-list-abs_0.1/OSCprepend.pd0000644000076500007650000000151410755131205014560 0ustar hanshans#N canvas 511 144 636 444 10; #X obj 45 131 list split 1; #X msg 94 90 /a 1 2 3; #X obj 45 276 list append; #X obj 45 299 list trim; #X obj 45 239 makefilename \$1%s; #X obj 45 188 route symbol; #X obj 45 89 inlet; #X obj 45 319 outlet; #X text 215 99 "Prepends" first argument to an OSC message list.; #X text 221 126 Example: with \$1 being "/synth" the message "/set x 1 2" will become "/synth/set x 1 2".; #X text 223 163 Right inlet lets you change the prepended argument ; #X msg 146 209 set \$1%s; #X obj 146 185 symbol; #X obj 146 163 inlet; #X text 224 189 Lists not starting with a symbol are filtered out! ; #X connect 0 0 5 0; #X connect 0 1 2 1; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 3 0 7 0; #X connect 4 0 2 0; #X connect 5 0 4 0; #X connect 6 0 0 0; #X connect 11 0 4 0; #X connect 12 0 11 0; #X connect 13 0 12 0; pd-list-abs_0.1/list-round-help.pd0000644000076500007650000000407511516222410015604 0ustar hanshans#N canvas 0 31 625 414 10; #N canvas 448 238 450 300 show 0; #X obj 41 39 inlet; #X obj 186 36 inlet; #X obj 41 124 outlet; #X msg 186 76 set; #X obj 41 59 list prepend set; #X obj 41 83 list trim; #X connect 0 0 4 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X restore 368 293 pd show; #X msg 368 318; #X obj 412 274 bng 15 250 50 1 empty empty clear 0 -6 0 8 -262144 -1 -1; #X msg 394 170 1.2 3 4.5 6.7 eight 9; #X msg 368 144 1.2 3 4.5 6.7 8.9; #N canvas 448 238 450 300 show 0; #X obj 41 39 inlet; #X obj 186 36 inlet; #X obj 41 124 outlet; #X msg 186 76 set; #X obj 41 59 list prepend set; #X obj 41 83 list trim; #X connect 0 0 4 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X restore 65 289 pd show; #X msg 65 314; #X obj 109 270 bng 15 250 50 1 empty empty clear 0 -6 0 8 -262144 -1 -1; #X msg 91 166 1.2 3 4.5 6.7 eight 9; #X msg 62 136 1.2 3 4.5 6.7 8.9; #X text 56 34 round all numbers in a list to nearest multiple of first argument or number in second inlet. Using 0 as argument (or no argumement) will round to 1 (integer round).; #X text 44 15 list-round; #X obj 65 225 list-round; #X text 62 113 simple integer round; #X obj 368 229 list-round 3; #X floatatom 130 200 5 0 0 2 round-to? - -; #X floatatom 447 205 5 0 0 2 round-to? - -; #X text 154 224 == [list-round 1]; #N canvas 472 161 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 115 OUTLET_0 list; #X text 12 45 DESCRIPTION round all numbers in a list to nearest multiple of first argument or number in second inlet; #X text 12 75 INLET_0 list; #X text 12 95 INLET_1 float; #X restore 563 378 pd META; #X connect 0 0 1 0; #X connect 2 0 0 1; #X connect 3 0 14 0; #X connect 4 0 14 0; #X connect 5 0 6 0; #X connect 7 0 5 1; #X connect 8 0 12 0; #X connect 9 0 12 0; #X connect 12 0 5 0; #X connect 14 0 0 0; #X connect 15 0 12 1; #X connect 16 0 14 1; pd-list-abs_0.1/list-pad-help.pd0000644000076500007650000000256111516222410015217 0ustar hanshans#N canvas 0 31 554 508 10; #X obj 159 285 list-pad; #X obj 159 335 list trim; #X obj 159 313 list prepend set; #X msg 62 209 bang; #X msg 212 253 a b c d e f; #X msg 159 211 1 2 3; #X msg 206 210 1 2 3 4 5 6 7 8 9; #X text 111 417 Using an idiom by Michal Seta; #X msg 125 211 1; #X text 97 53 Use [list-pad] when you want to complete a list with more values \, if the incoming list is too short. Longer lists get passed unchanged.; #X obj 50 29 list-pad; #X text 315 256 <= pad to these values; #X obj 212 233 loadbang; #X text 97 105 The list of padding values is provided through the second inlet.; #X text 96 149 The result list consists of the first list padded with the respective values of the second list.; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION complete a list with more values \, if the incoming list is too short; #X text 12 75 INLET_0 anything; #X text 12 115 OUTLET_0 list; #X text 12 95 INLET_1 anything; #X text 12 5 KEYWORDS control list_op; #X restore 465 456 pd META; #X msg 159 380; #X connect 0 0 2 0; #X connect 1 0 16 0; #X connect 2 0 1 0; #X connect 3 0 0 0; #X connect 4 0 0 1; #X connect 5 0 0 0; #X connect 6 0 0 0; #X connect 8 0 0 0; #X connect 12 0 4 0; pd-list-abs_0.1/list-map.pd0000644000076500007650000000123710755131205014306 0ustar hanshans#N canvas 470 232 489 423 10; #X obj 86 33 inlet; #X obj 275 52 inlet; #X obj 151 352 outlet; #X obj 170 248 outlet; #X obj 151 317 list; #X obj 170 215 list-drip; #X obj 275 215 list prepend; #X obj 354 185 t a; #X obj 151 155 t b a a b; #X obj 86 58 route bang; #X obj 86 83 b; #X obj 151 84 t b a; #X obj 151 124 list; #X connect 0 0 9 0; #X connect 1 0 6 0; #X connect 4 0 2 0; #X connect 5 0 3 0; #X connect 6 0 7 0; #X connect 6 0 4 1; #X connect 7 0 6 1; #X connect 8 0 4 0; #X connect 8 1 5 0; #X connect 8 2 4 1; #X connect 8 3 6 1; #X connect 9 0 10 0; #X connect 9 1 11 0; #X connect 10 0 12 0; #X connect 11 0 12 0; #X connect 11 1 12 1; #X connect 12 0 8 0; pd-list-abs_0.1/list-abs.pd0000644000076500007650000000104310755131205014271 0ustar hanshans#N canvas 228 307 502 424 10; #X obj 130 59 inlet; #X obj 130 86 t b a b; #X obj 152 145 list-drip; #X obj 152 190 abs; #X obj 152 168 route float; #X obj 152 244 list prepend; #X obj 245 244 t l; #X obj 129 274 list; #X obj 129 302 outlet; #X text 92 30 list-abs: apply abs() on float elements of a list.; #X connect 0 0 1 0; #X connect 1 0 7 0; #X connect 1 1 2 0; #X connect 1 2 5 1; #X connect 2 0 4 0; #X connect 3 0 5 0; #X connect 4 0 3 0; #X connect 4 1 5 0; #X connect 5 0 6 0; #X connect 5 0 7 1; #X connect 6 0 5 1; #X connect 7 0 8 0; pd-list-abs_0.1/list-lastx.pd0000644000076500007650000000131310755131205014657 0ustar hanshans#N canvas 119 92 810 481 10; #X obj 153 175 cnv 15 150 80 empty empty empty 20 12 0 14 -233017 -66577 0; #X floatatom 370 79 5 0 0 2 change-size - -; #X obj 326 112 t f b; #X text 378 110 first reset (b) \, then set new length (f).; #X text 311 195 Right outlet is responsible to first fill the list ; #X text 312 211 Left outlet then only lets the smaller list pass.; #X obj 180 183 list; #X obj 326 54 inlet; #X obj 180 149 inlet; #X obj 180 302 outlet; #X obj 180 228 list split \$1; #X obj 326 78 f \$1; #X connect 1 0 2 0; #X connect 2 0 10 1; #X connect 2 1 6 1; #X connect 6 0 10 0; #X connect 7 0 11 0; #X connect 8 0 6 0; #X connect 10 0 6 1; #X connect 10 0 9 0; #X connect 10 2 6 1; #X connect 11 0 2 0; pd-list-abs_0.1/list-pad.pd0000644000076500007650000000072111201077563014275 0ustar hanshans#N canvas 325 242 450 300 10; #X obj 129 41 inlet; #X obj 216 113 list; #X obj 216 140 list length; #X obj 149 190 list split; #X obj 228 43 inlet; #X obj 129 256 outlet; #X obj 129 74 t a b b a; #X obj 129 229 list append; #X obj 149 166 list; #X connect 0 0 6 0; #X connect 1 0 2 0; #X connect 2 0 3 1; #X connect 3 1 7 1; #X connect 4 0 8 1; #X connect 6 0 7 0; #X connect 6 1 8 0; #X connect 6 2 7 1; #X connect 6 3 1 0; #X connect 7 0 5 0; #X connect 8 0 3 0; pd-list-abs_0.1/list-splat.pd0000644000076500007650000000317010755131205014652 0ustar hanshans#N canvas 628 149 479 392 10; #X obj 84 29 inlet; #X obj 162 29 inlet; #X obj 84 226 outlet; #X obj 171 227 outlet; #X obj 267 228 outlet; #N canvas 309 114 692 535 negatives 0; #X obj 213 50 inlet; #X obj 289 121 inlet; #X obj 213 447 outlet; #X obj 245 407 outlet; #X obj 278 376 outlet; #X obj 213 325 list split; #X obj 243 95 list-len; #X text 80 20 This will only get called \, if the index is negative. ; #X obj 213 74 t a a; #X obj 273 148 +; #X obj 273 171 moses; #X obj 243 121 t f f; #X msg 273 193 1; #X obj 227 257 +; #X text 66 258 this is a hack: ==>; #X connect 0 0 8 0; #X connect 1 0 9 1; #X connect 5 0 2 0; #X connect 5 1 3 0; #X connect 5 2 4 0; #X connect 6 0 11 0; #X connect 8 0 5 0; #X connect 8 1 6 0; #X connect 9 0 10 0; #X connect 10 0 12 0; #X connect 10 1 5 1; #X connect 11 0 13 1; #X connect 11 1 9 0; #X connect 12 0 13 0; #X connect 13 0 5 1; #X restore 188 169 pd negatives; #X obj 135 113 < 0; #N canvas 235 272 450 300 route 0; #X obj 76 76 inlet; #X obj 155 74 inlet; #X obj 76 123 list prepend; #X obj 76 158 route 0 1; #X obj 76 231 outlet; #X obj 105 192 outlet; #X connect 0 0 2 0; #X connect 1 0 2 1; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 3 1 5 0; #X restore 84 137 pd route; #X obj 162 63 f \$1; #X obj 210 29 loadbang; #X obj 162 85 t f f f; #X obj 84 168 list split; #X connect 0 0 7 0; #X connect 1 0 8 0; #X connect 5 0 2 0; #X connect 5 1 3 0; #X connect 5 2 4 0; #X connect 6 0 7 1; #X connect 7 0 11 0; #X connect 7 1 5 0; #X connect 8 0 10 0; #X connect 9 0 8 0; #X connect 10 0 6 0; #X connect 10 1 11 1; #X connect 10 2 5 1; #X connect 11 0 2 0; #X connect 11 1 3 0; #X connect 11 2 4 0; pd-list-abs_0.1/triple-scale-help.pd0000644000076500007650000000246011516222410016064 0ustar hanshans#N canvas 0 33 515 437 10; #X obj 112 74 hsl 128 15 0 1 0 0 empty empty factor_(0-1) -2 -6 0 10 -262144 -1 -1 0 0; #X obj 109 187 triple-scale; #X text 61 29 interpolate linearily between two points (x \, y \, z) ; #X obj 109 216 unpack 0 0 0; #X obj 109 264 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 148 264 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 188 264 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X floatatom 109 238 5 0 0 0 - - -; #X floatatom 148 238 5 0 0 0 - - -; #X floatatom 188 238 5 0 0 0 - - -; #X msg 148 132 5 1 9; #X msg 188 160 8 2 1; #N canvas 362 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 135 OUTLET_0 list; #X text 12 45 DESCRIPTION interpolate linearily between two points (x \, y \, z); #X text 12 75 INLET_0 float; #X text 12 95 INLET_1 list; #X text 12 115 INLET_2 list; #X restore 458 408 pd META; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 3 0 7 0; #X connect 3 1 8 0; #X connect 3 2 9 0; #X connect 7 0 4 0; #X connect 8 0 5 0; #X connect 9 0 6 0; #X connect 10 0 1 1; #X connect 11 0 1 2; pd-list-abs_0.1/list-apply-help.pd0000644000076500007650000000501411516222410015574 0ustar hanshans#N canvas 0 26 802 590 10; #X obj 78 317 list-apply + 1; #X msg 78 285 1 2 3 4; #X obj 78 344 print; #X msg 233 285 1 2 3 4; #X obj 233 347 print; #X text 29 23 list-apply: apply the object created by [arg1 arg2] on every list element and return the modified list.; #X floatatom 171 287 5 0 0 2 add_x - -; #X msg 360 264 set /synth%d/freq; #X text 129 126 Inlets:; #X text 165 168 2) inlet connected to the apply-operation's first inlet. ; #X text 164 191 3) inlet connected to the apply-operation's second inlet \, if possible. (Not connected if there is no second inlet as is the case with for example makefilename.; #X msg 360 285 set count_%d...; #X msg 487 286 not used with makefilename; #X msg 77 396 1 2 3 4; #X obj 77 438 print; #X msg 288 397 1 2 3 4; #X obj 288 439 print; #X obj 388 379 hradio 15 1 0 4 empty empty empty 0 -6 0 8 -262144 -1 -1 0; #X obj 388 396 + 1; #X floatatom 198 398 5 0 0 2 moses-arg - -; #X text 128 74 Arguments:; #X text 163 92 Arg1 and arg2 are used to create the object whose operation is applied to the list elements.; #X text 164 148 1) the list to modify.; #X text 24 248 EXAMPLES:; #X obj 503 446 print; #X msg 503 366 1 2 3 3 3 4; #X msg 560 392 set 1; #X obj 645 447 print; #X msg 645 387 45 57 69; #X obj 79 551 print; #X msg 79 507 1 2 3 4; #X text 286 530 prepent is part of list-abs; #X obj 233 317 list-apply makefilename /synth%d/freq; #X obj 77 417 list-apply moses 3; #X obj 288 418 list-apply == 4; #X obj 503 418 list-apply change; #X obj 645 418 list-apply mtof; #X obj 79 528 list-apply prepent whatever; #N canvas 460 150 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 135 OUTLET_0 list; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 95 INLET_1 anything; #X text 12 75 INLET_0 anything; #X text 12 45 DESCRIPTION apply the object created by [arg1 arg2] on every list element and return the modified list.; #X text 12 115 INLET_2 anything; #X restore 737 557 pd META; #X connect 0 0 2 0; #X connect 1 0 0 0; #X connect 3 0 32 0; #X connect 6 0 0 2; #X connect 7 0 32 1; #X connect 11 0 32 1; #X connect 12 0 32 2; #X connect 13 0 33 0; #X connect 15 0 34 0; #X connect 17 0 18 0; #X connect 18 0 34 2; #X connect 19 0 33 2; #X connect 25 0 35 0; #X connect 26 0 35 1; #X connect 28 0 36 0; #X connect 30 0 37 0; #X connect 32 0 4 0; #X connect 33 0 14 0; #X connect 34 0 16 0; #X connect 35 0 24 0; #X connect 36 0 27 0; #X connect 37 0 29 0; pd-list-abs_0.1/list-accum-help.pd0000644000076500007650000000127011516222410015537 0ustar hanshans#N canvas 0 26 470 313 10; #X obj 164 160 list-accum; #X floatatom 164 199 5 0 0 0 - - -; #X msg 164 119 1 2 3; #X obj 120 197 print; #X msg 217 120 1 2 3 and 4; #X text 94 61 list-accum: add all floats in a list; #N canvas 466 163 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 85 OUTLET_0 list; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 65 INLET_0 anything; #X text 12 45 DESCRIPTION add all floats in a list; #X restore 397 277 pd META; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 2 0 0 0; #X connect 4 0 0 0; pd-list-abs_0.1/compare-any.pd0000644000076500007650000000230210755131205014765 0ustar hanshans#N canvas 460 148 653 646 10; #X obj 118 28 inlet; #X obj 118 451 outlet; #X obj 118 336 ==; #X obj 118 358 select 1; #N canvas 272 259 450 300 demux 0; #X obj 76 87 inlet; #X obj 169 86 inlet; #X obj 76 145 list prepend 0; #X obj 76 186 route 0 1; #X obj 76 242 outlet; #X obj 105 213 outlet; #X connect 0 0 2 0; #X connect 1 0 2 1; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 3 1 5 0; #X restore 118 230 pd demux; #X msg 169 207 0; #X msg 200 206 1; #X obj 118 295 route float; #X obj 219 293 route symbol; #X obj 359 199 print HUH?; #X obj 219 272 list; #X obj 238 164 route float symbol; #X obj 238 136 list; #X msg 118 423 1; #X msg 190 418 0; #X obj 238 28 inlet; #X obj 219 356 select [DUMMY-SYMBOL]; #X connect 0 0 4 0; #X connect 2 0 3 0; #X connect 3 0 13 0; #X connect 3 1 14 0; #X connect 4 0 7 0; #X connect 4 1 10 0; #X connect 5 0 4 1; #X connect 6 0 4 1; #X connect 7 0 2 0; #X connect 7 1 14 0; #X connect 8 0 16 0; #X connect 8 1 14 0; #X connect 10 0 8 0; #X connect 11 0 2 1; #X connect 11 0 5 0; #X connect 11 1 6 0; #X connect 11 1 16 1; #X connect 11 2 9 0; #X connect 12 0 11 0; #X connect 13 0 1 0; #X connect 14 0 1 0; #X connect 15 0 12 0; #X connect 16 0 13 0; #X connect 16 1 14 0; pd-list-abs_0.1/take-two.pd0000644000076500007650000000110211201077563014305 0ustar hanshans#N canvas 444 190 497 465 10; #X obj 206 267 list split 1; #X obj 206 330 list; #X obj 206 389 list; #X obj 206 300 t b a; #X obj 206 233 list; #X obj 206 200 until; #X obj 256 174 b; #X obj 206 85 inlet; #X obj 206 415 outlet; #X obj 206 152 t b a; #X obj 206 355 list-drip; #X connect 0 0 3 0; #X connect 0 1 1 1; #X connect 0 1 4 1; #X connect 0 2 6 0; #X connect 1 0 10 0; #X connect 2 0 8 0; #X connect 3 0 1 0; #X connect 3 1 2 1; #X connect 4 0 0 0; #X connect 5 0 4 0; #X connect 6 0 5 1; #X connect 7 0 9 0; #X connect 9 0 5 0; #X connect 9 1 4 1; #X connect 10 0 2 0; pd-list-abs_0.1/list-rdrip.pd0000644000076500007650000000161011201077563014647 0ustar hanshans#N canvas 218 94 842 634 10; #X obj 123 97 t a a; #X obj 123 254 spigot; #X obj 162 162 bang; #X obj 162 181 1; #X obj 283 162 route bang; #X obj 243 163 bang; #X obj 243 182 0; #X obj 162 127 list split 2; #X obj 48 387 list split; #X obj 115 339 list length; #X obj 115 364 >> 1; #X obj 91 32 inlet; #X obj 350 188 outlet; #X obj 91 66 t b a; #X obj 459 150 outlet; #X text 514 152 signal end of list; #X obj 123 273 t a a; #X text 155 29 Copyright 2009 by Mathieu Bouchard/Frank Barknecht; #X connect 0 0 1 0; #X connect 0 1 7 0; #X connect 1 0 16 0; #X connect 2 0 3 0; #X connect 3 0 1 1; #X connect 4 1 12 0; #X connect 5 0 6 0; #X connect 6 0 1 1; #X connect 7 0 2 0; #X connect 7 2 4 0; #X connect 7 2 5 0; #X connect 8 0 0 0; #X connect 8 1 0 0; #X connect 9 0 10 0; #X connect 10 0 8 1; #X connect 11 0 13 0; #X connect 13 0 14 0; #X connect 13 1 0 0; #X connect 16 0 8 0; #X connect 16 1 9 0; pd-list-abs_0.1/list-add-help.pd0000644000076500007650000000126611516222410015204 0ustar hanshans#N canvas 0 26 450 300 10; #X msg 145 116 5 5 5 NOPE 5; #X obj 145 217 print; #X msg 196 140 1 2 3 0 -1; #X text 108 67 Substract two lists element by element; #X obj 145 177 list-add; #N canvas 460 150 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 105 OUTLET_0 list; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 anything; #X text 12 45 DESCRIPTION substract two lists element by element; #X restore 397 277 pd META; #X connect 0 0 4 0; #X connect 2 0 4 1; #X connect 4 0 1 0; pd-list-abs_0.1/list-sort.pd0000644000076500007650000001063411201077563014524 0ustar hanshans#N canvas 422 43 782 540 10; #X obj 129 310 list split 1; #X obj 57 266 list-len; #X obj 163 331 list split 1; #X obj 129 373 list append; #X obj 57 347 list; #X obj 57 287 > 0; #X obj 150 472 outlet; #X obj 57 308 sel 1 0; #X obj 163 49 inlet; #X text 55 513 2008 Michal Seta; #X obj 233 393 list prepend; #X obj 150 450 list append; #X obj 452 140 loadbang; #X obj 387 52 inlet; #N canvas 0 0 552 424 mux 0; #X obj 40 52 inlet; #X obj 153 52 inlet; #X obj 255 49 inlet; #X obj 40 266 spigot 1; #X obj 153 266 spigot; #X obj 255 223 unpack 0 0; #X msg 255 177 1 0; #X msg 306 195 0 1; #X obj 357 92 select 0; #X obj 255 70 select asc desc; #X obj 40 317 outlet; #X connect 0 0 3 0; #X connect 1 0 4 0; #X connect 2 0 9 0; #X connect 3 0 10 0; #X connect 4 0 10 0; #X connect 5 0 3 1; #X connect 5 1 4 1; #X connect 6 0 5 0; #X connect 7 0 5 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 9 0 6 0; #X connect 9 1 7 0; #X connect 9 2 8 0; #X restore 200 252 pd mux; #X obj 387 201 list append \$1; #X obj 387 171 t b a; #X obj 330 392 t a; #X obj 163 163 t a a a a b; #X obj 163 120 t a b; #X text 292 283 [list-sort] sort an incoming list of numerical values in an ascending or descending order; #N canvas 294 34 842 735 minmaxpos 0; #X obj 128 97 list-drip; #X obj 128 120 route float; #X obj 159 256 f; #X obj 106 664 outlet; #X obj 165 639 f; #X obj 165 666 outlet; #X obj 106 575 t b b; #X obj 106 10 inlet; #X obj 106 636 f; #N canvas 0 0 450 300 once 0; #X obj 110 75 inlet; #X obj 105 187 spigot 1; #X obj 110 104 t b f; #X msg 125 151 0; #X msg 165 99 1; #X obj 165 63 inlet; #X obj 102 219 outlet; #X connect 0 0 2 0; #X connect 1 0 6 0; #X connect 2 0 3 0; #X connect 2 1 1 0; #X connect 3 0 1 1; #X connect 4 0 1 1; #X connect 5 0 4 0; #X restore 262 183 pd once; #X obj 275 258 f; #X obj 244 257 max; #X obj 128 256 min; #X text 323 183 prime [min] and [max] with first item once; #N canvas 0 0 450 300 count 0; #X obj 120 148 f 0; #X obj 148 149 + 1; #X obj 163 100 0; #X obj 117 24 inlet; #X obj 119 176 outlet; #X obj 181 25 inlet; #X obj 114 47 b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 3 0 6 0; #X connect 5 0 2 0; #X connect 6 0 0 0; #X restore 168 371 pd count; #X obj 128 470 change; #X obj 244 472 change; #X obj 128 527 f; #X obj 244 525 f; #X obj 128 495 b; #X obj 244 496 b; #X msg 429 356 set \$1; #X msg 601 357 0; #X obj 106 30 t b a b b; #X obj 128 150 t a a b a; #X text 637 358 reset positions; #X text 483 356 set change; #X text 302 475 if min or max changes \, store the new positions.; #X text 227 24 output positions of min and max float in a list (zero-based) ; #X connect 0 0 1 0; #X connect 1 0 24 0; #X connect 2 0 12 1; #X connect 4 0 5 0; #X connect 6 0 8 0; #X connect 6 1 4 0; #X connect 7 0 23 0; #X connect 8 0 3 0; #X connect 9 0 11 1; #X connect 9 0 12 1; #X connect 9 0 21 0; #X connect 9 0 22 0; #X connect 10 0 11 1; #X connect 11 0 10 0; #X connect 11 0 16 0; #X connect 12 0 2 0; #X connect 12 0 15 0; #X connect 14 0 18 1; #X connect 14 0 17 1; #X connect 15 0 19 0; #X connect 16 0 20 0; #X connect 17 0 8 1; #X connect 18 0 4 1; #X connect 19 0 17 0; #X connect 20 0 18 0; #X connect 21 0 16 0; #X connect 21 0 15 0; #X connect 22 0 4 1; #X connect 22 0 8 1; #X connect 23 0 6 0; #X connect 23 1 0 0; #X connect 23 2 14 1; #X connect 23 3 9 1; #X connect 24 0 12 0; #X connect 24 1 11 0; #X connect 24 2 14 0; #X connect 24 3 9 0; #X restore 200 215 pd minmaxpos; #X obj 163 86 list-filter; #N canvas 0 0 677 293 checknum 0; #X obj 131 95 route float; #X msg 131 116 1; #X obj 205 149 print; #X msg 205 119 list-sort: Warning: dropped a non-number from list; #X obj 131 70 inlet; #X obj 131 149 outlet; #X connect 0 0 1 0; #X connect 0 1 3 0; #X connect 1 0 5 0; #X connect 3 0 2 0; #X connect 4 0 0 0; #X restore 252 86 pd checknum; #X connect 0 0 3 0; #X connect 0 1 2 0; #X connect 1 0 5 0; #X connect 2 0 10 0; #X connect 2 1 3 1; #X connect 3 0 4 1; #X connect 4 0 18 0; #X connect 5 0 7 0; #X connect 7 0 4 0; #X connect 7 1 11 0; #X connect 8 0 22 0; #X connect 10 0 11 1; #X connect 10 0 17 0; #X connect 11 0 6 0; #X connect 12 0 15 0; #X connect 13 0 16 0; #X connect 14 0 0 1; #X connect 15 0 14 2; #X connect 16 0 15 0; #X connect 16 1 15 1; #X connect 17 0 10 1; #X connect 18 0 1 0; #X connect 18 1 0 0; #X connect 18 2 21 0; #X connect 19 0 18 0; #X connect 19 1 10 1; #X connect 21 0 14 0; #X connect 21 1 14 1; #X connect 22 0 19 0; #X connect 22 1 23 0; #X connect 23 0 22 1; pd-list-abs_0.1/list-clip.pd0000644000076500007650000000107510755131205014460 0ustar hanshans#N canvas 220 202 450 335 10; #X obj 109 49 inlet; #X obj 141 155 inlet; #X obj 174 171 inlet; #X obj 109 201 clip \$1 \$2; #X obj 109 136 route float; #X obj 109 100 list-drip; #X obj 109 249 list prepend; #X obj 200 249 t a; #X obj 86 298 outlet; #X obj 86 274 list; #X obj 109 75 t a b; #X connect 0 0 10 0; #X connect 1 0 3 1; #X connect 2 0 3 2; #X connect 3 0 6 0; #X connect 4 0 3 0; #X connect 4 1 6 0; #X connect 5 0 4 0; #X connect 5 1 9 0; #X connect 6 0 7 0; #X connect 6 0 9 1; #X connect 7 0 6 1; #X connect 9 0 8 0; #X connect 10 0 5 0; #X connect 10 1 6 1; pd-list-abs_0.1/Makefile0000644000076500007650000003227511516222410013674 0ustar hanshans## Pd library template version 1.0.7 # For instructions on how to use this template, see: # http://puredata.info/docs/developer/MakefileTemplate LIBRARY_NAME = list-abs # add your .c source files, one object per file, to the SOURCES # variable, help files will be included automatically SOURCES = # list all pd objects (i.e. myobject.pd) files here, and their helpfiles will # be included automatically PDOBJECTS = OSCprepend.pd compare-any.pd last-x.pd list-abs.pd list-accum.pd list-add.pd list-apply.pd list-centroid.pd list-clip.pd list-compare.pd list-delete.pd list-dotprod.pd list-drip.pd list-drip2.pd list-dripslow.pd list-emath.pd list-enumerate.pd list-equalize.pd list-extend.pd list-fifo-delim.pd list-fifo.pd list-filter.pd list-find.pd list-geometric-mean.pd list-group.pd list-harmonic-mean.pd list-idx.pd list-insert.pd list-inter.pd list-inter-many.pd list-iter.pd list-l2s.pd list-lastx.pd list-len.pd list-lifo.pd list-makefilename.pd list-map.pd list-map2.pd list-math.pd list-mean.pd list-minmax.pd list-moses.pd list-mult.pd list-normalize.pd list-nth.pd list-onearg.pd list-pad.pd list-random.pd list-rdrip.pd list-reduce.pd list-replace.pd list-rev.pd list-rot.pd list-round.pd list-sect.pd list-seek.pd list-shellsort.pd list-sieve.pd list-sort.pd list-splat.pd list-sub.pd list-swap.pd list-tabdump.pd list-unique.pd list-unitvec.pd list-wrandom.pd prepent.pd sroute.pd take-two.pd triple-scale.pd list-invint.pd list-makefilename-a.pd list-stddev.pd # example patches and related files, in the 'examples' subfolder EXAMPLES = list-demux.pd list-inter-example.pd list-inter-gem-example.pd list-sieve-example-2.pd # manuals and related files, in the 'manual' subfolder MANUAL = # if you want to include any other files in the source and binary tarballs, # list them here. This can be anything from header files, test patches, # documentation, etc. README.txt and LICENSE.txt are required and therefore # automatically included EXTRA_DIST = list-abs-intro.pd list-abs-intro.txt #------------------------------------------------------------------------------# # # things you might need to edit if you are using other C libraries # #------------------------------------------------------------------------------# # -I"$(PD_INCLUDE)/pd" supports the header location for 0.43 CFLAGS = -I"$(PD_INCLUDE)/pd" -Wall -W -g LDFLAGS = LIBS = #------------------------------------------------------------------------------# # # you shouldn't need to edit anything below here, if we did it right :) # #------------------------------------------------------------------------------# # get library version from meta file LIBRARY_VERSION = $(shell sed -n 's|^\#X text [0-9][0-9]* [0-9][0-9]* VERSION \(.*\);|\1|p' $(LIBRARY_NAME)-meta.pd) CFLAGS += -DPD -DVERSION='"$(LIBRARY_VERSION)"' PD_INCLUDE = $(PD_PATH)/include # where to install the library, overridden below depending on platform prefix = /usr/local libdir = $(prefix)/lib pkglibdir = $(libdir)/pd-externals objectsdir = $(pkglibdir) INSTALL = install INSTALL_PROGRAM = $(INSTALL) -p -m 644 INSTALL_DATA = $(INSTALL) -p -m 644 INSTALL_DIR = $(INSTALL) -p -m 755 -d ALLSOURCES := $(SOURCES) $(SOURCES_android) $(SOURCES_cygwin) $(SOURCES_macosx) \ $(SOURCES_iphoneos) $(SOURCES_linux) $(SOURCES_windows) DISTDIR=$(LIBRARY_NAME)-$(LIBRARY_VERSION) ORIGDIR=pd-$(LIBRARY_NAME:~=)_$(LIBRARY_VERSION) UNAME := $(shell uname -s) ifeq ($(UNAME),Darwin) CPU := $(shell uname -p) ifeq ($(CPU),arm) # iPhone/iPod Touch SOURCES += $(SOURCES_iphoneos) EXTENSION = pd_darwin OS = iphoneos PD_PATH = /Applications/Pd-extended.app/Contents/Resources IPHONE_BASE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin CC=$(IPHONE_BASE)/gcc CPP=$(IPHONE_BASE)/cpp CXX=$(IPHONE_BASE)/g++ ISYSROOT = -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS3.0.sdk IPHONE_CFLAGS = -miphoneos-version-min=3.0 $(ISYSROOT) -arch armv6 OPT_CFLAGS = -fast -funroll-loops -fomit-frame-pointer CFLAGS := $(IPHONE_CFLAGS) $(OPT_CFLAGS) $(CFLAGS) LDFLAGS += -arch armv6 -bundle -undefined dynamic_lookup $(ISYSROOT) LIBS += -lc STRIP = strip -x DISTBINDIR=$(DISTDIR)-$(OS) else # Mac OS X SOURCES += $(SOURCES_macosx) EXTENSION = pd_darwin OS = macosx PD_PATH = /Applications/Pd-extended.app/Contents/Resources OPT_CFLAGS = -ftree-vectorize -ftree-vectorizer-verbose=2 -fast # build universal 32-bit on 10.4 and 32/64 on newer ifeq ($(shell uname -r | sed 's|\([0-9][0-9]*\)\.[0-9][0-9]*\.[0-9][0-9]*|\1|'), 8) FAT_FLAGS = -arch ppc -arch i386 -mmacosx-version-min=10.4 else FAT_FLAGS = -arch ppc -arch i386 -arch x86_64 -mmacosx-version-min=10.4 SOURCES += $(SOURCES_iphoneos) endif CFLAGS += $(FAT_FLAGS) -fPIC -I/sw/include LDFLAGS += $(FAT_FLAGS) -bundle -undefined dynamic_lookup -L/sw/lib # if the 'pd' binary exists, check the linking against it to aid with stripping LDFLAGS += $(shell test -e $(PD_PATH)/bin/pd && echo -bundle_loader $(PD_PATH)/bin/pd) LIBS += -lc STRIP = strip -x DISTBINDIR=$(DISTDIR)-$(OS) # install into ~/Library/Pd on Mac OS X since /usr/local isn't used much pkglibdir=$(HOME)/Library/Pd endif endif # Tho Android uses Linux, we use this fake uname to provide an easy way to # setup all this things needed to cross-compile for Android using the NDK ifeq ($(UNAME),ANDROID) CPU := arm SOURCES += $(SOURCES_android) EXTENSION = pd_linux OS = android PD_PATH = /usr NDK_BASE=/usr/local/android-ndk NDK_SYSROOT=$(NDK_BASE)/platforms/android-5/arch-arm NDK_TOOLCHAIN=$(NDK_BASE)/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86 CC=$(NDK_TOOLCHAIN)/bin/arm-linux-androideabi-gcc OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer CFLAGS += -fPIC -I$(NDK_SYSROOT)/usr/include LDFLAGS += -Wl,--export-dynamic -L$(NDK_SYSROOT)/usr/lib -shared -fPIC LIBS += -lc STRIP = strip --strip-unneeded -R .note -R .comment DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m) endif ifeq ($(UNAME),Linux) CPU := $(shell uname -m) SOURCES += $(SOURCES_linux) EXTENSION = pd_linux OS = linux PD_PATH = /usr OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer CFLAGS += -fPIC LDFLAGS += -Wl,--export-dynamic -shared -fPIC LIBS += -lc STRIP = strip --strip-unneeded -R .note -R .comment DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m) endif ifeq ($(UNAME),GNU) # GNU/Hurd, should work like GNU/Linux for basically all externals CPU := $(shell uname -m) SOURCES += $(SOURCES_linux) EXTENSION = pd_linux OS = linux PD_PATH = /usr OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer CFLAGS += -fPIC LDFLAGS += -Wl,--export-dynamic -shared -fPIC LIBS += -lc STRIP = strip --strip-unneeded -R .note -R .comment DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m) endif ifeq ($(UNAME),GNU/kFreeBSD) # Debian GNU/kFreeBSD, should work like GNU/Linux for basically all externals CPU := $(shell uname -m) SOURCES += $(SOURCES_linux) EXTENSION = pd_linux OS = linux PD_PATH = /usr OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer CFLAGS += -fPIC LDFLAGS += -Wl,--export-dynamic -shared -fPIC LIBS += -lc STRIP = strip --strip-unneeded -R .note -R .comment DISTBINDIR=$(DISTDIR)-$(OS)-$(shell uname -m) endif ifeq (CYGWIN,$(findstring CYGWIN,$(UNAME))) CPU := $(shell uname -m) SOURCES += $(SOURCES_cygwin) EXTENSION = dll OS = cygwin PD_PATH = $(cygpath $(PROGRAMFILES))/pd OPT_CFLAGS = -O6 -funroll-loops -fomit-frame-pointer CFLAGS += LDFLAGS += -Wl,--export-dynamic -shared -L"$(PD_PATH)/src" -L"$(PD_PATH)/bin" LIBS += -lc -lpd STRIP = strip --strip-unneeded -R .note -R .comment DISTBINDIR=$(DISTDIR)-$(OS) endif ifeq (MINGW,$(findstring MINGW,$(UNAME))) CPU := $(shell uname -m) SOURCES += $(SOURCES_windows) EXTENSION = dll OS = windows PD_PATH = $(shell cd "$(PROGRAMFILES)"/pd && pwd) OPT_CFLAGS = -O3 -funroll-loops -fomit-frame-pointer CFLAGS += -mms-bitfields LDFLAGS += -s -shared -Wl,--enable-auto-import LIBS += -L"$(PD_PATH)/src" -L"$(PD_PATH)/bin" -L"$(PD_PATH)/obj" -lpd -lwsock32 -lkernel32 -luser32 -lgdi32 STRIP = strip --strip-unneeded -R .note -R .comment DISTBINDIR=$(DISTDIR)-$(OS) endif # in case somebody manually set the HELPPATCHES above HELPPATCHES ?= $(SOURCES:.c=-help.pd) $(PDOBJECTS:.pd=-help.pd) CFLAGS += $(OPT_CFLAGS) .PHONY = install libdir_install single_install install-doc install-exec install-examples install-manual clean dist etags $(LIBRARY_NAME) all: $(SOURCES:.c=.$(EXTENSION)) %.o: %.c $(CC) $(CFLAGS) -o "$*.o" -c "$*.c" %.$(EXTENSION): %.o $(CC) $(LDFLAGS) -o "$*.$(EXTENSION)" "$*.o" $(LIBS) chmod a-x "$*.$(EXTENSION)" # this links everything into a single binary file $(LIBRARY_NAME): $(SOURCES:.c=.o) $(LIBRARY_NAME).o $(CC) $(LDFLAGS) -o $(LIBRARY_NAME).$(EXTENSION) $(SOURCES:.c=.o) $(LIBRARY_NAME).o $(LIBS) chmod a-x $(LIBRARY_NAME).$(EXTENSION) install: libdir_install # The meta and help files are explicitly installed to make sure they are # actually there. Those files are not optional, then need to be there. libdir_install: $(SOURCES:.c=.$(EXTENSION)) install-doc install-examples install-manual $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) $(INSTALL_DATA) $(LIBRARY_NAME)-meta.pd \ $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) test -z "$(strip $(SOURCES))" || (\ $(INSTALL_PROGRAM) $(SOURCES:.c=.$(EXTENSION)) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) && \ $(STRIP) $(addprefix $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/,$(SOURCES:.c=.$(EXTENSION)))) test -z "$(strip $(PDOBJECTS))" || \ $(INSTALL_DATA) $(PDOBJECTS) \ $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) # install library linked as single binary single_install: $(LIBRARY_NAME) install-doc install-exec $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) $(INSTALL_PROGRAM) $(LIBRARY_NAME).$(EXTENSION) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) $(STRIP) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/$(LIBRARY_NAME).$(EXTENSION) install-doc: $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) test -z "$(strip $(SOURCES) $(PDOBJECTS))" || \ $(INSTALL_DATA) $(HELPPATCHES) \ $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME) $(INSTALL_DATA) README.txt $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/README.txt $(INSTALL_DATA) LICENSE.txt $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/LICENSE.txt install-examples: test -z "$(strip $(EXAMPLES))" || \ $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/examples && \ for file in $(EXAMPLES); do \ $(INSTALL_DATA) examples/$$file $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/examples; \ done install-manual: test -z "$(strip $(MANUAL))" || \ $(INSTALL_DIR) $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/manual && \ for file in $(MANUAL); do \ $(INSTALL_DATA) manual/$$file $(DESTDIR)$(objectsdir)/$(LIBRARY_NAME)/manual; \ done clean: -rm -f -- $(SOURCES:.c=.o) $(SOURCES_LIB:.c=.o) -rm -f -- $(SOURCES:.c=.$(EXTENSION)) -rm -f -- $(LIBRARY_NAME).o -rm -f -- $(LIBRARY_NAME).$(EXTENSION) distclean: clean -rm -f -- $(DISTBINDIR).tar.gz -rm -rf -- $(DISTBINDIR) -rm -f -- $(DISTDIR).tar.gz -rm -rf -- $(DISTDIR) -rm -f -- $(ORIGDIR).tar.gz -rm -rf -- $(ORIGDIR) $(DISTBINDIR): $(INSTALL_DIR) $(DISTBINDIR) libdir: all $(DISTBINDIR) $(INSTALL_DATA) $(LIBRARY_NAME)-meta.pd $(DISTBINDIR) $(INSTALL_DATA) $(SOURCES) $(DISTBINDIR) $(INSTALL_DATA) $(HELPPATCHES) $(DISTBINDIR) test -z "$(strip $(EXTRA_DIST))" || \ $(INSTALL_DATA) $(EXTRA_DIST) $(DISTBINDIR) # tar --exclude-vcs -czpf $(DISTBINDIR).tar.gz $(DISTBINDIR) $(DISTDIR): $(INSTALL_DIR) $(DISTDIR) $(ORIGDIR): $(INSTALL_DIR) $(ORIGDIR) dist: $(DISTDIR) $(INSTALL_DATA) Makefile $(DISTDIR) $(INSTALL_DATA) README.txt $(DISTDIR) $(INSTALL_DATA) LICENSE.txt $(DISTDIR) $(INSTALL_DATA) $(LIBRARY_NAME)-meta.pd $(DISTDIR) test -z "$(strip $(ALLSOURCES))" || \ $(INSTALL_DATA) $(ALLSOURCES) $(DISTDIR) test -z "$(strip $(PDOBJECTS))" || \ $(INSTALL_DATA) $(PDOBJECTS) $(DISTDIR) test -z "$(strip $(HELPPATCHES))" || \ $(INSTALL_DATA) $(HELPPATCHES) $(DISTDIR) test -z "$(strip $(EXTRA_DIST))" || \ $(INSTALL_DATA) $(EXTRA_DIST) $(DISTDIR) test -z "$(strip $(EXAMPLES))" || \ $(INSTALL_DIR) $(DISTDIR)/examples && \ for file in $(EXAMPLES); do \ $(INSTALL_DATA) examples/$$file $(DISTDIR)/examples; \ done test -z "$(strip $(MANUAL))" || \ $(INSTALL_DIR) $(DISTDIR)/manual && \ for file in $(MANUAL); do \ $(INSTALL_DATA) manual/$$file $(DISTDIR)/manual; \ done tar --exclude-vcs -czpf $(DISTDIR).tar.gz $(DISTDIR) # make a Debian source package dpkg-source: debclean make distclean dist mv $(DISTDIR) $(ORIGDIR) tar --exclude-vcs -czpf ../$(ORIGDIR).orig.tar.gz $(ORIGDIR) rm -f -- $(DISTDIR).tar.gz rm -rf -- $(DISTDIR) $(ORIGDIR) cd .. && dpkg-source -b $(LIBRARY_NAME) etags: etags *.h $(SOURCES) ../../pd/src/*.[ch] /usr/include/*.h /usr/include/*/*.h showsetup: @echo "CFLAGS: $(CFLAGS)" @echo "LDFLAGS: $(LDFLAGS)" @echo "LIBS: $(LIBS)" @echo "PD_INCLUDE: $(PD_INCLUDE)" @echo "PD_PATH: $(PD_PATH)" @echo "objectsdir: $(objectsdir)" @echo "LIBRARY_NAME: $(LIBRARY_NAME)" @echo "LIBRARY_VERSION: $(LIBRARY_VERSION)" @echo "SOURCES: $(SOURCES)" @echo "PDOBJECTS: $(PDOBJECTS)" @echo "ALLSOURCES: $(ALLSOURCES)" @echo "UNAME: $(UNAME)" @echo "CPU: $(CPU)" @echo "pkglibdir: $(pkglibdir)" @echo "DISTDIR: $(DISTDIR)" @echo "ORIGDIR: $(ORIGDIR)" pd-list-abs_0.1/list-stddev-help.pd0000644000076500007650000000124211516222410015737 0ustar hanshans#N canvas 0 0 565 344 10; #X obj 110 105 list-random 100 10; #X msg 215 155 11 17 21 9 43 28 2 50 72 12; #N canvas 0 0 450 300 show 0; #X obj 41 39 inlet; #X obj 186 36 inlet; #X obj 41 124 outlet; #X msg 186 76 set; #X obj 41 59 list prepend set; #X obj 41 83 list trim; #X connect 0 0 4 0; #X connect 1 0 3 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X restore 215 135 pd show; #X msg 110 84 bang; #X obj 110 135 list-stddev; #X floatatom 110 158 5 0 0 3 std_deviation - -; #X text 66 41 list-stddev - calculate the standard deviation of a float list; #X connect 0 0 2 0; #X connect 0 0 4 0; #X connect 2 0 1 0; #X connect 3 0 0 0; #X connect 4 0 5 0; pd-list-abs_0.1/list-filter-help.pd0000644000076500007650000000452611516222410015743 0ustar hanshans#N canvas 0 26 583 620 10; #X obj 226 453 mod 2; #X obj 226 483 != 0; #X obj 274 454 mod 3; #X obj 274 483 != 0; #X obj 226 517 &&; #X obj 226 426 t a a; #N canvas 0 0 450 300 show 0; #X obj 129 107 list prepend set; #X obj 129 129 list trim; #X obj 129 79 inlet; #X obj 129 154 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X restore 70 548 pd show; #X msg 70 574; #X text 62 27 [list-filter]; #X text 66 58 [list-filter] returns a sequence consisting of those items from the sequence for which the user-defined operation cross-connected to the rightmost in- and outlet is true.; #X text 66 112 Everything that is not 0 is considered a TRUE value. Internally [select 0] is used.; #X msg 70 213 0 1 2 3 4 5; #N canvas 0 0 450 300 show 0; #X obj 129 107 list prepend set; #X obj 129 129 list trim; #X obj 129 79 inlet; #X obj 129 154 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X restore 70 306 pd show; #X msg 70 332; #X obj 167 266 >= 3; #X text 67 163 Examples:; #X text 217 266 remove values smaller than 3 from list; #X obj 160 212 t b a; #X floatatom 160 193 5 0 0 0 - - -; #X text 200 212 "bang" to [list-filter] will resend the last list; #X obj 70 265 list-filter; #X text 70 362 Calculate some small primes:; #X msg 70 387 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24; #X obj 70 471 list-filter; #X msg 82 526 bang; #X msg 79 285 bang; #N canvas 491 26 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 AUTHOR Frank Barknecht; #X text 12 175 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 115 OUTLET_0 list; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION return a list of items for which the operation cross-connected to the rightmost in- and outlet is true.; #X text 12 75 INLET_0 list; #X text 12 95 INLET_1 float; #X text 12 135 OUTLET_1 float; #X restore 508 580 pd META; #X connect 0 0 1 0; #X connect 1 0 4 0; #X connect 2 0 3 0; #X connect 3 0 4 1; #X connect 4 0 23 1; #X connect 5 0 0 0; #X connect 5 1 2 0; #X connect 6 0 7 0; #X connect 11 0 20 0; #X connect 12 0 13 0; #X connect 14 0 20 1; #X connect 17 0 20 0; #X connect 17 1 14 1; #X connect 18 0 17 0; #X connect 20 0 12 0; #X connect 20 1 14 0; #X connect 22 0 23 0; #X connect 23 0 6 0; #X connect 23 1 5 0; #X connect 24 0 6 0; #X connect 25 0 12 0; pd-list-abs_0.1/list-onearg-help.pd0000644000076500007650000000276611516222410015735 0ustar hanshans#N canvas 0 31 550 477 10; #X msg 195 65 bang; #X obj 195 132 print float; #X msg 49 65 bang; #X msg 51 197 bang; #X obj 51 264 print blank; #X msg 53 348 bang; #X obj 53 415 print blank_with_default; #X text 24 173 When there is a blank argument \, there is no output: ; #X text 26 37 This object can take any kind of argument:; #X msg 276 349 bang; #X obj 276 416 print blank_with_default; #X msg 204 195 bang; #X obj 204 262 print blank; #X obj 49 132 print non-float; #X obj 49 101 list-onearg word; #X obj 53 384 list-onearg \$1 default; #X obj 51 233 list-onearg; #X obj 204 231 list-onearg \$1; #X obj 195 101 list-onearg 5; #X text 13 12 [list-onearg]; #X obj 276 385 list-onearg 0 256; #X text 32 295 If you set a second argument \, it will be used as the default when the argument is blank. (0 is treated as no argument \, too.); #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op abstraction_op; #X text 12 45 DESCRIPTION output on bang only if \$1 exists; #X text 12 65 INLET_0 bang; #X text 12 85 OUTLET_0 float symbol; #X restore 485 446 pd META; #X connect 0 0 18 0; #X connect 2 0 14 0; #X connect 3 0 16 0; #X connect 5 0 15 0; #X connect 9 0 20 0; #X connect 11 0 17 0; #X connect 14 0 13 0; #X connect 15 0 6 0; #X connect 16 0 4 0; #X connect 17 0 12 0; #X connect 18 0 1 0; #X connect 20 0 10 0; pd-list-abs_0.1/list-drip2.pd0000644000076500007650000000070411201077563014552 0ustar hanshans#N canvas 161 215 536 406 10; #X text 81 50 Drips two lists in sync \, as long as the first list lasts.; #X obj 96 273 outlet; #X obj 96 87 inlet; #X obj 189 270 outlet; #X obj 257 272 outlet; #X obj 353 125 inlet; #X text 304 270 End; #X obj 96 163 list-drip; #X obj 96 186 t a b; #X obj 189 222 list-dripslow; #X connect 2 0 7 0; #X connect 5 0 9 1; #X connect 7 0 8 0; #X connect 7 1 4 0; #X connect 8 0 1 0; #X connect 8 1 9 0; #X connect 9 0 3 0; pd-list-abs_0.1/list-apply.pd0000644000076500007650000000136210755131205014655 0ustar hanshans#N canvas 0 0 554 590 10; #X obj 77 499 list; #X obj 100 385 list prepend; #X obj 78 150 t b a b; #X text 260 177 clear result list; #X text 175 242 "Drip" (serialize) the list; #X text 124 496 Final result is built here; #X obj 78 81 inlet; #X obj 210 271 inlet; #X obj 77 530 outlet; #X obj 100 307 \$1 \$2; #X text 164 307 do \$1 \$2 with each element; #X text 258 389 Repack the list; #X obj 196 386 t a; #X obj 163 270 inlet; #X text 276 272 two inlets for the apply-operation; #X obj 100 242 list-drip; #X connect 0 0 8 0; #X connect 1 0 0 1; #X connect 1 0 12 0; #X connect 2 0 0 0; #X connect 2 1 15 0; #X connect 2 2 1 1; #X connect 6 0 2 0; #X connect 7 0 9 1; #X connect 9 0 1 0; #X connect 12 0 1 1; #X connect 13 0 9 0; #X connect 15 0 9 0; pd-list-abs_0.1/list-enumerate-help.pd0000644000076500007650000000176611516222410016446 0ustar hanshans#N canvas 0 26 540 454 10; #X obj 152 196 list-enumerate; #X obj 152 274 list trim; #X obj 152 254 list prepend add; #X text 41 39 [list-enumerate]; #X text 57 73 serialize a list and put numbers in front of every element ; #X msg 225 275 set; #X obj 152 158 t a b; #X msg 152 137 a b c d 0 1 2 3; #X obj 243 216 bng 15 250 50 0 empty empty EOL 17 7 1 10 -262144 -1 -1; #N canvas 416 170 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 95 OUTLET_0 list; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION serialize a list and put numbers in front of every element; #X text 12 75 INLET_0 anything; #X text 12 115 OUTLET_1 bang; #X restore 477 417 pd META; #X msg 152 303; #X connect 0 0 2 0; #X connect 0 1 8 0; #X connect 1 0 10 0; #X connect 2 0 1 0; #X connect 5 0 10 0; #X connect 6 0 0 0; #X connect 6 1 5 0; #X connect 7 0 6 0; pd-list-abs_0.1/list-abs-meta.pd0000644000076500007650000000045711465551717015242 0ustar hanshans#N canvas 10 10 200 200 10; #N canvas 20 20 420 300 META 0; #X text 10 30 NAME list-abs; #X text 10 50 AUTHOR Frank Barknecht; #X text 10 70 LICENSE SIBSD; #X text 10 90 DESCRIPTION a collection of objects for manipulating lists. Requires pd>=0.39; #X text 10 110 VERSION 0.1; #X restore 10 10 pd META; pd-list-abs_0.1/compare-any-help.pd0000644000076500007650000000252311516222410015713 0ustar hanshans#N canvas 0 26 528 377 10; #X msg 246 131 symbol x; #X msg 255 154 symbol y; #X msg 116 137 symbol x; #X msg 125 160 symbol y; #X obj 96 254 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1; #X msg 236 109 2.3; #X msg 106 114 2.3; #X msg 131 180 i; #X msg 140 201 j; #X msg 258 175 i; #X msg 264 196 j; #X obj 96 278 print; #X text 37 14 [compare-any]; #X text 81 37 Test if two anythings are the same. Out: 1 if equal \, 0 if not equal.; #X msg 96 92 1; #X msg 226 87 1; #X obj 96 231 compare-any; #X msg 221 66 0; #X msg 86 71 0; #N canvas 520 35 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 75 INLET_0 anything; #X text 12 95 INLET_1 anything; #X text 12 115 OUTLET_0 float; #X text 12 5 KEYWORDS control anything_op; #X text 12 45 DESCRIPTION test if two anythings are the same. Out: 1 if equal \, 0 if not equal; #X restore 474 347 pd META; #X connect 0 0 16 1; #X connect 1 0 16 1; #X connect 2 0 16 0; #X connect 3 0 16 0; #X connect 4 0 11 0; #X connect 5 0 16 1; #X connect 6 0 16 0; #X connect 7 0 16 0; #X connect 8 0 16 0; #X connect 9 0 16 1; #X connect 10 0 16 1; #X connect 14 0 16 0; #X connect 15 0 16 1; #X connect 16 0 4 0; #X connect 17 0 16 1; #X connect 18 0 16 0; pd-list-abs_0.1/list-onearg.pd0000644000076500007650000000130110755131206014775 0ustar hanshans#N canvas 160 304 587 350 10; #X obj 259 234 outlet; #X text 83 259 If the argument is not equal to 0 \, use it. Pd init arguments to 0 so unused arguments will be 0; #X obj 143 116 select 0; #X text 82 296 This is useful to have internals inited \, but not reset if there is no argument specified.; #X obj 143 190 select 0; #X text 275 172 if 2nd arg \, then use as default value; #X obj 143 20 inlet; #X obj 259 13 inlet; #X text 297 14 convenience inlet; #X obj 143 96 list append \$1; #X obj 143 169 list append \$2; #X obj 143 55 bang; #X connect 2 0 10 0; #X connect 2 1 0 0; #X connect 4 1 0 0; #X connect 6 0 11 0; #X connect 7 0 0 0; #X connect 9 0 2 0; #X connect 10 0 4 0; #X connect 11 0 9 0; pd-list-abs_0.1/list-equalize.pd0000644000076500007650000000036510755131205015351 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 139 43 inlet; #X obj 139 65 t a a; #X obj 139 166 list-math /; #X obj 211 93 list-accum; #X obj 139 227 outlet; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 1 1 3 0; #X connect 2 0 4 0; #X connect 3 0 2 1; pd-list-abs_0.1/list-sect-help.pd0000644000076500007650000000345611516222410015415 0ustar hanshans#N canvas 0 31 576 432 10; #X text 78 26 list-sect; #N canvas 269 263 450 300 sbow 0; #X obj 120 85 list prepend set; #X obj 120 109 list trim; #X obj 120 63 inlet; #X obj 120 131 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X restore 114 236 pd sbow; #X obj 114 120 t b b; #X obj 114 101 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 114 196 list-sect; #X obj 123 218 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X msg 172 167 5 4 foo 3 2; #X msg 114 144 1 2 3 4 foo bar 2; #X obj 114 318 list-unique; #N canvas 269 263 450 300 sbow 0; #X obj 120 85 list prepend set; #X obj 120 109 list trim; #X obj 120 63 inlet; #X obj 120 131 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 0 0; #X restore 114 361 pd sbow; #X obj 123 343 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 -1; #X msg 114 382; #X text 113 49 outputs the elements that are common to both input lists. Left inlet determines order and number of items in result. Duplicates are kept!; #X text 127 292 To remove duplicates use [list-unique]; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION outputs the elements that are common to both input lists; #X text 12 5 KEYWORDS control list_op; #X text 12 75 INLET_0 anything; #X text 12 95 INLET_1 anything; #X text 12 115 OUTLET_0 list float bang symbol pointer; #X restore 514 400 pd META; #X msg 114 261; #X connect 1 0 15 0; #X connect 2 0 7 0; #X connect 2 1 6 0; #X connect 3 0 2 0; #X connect 4 0 1 0; #X connect 5 0 1 0; #X connect 6 0 4 1; #X connect 7 0 4 0; #X connect 8 0 9 0; #X connect 9 0 11 0; #X connect 10 0 9 0; #X connect 15 0 8 0; pd-list-abs_0.1/list-rev-help.pd0000644000076500007650000000135011516222410015242 0ustar hanshans#N canvas 0 31 464 309 10; #X msg 156 76 1 2 3 4; #X obj 184 109 print Original; #X obj 156 199 list-rev; #X obj 184 164 print Reversed; #X obj 183 230 print Rev_again; #X text 127 35 list-rev: reverse a list's order.; #X obj 156 131 list-rev; #N canvas 472 161 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 65 INLET_0 anything; #X text 12 85 OUTLET_0 list; #X text 12 45 DESCRIPTION reverse a list's order; #X restore 393 268 pd META; #X connect 0 0 1 0; #X connect 0 0 6 0; #X connect 2 0 4 0; #X connect 6 0 2 0; #X connect 6 0 3 0; pd-list-abs_0.1/list-sub-help.pd0000644000076500007650000000125611516222410015244 0ustar hanshans#N canvas 0 31 450 300 10; #X obj 145 177 list-sub; #X msg 145 116 5 5 5 NOPE 5; #X obj 145 217 print; #X msg 196 141 1 2 3 0 -1; #X text 108 67 Substract two lists element by element; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION substract two lists element by element; #X text 12 65 INLET_0 list; #X text 12 85 INLET_1 list; #X text 12 105 OUTLET_0 list; #X text 12 125 AUTHOR Frank Barknecht; #X restore 389 266 pd META; #X connect 0 0 2 0; #X connect 1 0 0 0; #X connect 3 0 0 1; pd-list-abs_0.1/list-idx.pd0000644000076500007650000000047110755131205014314 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 122 108 inlet; #X obj 197 69 loadbang; #X obj 187 95 f \$1; #X obj 154 210 outlet; #X obj 187 47 inlet; #X obj 154 176 list split 1; #X obj 122 139 list-splat; #X connect 0 0 6 0; #X connect 1 0 2 0; #X connect 2 0 6 1; #X connect 4 0 2 0; #X connect 5 0 3 0; #X connect 6 1 5 0; pd-list-abs_0.1/last-x.pd0000644000076500007650000000041410755131206013765 0ustar hanshans#N canvas 417 318 464 379 10; #X obj 265 147 inlet; #X obj 179 149 inlet; #X obj 179 253 outlet; #X text 54 77 This is just a backwards compatibility wrapper around list-lastx; #X obj 179 206 list-lastx \$1; #X connect 0 0 4 1; #X connect 1 0 4 0; #X connect 4 0 2 0; pd-list-abs_0.1/list-group-help.pd0000644000076500007650000000242611516222410015607 0ustar hanshans#N canvas 0 26 706 457 10; #X msg 118 97 list a b; #X msg 132 122 list c d e f; #X msg 199 225 3; #X msg 152 175 list a b c d e; #X msg 152 196 list f g; #X text 55 45 list-group - group items into lists of the same size ; #X text 150 151 remaining items are stored and used for the next group: ; #X floatatom 209 245 5 0 0 0 - - -; #X floatatom 73 230 5 0 0 0 - - -; #X text 63 353 It's a clone of [zl group]; #X obj 118 296 print list-group; #X text 233 267 argument sets number of elements to group (default: 1); #X text 257 220 change group size (at least 1) - changing will also empty the internal buffer; #X obj 118 268 list-group 2; #X text 94 382 Also see; #X obj 161 382 list-iter; #N canvas 460 46 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 105 OUTLET_0 list; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 85 INLET_1 float; #X text 12 45 DESCRIPTION group items into lists of the same size; #X text 12 65 INLET_0 list; #X restore 577 387 pd META; #X connect 0 0 13 0; #X connect 1 0 13 0; #X connect 2 0 13 1; #X connect 3 0 13 0; #X connect 4 0 13 0; #X connect 7 0 13 1; #X connect 8 0 13 0; #X connect 13 0 10 0; pd-list-abs_0.1/list-fifo-help.pd0000644000076500007650000000322611516222410015375 0ustar hanshans#N canvas 0 26 587 530 10; #X msg 247 186 1 2 3 4 5; #X symbolatom 260 207 10 0 0 0 - - -; #X floatatom 273 224 5 0 0 0 - - -; #X obj 198 339 bng 15 250 50 0 empty empty EOL 17 7 1 10 -262144 -1 -1; #X text 59 38 [list-fifo]; #X text 97 64 [list-fifo] stores incoming (list-)messages and outputs them one by one on incoming bangs in the order they arrive like a FIFO: first in \, first out.; #X msg 295 274 bang; #X obj 140 305 list-fifo; #X text 82 439 2007 Frank Barknecht; #X msg 238 166 a b c; #X msg 140 149 bang; #X text 230 147 store lists or elements ("push"); #X text 111 125 trigger output ("pop"); #X text 277 255 clear stored list ("reset"); #N canvas 0 0 450 300 show 0; #X obj 60 48 inlet; #X obj 60 72 list prepend set; #X obj 60 97 list trim; #X obj 60 126 outlet; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 3 0; #X restore 140 364 pd show; #X msg 74 262 clear; #X msg 140 390 1 2 3 4 5; #N canvas 491 26 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 175 AUTHOR Frank Barknecht; #X text 12 195 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 135 OUTLET_0 list; #X text 12 95 INLET_1 anything; #X text 12 155 OUTLET_1 bang; #X text 12 5 KEYWORDS control list_op; #X text 12 45 DESCRIPTION store incoming (list-)messages and output them one by one on incoming bangs in the order they arrive; #X text 12 75 INLET_0 bang; #X text 12 115 INLET_2 bang; #X restore 528 500 pd META; #X connect 0 0 7 1; #X connect 1 0 7 1; #X connect 2 0 7 1; #X connect 6 0 7 2; #X connect 7 0 14 0; #X connect 7 1 3 0; #X connect 9 0 7 1; #X connect 10 0 7 0; #X connect 14 0 16 0; #X connect 15 0 7 0; pd-list-abs_0.1/list-emath-help.pd0000644000076500007650000000275511516222410015556 0ustar hanshans#N canvas 0 26 538 413 10; #X obj 87 209 print add; #X msg 87 138 5 5 5 5 x; #X text 79 22 list-emath: Do math on lists element by element; #X msg 350 141 0 1 2 3 4; #X msg 271 140 5 5 5 5 x; #X msg 88 256 5 5 5 5 x; #X msg 269 262 5 5 5 5 x; #X obj 271 211 print mult; #X obj 88 327 print sub; #X obj 269 333 print div; #X obj 269 294 list-emath /; #X obj 87 171 list-emath +; #X obj 271 173 list-emath *; #X obj 88 289 list-emath -; #X msg 348 263 0 1 x 3 4; #X msg 167 257 0 1 2 x 4; #X msg 166 139 0 1 2 x 4; #X text 80 55 Non-floats in second list will be replaced by 0 for + and - \, and by 1 for * and /.; #X msg 430 262 0 0 0 0 0; #X text 428 243 Just say no!; #X text 80 91 Symbols in first list will pass unchanged.; #X text 83 376 Also see list-add \, list-mult \, list-sub for shortcuts. ; #N canvas 416 170 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION do math on lists element by element; #X text 12 65 INLET_0 list; #X text 12 85 INLET_1 list; #X text 12 105 OUTLET_0 list; #X restore 483 386 pd META; #X connect 1 0 11 0; #X connect 3 0 12 1; #X connect 4 0 12 0; #X connect 5 0 13 0; #X connect 6 0 10 0; #X connect 10 0 9 0; #X connect 11 0 0 0; #X connect 12 0 7 0; #X connect 13 0 8 0; #X connect 14 0 10 1; #X connect 15 0 13 1; #X connect 16 0 11 1; #X connect 18 0 10 1; pd-list-abs_0.1/list-accum.pd0000644000076500007650000000075610755131205014626 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 212 193 f 0; #X obj 182 192 + 1; #X obj 182 114 list-drip; #X obj 212 168 0; #X obj 182 53 inlet; #X obj 182 81 t a b; #X obj 182 140 route float; #X obj 166 245 outlet; #X obj 166 220 f; #X text 116 23 list-accum: add all floats in a list; #X connect 0 0 1 1; #X connect 1 0 0 0; #X connect 1 0 8 1; #X connect 2 0 6 0; #X connect 2 1 8 0; #X connect 3 0 0 0; #X connect 4 0 5 0; #X connect 5 0 2 0; #X connect 5 1 3 0; #X connect 6 0 1 0; #X connect 8 0 7 0; pd-list-abs_0.1/list-map2-help.pd0000644000076500007650000002607311516222410015316 0ustar hanshans#N canvas 0 31 725 634 10; #X obj 135 300 spigot; #X obj 171 283 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1; #X obj 67 366 print MAIN; #X obj 381 329 print SERIALIZED; #X obj 323 358 print MAIN; #X msg 67 235 bang; #X msg 131 256 a b c; #X msg 323 224 bang; #X msg 72 427 0 1 2 3; #X obj 72 516 list trim; #X obj 72 496 list prepend set; #X obj 158 451 list append -|-; #X msg 227 521 set; #X msg 71 401 bang; #X obj 325 512 list trim; #X obj 325 492 list prepend set; #X msg 325 425 1 2 3 4 5; #X obj 323 292 list-map2; #X obj 411 292 +; #X msg 352 269 10 20 30 40; #X msg 323 248 1 2 3 4; #X msg 130 429 a b c d; #X obj 67 300 list-map2; #X obj 325 470 list-map2; #X obj 72 451 list-map2; #X msg 354 446 2 0; #X obj 397 470 *; #X text 64 57 Calls a user-defined operation for each pair of elements of two incoming lists and returns a list of the return values.; #X obj 125 339 print SERIALIZED_PAIRS; #X text 64 100 [list-map2] is a helper abstraction to make element-wise operations on two lists easy to patch. The basic idea is to bundle two list-serializers and a list-repacker into one object. Then you connect whatever operation should be applied on every pair of list items to the right outlet and send the modified items back to the right inlet. Here the modified elements get packed into a list again and sent to the left outlet of [list-map2].; #N canvas 239 121 843 692 more-examples 0; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-in1 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 366 91 graph; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-in2 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 508 91 graph; #X msg 68 83 bang; #N canvas 0 0 297 280 noise 0; #X obj 33 115 random 1000; #X obj 33 88 t b a; #X obj 33 143 / 500; #X obj 33 163 - 1; #X msg 33 44 64; #N canvas 0 0 450 300 countto 0; #X obj 163 151 f 0; #X obj 190 151 + 1; #X obj 163 109 until; #X msg 205 111 0; #X obj 163 180 outlet; #X obj 163 39 inlet; #X obj 163 87 t a b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X restore 33 66 pd countto; #X obj 33 21 inlet; #X obj 33 194 tabwrite \$0-in2; #X connect 0 0 2 0; #X connect 1 0 0 0; #X connect 1 1 7 1; #X connect 2 0 3 0; #X connect 3 0 7 0; #X connect 4 0 5 0; #X connect 5 0 1 0; #X connect 6 0 4 0; #X restore 508 52 pd noise; #X msg 508 28 make noise; #X msg 527 184 const 0; #X obj 527 280 s \$0-out; #X text 586 168 impulse; #X obj 149 164 list-map2; #N canvas 414 307 598 380 tabdump-ins 0; #X obj 187 213 list prepend; #X obj 278 213 t a; #X obj 125 254 list; #X obj 125 23 inlet; #X obj 125 279 outlet; #X msg 187 92 64; #N canvas 0 0 450 300 countto 0; #X obj 163 151 f 0; #X obj 190 151 + 1; #X obj 163 109 until; #X msg 205 111 0; #X obj 163 180 outlet; #X obj 163 39 inlet; #X obj 163 87 t a b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X restore 187 114 pd countto; #X obj 187 136 t a a; #X obj 320 213 list prepend; #X obj 411 213 t a; #X obj 320 190 tabread \$0-in2; #X obj 187 190 tabread \$0-in1; #X obj 187 256 list; #X obj 187 281 outlet; #X obj 125 46 t b b b b b; #X connect 0 0 2 1; #X connect 0 0 1 0; #X connect 1 0 0 1; #X connect 2 0 4 0; #X connect 3 0 14 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 11 0; #X connect 7 1 10 0; #X connect 8 0 9 0; #X connect 8 0 12 1; #X connect 9 0 8 1; #X connect 10 0 8 0; #X connect 11 0 0 0; #X connect 12 0 13 0; #X connect 14 0 2 0; #X connect 14 1 12 0; #X connect 14 2 5 0; #X connect 14 3 0 1; #X connect 14 4 8 1; #X restore 149 134 pd tabdump-ins; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-out-max 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 363 174 graph; #X obj 149 192 list prepend 0; #X obj 527 225 s \$0-in1; #X msg 588 184 const 0 \, 16 1; #X obj 231 165 max; #X obj 527 249 s \$0-in2; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-out-min 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 364 274 graph; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-out-mul 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 364 398 graph; #X obj 150 277 list-map2; #X obj 150 305 list prepend 0; #X obj 150 327 s \$0-out-min; #X obj 232 278 min; #X obj 150 390 list-map2; #X obj 150 418 list prepend 0; #X obj 232 391 *; #X obj 150 440 s \$0-out-mul; #X obj 149 214 s \$0-out-max; #N canvas 414 307 598 380 tabdump-ins 0; #X obj 187 213 list prepend; #X obj 278 213 t a; #X obj 125 254 list; #X obj 125 23 inlet; #X obj 125 279 outlet; #X msg 187 92 64; #N canvas 0 0 450 300 countto 0; #X obj 163 151 f 0; #X obj 190 151 + 1; #X obj 163 109 until; #X msg 205 111 0; #X obj 163 180 outlet; #X obj 163 39 inlet; #X obj 163 87 t a b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X restore 187 114 pd countto; #X obj 187 136 t a a; #X obj 320 213 list prepend; #X obj 411 213 t a; #X obj 320 190 tabread \$0-in2; #X obj 187 190 tabread \$0-in1; #X obj 187 256 list; #X obj 187 281 outlet; #X obj 125 46 t b b b b b; #X connect 0 0 2 1; #X connect 0 0 1 0; #X connect 1 0 0 1; #X connect 2 0 4 0; #X connect 3 0 14 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 11 0; #X connect 7 1 10 0; #X connect 8 0 9 0; #X connect 8 0 12 1; #X connect 9 0 8 1; #X connect 10 0 8 0; #X connect 11 0 0 0; #X connect 12 0 13 0; #X connect 14 0 2 0; #X connect 14 1 12 0; #X connect 14 2 5 0; #X connect 14 3 0 1; #X connect 14 4 8 1; #X restore 150 252 pd tabdump-ins; #N canvas 414 307 598 380 tabdump-ins 0; #X obj 187 213 list prepend; #X obj 278 213 t a; #X obj 125 254 list; #X obj 125 23 inlet; #X obj 125 279 outlet; #X msg 187 92 64; #N canvas 0 0 450 300 countto 0; #X obj 163 151 f 0; #X obj 190 151 + 1; #X obj 163 109 until; #X msg 205 111 0; #X obj 163 180 outlet; #X obj 163 39 inlet; #X obj 163 87 t a b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X restore 187 114 pd countto; #X obj 187 136 t a a; #X obj 320 213 list prepend; #X obj 411 213 t a; #X obj 320 190 tabread \$0-in2; #X obj 187 190 tabread \$0-in1; #X obj 187 256 list; #X obj 187 281 outlet; #X obj 125 46 t b b b b b; #X connect 0 0 2 1; #X connect 0 0 1 0; #X connect 1 0 0 1; #X connect 2 0 4 0; #X connect 3 0 14 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 11 0; #X connect 7 1 10 0; #X connect 8 0 9 0; #X connect 8 0 12 1; #X connect 9 0 8 1; #X connect 10 0 8 0; #X connect 11 0 0 0; #X connect 12 0 13 0; #X connect 14 0 2 0; #X connect 14 1 12 0; #X connect 14 2 5 0; #X connect 14 3 0 1; #X connect 14 4 8 1; #X restore 150 365 pd tabdump-ins; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-out-xfade 64 float 0; #X coords 0 1 63 -1 128 60 1; #X restore 365 534 graph; #X obj 151 582 list-map2; #X obj 151 610 list prepend 0; #N canvas 414 307 598 380 tabdump-ins 0; #X obj 187 213 list prepend; #X obj 278 213 t a; #X obj 125 254 list; #X obj 125 23 inlet; #X obj 125 279 outlet; #X msg 187 92 64; #N canvas 0 0 450 300 countto 0; #X obj 163 151 f 0; #X obj 190 151 + 1; #X obj 163 109 until; #X msg 205 111 0; #X obj 163 180 outlet; #X obj 163 39 inlet; #X obj 163 87 t a b; #X connect 0 0 1 0; #X connect 0 0 4 0; #X connect 1 0 0 1; #X connect 2 0 0 0; #X connect 3 0 0 1; #X connect 5 0 6 0; #X connect 6 0 2 0; #X connect 6 1 3 0; #X restore 187 114 pd countto; #X obj 187 136 t a a; #X obj 320 213 list prepend; #X obj 411 213 t a; #X obj 320 190 tabread \$0-in2; #X obj 187 190 tabread \$0-in1; #X obj 187 256 list; #X obj 187 281 outlet; #X obj 125 46 t b b b b b; #X connect 0 0 2 1; #X connect 0 0 1 0; #X connect 1 0 0 1; #X connect 2 0 4 0; #X connect 3 0 14 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 11 0; #X connect 7 1 10 0; #X connect 8 0 9 0; #X connect 8 0 12 1; #X connect 9 0 8 1; #X connect 10 0 8 0; #X connect 11 0 0 0; #X connect 12 0 13 0; #X connect 14 0 2 0; #X connect 14 1 12 0; #X connect 14 2 5 0; #X connect 14 3 0 1; #X connect 14 4 8 1; #X restore 151 529 pd tabdump-ins; #X obj 151 632 s \$0-out-xfade; #X obj 154 487 hsl 64 15 0 1 0 0 empty empty crossfade_0-1 -2 -8 1 10 -262144 -1 -1 0 1; #X obj 151 506 t b a; #N canvas 0 0 450 300 xfade 0; #X obj 54 131 -; #X obj 54 155 * 0.5; #X obj 54 182 +; #X obj 104 48 inlet; #X obj 54 48 inlet; #X obj 54 206 outlet; #X obj 54 81 unpack 0 0; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 5 0; #X connect 3 0 1 1; #X connect 4 0 6 0; #X connect 6 0 0 0; #X connect 6 1 0 1; #X connect 6 1 2 1; #X restore 234 582 pd xfade; #X obj 258 520 hsl 64 15 0 1 0 0 empty empty crossfade_0-1 -2 -8 1 10 -262144 -1 -1 0 1; #X obj 255 539 t b a; #X obj 298 640 list-inter; #X text 272 622 this is similar to:; #X connect 2 0 9 0; #X connect 2 0 27 0; #X connect 2 0 28 0; #X connect 2 0 32 0; #X connect 4 0 3 0; #X connect 5 0 6 0; #X connect 5 0 12 0; #X connect 5 0 15 0; #X connect 8 0 11 0; #X connect 8 1 14 0; #X connect 9 0 8 0; #X connect 9 1 8 1; #X connect 11 0 26 0; #X connect 13 0 12 0; #X connect 14 0 8 2; #X connect 18 0 19 0; #X connect 18 1 21 0; #X connect 19 0 20 0; #X connect 21 0 18 2; #X connect 22 0 23 0; #X connect 22 1 24 0; #X connect 23 0 25 0; #X connect 24 0 22 2; #X connect 27 0 18 0; #X connect 27 1 18 1; #X connect 28 0 22 0; #X connect 28 1 22 1; #X connect 30 0 31 0; #X connect 30 1 36 0; #X connect 31 0 33 0; #X connect 32 0 30 0; #X connect 32 1 30 1; #X connect 34 0 35 0; #X connect 35 0 32 0; #X connect 35 1 36 1; #X connect 36 0 30 2; #X connect 37 0 38 0; #X connect 38 0 30 0; #X connect 38 1 36 1; #X restore 69 575 pd more-examples; #X text 67 217 bang will redo the last two lists; #X text 324 391 If the second list is too short \, its final element will be repeated:; #X text 65 22 [list-map2] - map an operation on element pairs from two lists.; #X text 67 606 2007 Frank Barknecht; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 165 AUTHOR Frank Barknecht; #X text 12 185 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 85 INLET_1 anything; #X text 12 125 OUTLET_0 list; #X text 12 45 DESCRIPTION map an operation on element pairs from two lists; #X text 12 65 INLET_0 bang anything; #X text 12 105 INLET_2 anything; #X text 12 145 OUTLET_1 list; #X restore 663 601 pd META; #X msg 325 534; #X msg 72 538; #X msg 67 256 1 2 3 4; #X connect 0 0 22 2; #X connect 1 0 0 1; #X connect 5 0 22 0; #X connect 6 0 22 1; #X connect 7 0 17 0; #X connect 8 0 24 0; #X connect 9 0 37 0; #X connect 10 0 9 0; #X connect 11 0 24 2; #X connect 12 0 37 0; #X connect 13 0 24 0; #X connect 14 0 36 0; #X connect 15 0 14 0; #X connect 16 0 23 0; #X connect 17 0 4 0; #X connect 17 1 3 0; #X connect 17 1 18 0; #X connect 18 0 17 2; #X connect 19 0 17 1; #X connect 20 0 17 0; #X connect 21 0 24 1; #X connect 22 0 2 0; #X connect 22 1 0 0; #X connect 22 1 28 0; #X connect 23 0 15 0; #X connect 23 1 26 0; #X connect 24 0 10 0; #X connect 24 1 11 0; #X connect 25 0 23 1; #X connect 26 0 23 2; #X connect 38 0 22 0; pd-list-abs_0.1/prepent.pd0000644000076500007650000000034210755131205014231 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 90 88 inlet; #X obj 90 205 outlet; #X obj 90 132 list prepend \$1; #X obj 90 157 list trim; #X obj 190 87 inlet; #X connect 0 0 2 0; #X connect 2 0 3 0; #X connect 3 0 1 0; #X connect 4 0 2 1; pd-list-abs_0.1/list-harmonic-mean-help.pd0000644000076500007650000001243111516222410017166 0ustar hanshans#N struct 1033-dial float y; #N canvas 0 31 566 571 10; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 193 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 112 73 + 1; #X obj 112 53 random 10; #X obj 134 151 random 10; #X obj 134 171 + 1; #X connect 0 0 8 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 7 0; #X connect 6 0 3 0; #X connect 7 0 6 0; #X connect 8 0 9 0; #X connect 9 0 2 0; #X restore 153 305 pd randlist; #X msg 153 283 bang; #X floatatom 98 439 5 0 0 1 harmonic_mean - -; #X msg 153 331 3 5 3 3 8; #X msg 98 228 1 2 3 4; #X msg 98 254 any symbols 1 2 3 4 are ignored; #X text 96 146 Non-floats in a list are silently dropped.; #X text 96 119 where n is the total number of floats in a list.; #N canvas 318 53 648 574 graphical-mean 0; #N canvas 0 0 450 300 randlist 0; #X obj 134 129 until; #X msg 246 151 set; #X msg 134 213 add2 \$1; #X obj 112 101 t b f b; #X obj 135 249 outlet; #X obj 112 31 inlet; #X obj 134 151 random 100; #X msg 112 59 10; #X obj 134 191 / 10; #X obj 134 170 + 1; #X connect 0 0 6 0; #X connect 1 0 4 0; #X connect 2 0 4 0; #X connect 3 0 4 0; #X connect 3 1 0 0; #X connect 3 2 1 0; #X connect 5 0 7 0; #X connect 6 0 9 0; #X connect 7 0 3 0; #X connect 8 0 2 0; #X connect 9 0 8 0; #X restore 79 388 pd randlist; #X msg 79 366 bang; #X obj 79 447 list prepend 0; #X obj 79 500 s \$0-tab; #N canvas 0 0 450 300 (subpatch) 0; #X array \$0-tab 10 float 0; #X coords 0 10 9 0 200 140 1; #X restore 75 152 graph; #N canvas 0 0 916 918 \$0-c 0; #X scalar 1033-dial 0 \;; #X coords 0 0 200 140 200 140 1; #X restore 75 152 pd \$0-c; #N canvas 0 0 503 429 create 0; #X msg 242 258 traverse pd-\$1 \, bang; #X obj 242 238 symbol \$0-c; #X msg 107 79 0; #X obj 242 278 pointer; #X msg 243 178 clear; #X obj 243 205 s pd-\$0-c; #X obj 107 114 t a b b; #X obj 107 50 loadbang; #X obj 107 326 outlet; #X obj 107 302 append \$0-dial y; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 2 0 6 0; #X connect 3 0 9 1; #X connect 4 0 5 0; #X connect 6 0 9 0; #X connect 6 1 1 0; #X connect 6 2 4 0; #X connect 7 0 2 0; #X connect 9 0 8 0; #X restore 440 364 pd create; #X obj 339 127 metro 50; #X obj 339 102 tgl 15 0 empty empty show-mean 17 7 1 10 -258699 -262144 -1 0 1; #N canvas 473 338 450 300 countto 0; #X obj 131 154 f 0; #X obj 156 153 + 1; #X msg 174 113 0; #X obj 131 183 outlet; #X obj 131 59 inlet; #X obj 131 116 until; #X obj 131 96 t a b; #X connect 0 0 1 0; #X connect 0 0 3 0; #X connect 1 0 0 1; #X connect 2 0 0 1; #X connect 4 0 6 0; #X connect 5 0 0 0; #X connect 6 0 5 0; #X connect 6 1 2 0; #X restore 362 195 pd countto; #X obj 362 219 tabread \$0-tab; #X obj 362 249 list prepend; #X obj 452 249 t a; #X msg 362 175 10; #X obj 339 148 t b b b; #X obj 339 274 list; #X obj 79 344 loadbang; #X text 77 30 Switch on the "show"-metro and play with the values in the array.; #N canvas 336 319 712 355 \$0-dial 0; #X obj 19 119 outlet; #X obj 19 86 route change; #X obj 19 62 struct \$0-dial float y; #X obj 229 62 drawpolygon 900 2 0 y 200 y; #X connect 1 0 0 0; #X connect 2 0 1 0; #X restore 425 340 pd \$0-dial; #X msg 213 469 bounds 0 10 9 0; #X obj 213 449 loadbang; #X obj 339 388 set \$0-dial y; #X floatatom 339 339 5 0 0 0 - - -; #X msg 92 469 const 5; #N canvas 0 0 299 354 scale 0; #X msg 74 83 10 \$1; #X obj 74 107 -; #X obj 74 158 * 140; #X obj 74 134 / 20; #X obj 74 49 inlet; #X obj 74 182 outlet; #X connect 0 0 1 0; #X connect 1 0 3 0; #X connect 2 0 5 0; #X connect 3 0 2 0; #X connect 4 0 0 0; #X restore 339 363 pd scale; #X obj 339 313 list-harmonic-mean; #X msg 79 414 5.7 6 8.1 9.9 3.1 6.5 9.7 5.8 5.6 0.9; #X connect 0 0 26 0; #X connect 1 0 0 0; #X connect 2 0 3 0; #X connect 6 0 21 1; #X connect 7 0 14 0; #X connect 8 0 7 0; #X connect 9 0 10 0; #X connect 10 0 11 0; #X connect 11 0 12 0; #X connect 11 0 15 1; #X connect 12 0 11 1; #X connect 13 0 9 0; #X connect 14 0 15 0; #X connect 14 1 13 0; #X connect 14 2 11 1; #X connect 15 0 25 0; #X connect 16 0 1 0; #X connect 18 0 21 1; #X connect 19 0 3 0; #X connect 20 0 19 0; #X connect 22 0 24 0; #X connect 23 0 3 0; #X connect 24 0 21 0; #X connect 25 0 22 0; #X connect 26 0 2 0; #X restore 98 459 pd graphical-mean; #X obj 98 405 list-harmonic-mean; #X text 86 22 [list-harmonic-mean]; #X text 96 51 Calculates the harmonic mean of a list (of floats) according to:; #X msg 154 357 0 1 2 3 4; #X text 234 357 0 makes the harmonic mean limit to 0; #X text 95 171 If a 0 occurs \, the harmonic mean is set to 0 \, because if one value approaches zero \, the harmonic mean limits to zero as well.; #X obj 185 493 list-geometric-mean; #X obj 184 515 list-mean; #X text 97 494 More means:; #X text 114 91 harmonic mean = n / (1/f0 + 1/f1 + 1/f2 + ... + 1/fn) ; #N canvas 491 26 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 105 AUTHOR Frank Barknecht; #X text 12 125 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 65 INLET_0 list; #X text 12 85 OUTLET_0 float; #X text 12 45 DESCRIPTION Calculates the harmonic mean of a list of floats; #X restore 498 530 pd META; #X connect 0 0 3 0; #X connect 1 0 0 0; #X connect 3 0 9 0; #X connect 4 0 9 0; #X connect 5 0 9 0; #X connect 9 0 2 0; #X connect 12 0 9 0; pd-list-abs_0.1/list-minmax.pd0000644000076500007650000000223010755131205015014 0ustar hanshans#N canvas 385 204 676 470 10; #X obj 128 97 list-drip; #X obj 128 120 route float; #X obj 159 256 f; #X obj 106 394 outlet; #X obj 165 369 f; #X obj 165 396 outlet; #X obj 106 305 t b b; #X obj 106 10 inlet; #X obj 106 366 f; #N canvas 0 0 450 300 once 0; #X obj 110 75 inlet; #X obj 105 187 spigot 1; #X obj 110 104 t b f; #X msg 125 151 0; #X msg 165 99 1; #X obj 165 63 inlet; #X obj 102 219 outlet; #X connect 0 0 2 0; #X connect 1 0 6 0; #X connect 2 0 3 0; #X connect 2 1 1 0; #X connect 3 0 1 1; #X connect 4 0 1 1; #X connect 5 0 4 0; #X restore 260 183 pd once; #X obj 275 258 f; #X obj 244 257 max; #X obj 128 256 min; #X obj 128 150 t a a a; #X obj 106 30 t b a b; #X text 321 183 prime [min] and [max] with first item once; #X connect 0 0 1 0; #X connect 1 0 13 0; #X connect 2 0 12 1; #X connect 4 0 5 0; #X connect 6 0 8 0; #X connect 6 1 4 0; #X connect 7 0 14 0; #X connect 8 0 3 0; #X connect 9 0 11 1; #X connect 9 0 12 1; #X connect 10 0 11 1; #X connect 11 0 10 0; #X connect 11 0 4 1; #X connect 12 0 2 0; #X connect 12 0 8 1; #X connect 13 0 12 0; #X connect 13 1 11 0; #X connect 13 2 9 0; #X connect 14 0 6 0; #X connect 14 1 0 0; #X connect 14 2 9 1; pd-list-abs_0.1/list-inter-many-help.pd0000644000076500007650000000574511516222410016545 0ustar hanshans#N canvas 0 31 579 616 10; #X obj 195 419 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 234 419 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X obj 274 419 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X floatatom 195 393 5 0 0 0 - - -; #X floatatom 234 393 5 0 0 0 - - -; #X floatatom 274 393 5 0 0 0 - - -; #X obj 195 371 unpack 0 0 0 0; #X obj 313 420 vsl 15 128 0 10 0 0 empty empty empty 0 -8 0 8 -262144 -1 -1 0 1; #X floatatom 313 394 5 0 0 0 - - -; #X obj 195 342 list-inter-many; #N canvas 239 261 368 386 randlist 0; #X msg 141 73 4; #X obj 141 103 until; #X obj 141 130 random 100; #X obj 141 157 / 10; #X obj 141 199 list prepend; #X obj 232 200 t a; #X obj 118 242 list; #X obj 118 47 t b b b; #X obj 118 24 inlet; #X obj 118 318 outlet; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 3 0; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 4 0 6 1; #X connect 5 0 4 1; #X connect 6 0 9 0; #X connect 7 0 6 0; #X connect 7 1 0 0; #X connect 7 2 4 1; #X connect 8 0 7 0; #X restore 385 252 pd randlist; #X msg 295 307 clear; #X msg 295 285 print; #X msg 385 230 add random list; #X obj 195 261 / 100; #X floatatom 195 238 5 0 0 0 - - -; #X obj 385 207 until; #X msg 385 184 4; #X obj 244 262 line; #X floatatom 244 291 5 0 0 0 - - -; #X msg 244 239 0 \, 3 2000; #X msg 385 404; #X text 390 382 textfile contents:; #X msg 339 346 set; #X text 117 581 Also see:; #X obj 193 582 list-inter; #X text 97 16 [list-inter-many]; #X obj 385 274 list prepend add; #X obj 385 297 list trim; #X text 94 73 Inlets:; #X text 94 41 Elementwise linear interpolation between several float lists stored in a [textfile] object internally.; #X text 98 188 Outlet: interpolated list.; #X text 108 151 1) [textfile] inlet. Use the selector "add" to add lists to the interpolation space; #X text 108 96 0) float: distance between lists. Values between 0 and 1 will interpolate the first two lists \, values between 1 and 2 interpolate the second with the third list and so on.; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 135 AUTHOR Frank Barknecht; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 115 OUTLET_0 list; #X text 12 75 INLET_0 float; #X text 12 95 INLET_1 print add clear; #X text 12 45 DESCRIPTION elementwise linear interpolation between several float lists; #X restore 517 587 pd META; #X connect 3 0 0 0; #X connect 4 0 1 0; #X connect 5 0 2 0; #X connect 6 0 3 0; #X connect 6 1 4 0; #X connect 6 2 5 0; #X connect 6 3 8 0; #X connect 8 0 7 0; #X connect 9 0 6 0; #X connect 10 0 27 0; #X connect 11 0 9 1; #X connect 11 0 23 0; #X connect 12 0 9 1; #X connect 13 0 10 0; #X connect 14 0 9 0; #X connect 15 0 14 0; #X connect 16 0 13 0; #X connect 17 0 16 0; #X connect 18 0 9 0; #X connect 18 0 19 0; #X connect 20 0 18 0; #X connect 23 0 21 0; #X connect 27 0 28 0; #X connect 28 0 9 1; #X connect 28 0 21 0; pd-list-abs_0.1/list-shellsort.pd0000644000076500007650000001257711201077563015564 0ustar hanshans#N canvas 631 361 591 470 10; #X obj 26 -25 inlet; #X obj 26 296 outlet; #N canvas 658 194 260 268 \$0-gap-loop 0; #X obj 96 66 / 2; #X obj 96 89 int; #X obj 34 122 until; #X obj 34 49 t b f; #X obj 148 105 sel 0; #X obj 96 142 t f f; #X obj 59 159 f; #X obj 34 26 inlet; #X obj 59 183 outlet; #X connect 0 0 1 0; #X connect 1 0 5 0; #X connect 2 0 6 0; #X connect 3 0 2 0; #X connect 3 1 0 0; #X connect 4 0 2 1; #X connect 5 0 6 1; #X connect 5 1 4 0; #X connect 6 0 0 0; #X connect 6 0 8 0; #X connect 7 0 3 0; #X restore 95 150 pd \$0-gap-loop; #X obj 49 65 list-len; #N canvas 584 66 450 300 \$0-increment-loop 0; #X obj 40 26 inlet; #X obj 163 27 inlet; #X obj 40 83 until; #X obj 40 53 t b f; #X obj 99 100 f; #X obj 130 101 + 1; #X obj 136 157 moses; #X obj 214 175 t b; #X obj 136 193 outlet; #X connect 0 0 3 0; #X connect 1 0 6 1; #X connect 2 0 4 0; #X connect 3 0 2 0; #X connect 3 1 4 1; #X connect 4 0 5 0; #X connect 4 0 6 0; #X connect 5 0 4 1; #X connect 6 0 8 0; #X connect 6 1 7 0; #X connect 7 0 2 1; #X restore 95 195 pd \$0-increment-loop; #X obj 95 125 t f f; #X obj 95 173 t f f; #N canvas 147 172 708 735 \$0-test-swap-loop 0; #X obj 102 40 inlet; #X obj 319 46 inlet; #X obj 102 63 -; #X obj 101 444 list-idx; #X obj 162 444 list-idx; #X obj 304 124 +; #X obj 101 494 >; #X obj 101 518 sel 0 1; #X obj 332 564 f; #X obj 365 564 f; #X obj 297 593 list-swap; #X obj 297 563 list; #X obj 427 646 list; #X obj 102 159 until; #X obj 164 222 moses 0; #X obj 164 197 f; #X obj 197 197 -; #X obj 102 84 t b f; #X obj 164 265 t b b; #X obj 191 287 s \$0-stop-loop; #X obj 165 126 r \$0-stop-loop; #X obj 164 307 s \$0-bang-list; #X obj 101 582 t b b; #X obj 128 604 s \$0-stop-loop; #X obj 101 625 s \$0-bang-list; #X obj 427 576 r \$0-bang-list; #X obj 427 669 outlet; #X obj 277 499 t b b; #X obj 102 180 t b b; #X obj 102 381 list; #X obj 102 400 t a a; #X obj 448 599 r \$0-list-init; #X obj 318 474 r \$0-list-init; #X obj 123 331 r \$0-list-init; #X text 316 25 gap; #X obj 203 244 s \$0-idx; #X obj 331 85 r \$0-idx; #X obj 347 498 r \$0-idx; #X obj 146 382 r \$0-idx; #X obj 304 145 s \$0-idx+gap; #X obj 380 531 r \$0-idx+gap; #X obj 207 407 r \$0-idx+gap; #X obj 466 620 r \$0-list-swap; #X obj 297 621 s \$0-list-swap; #X obj 137 355 r \$0-list-swap; #N canvas 468 185 584 529 swap? 0; #X obj 40 52 inlet; #X obj 153 52 inlet; #X obj 361 50 inlet; #X obj 40 272 spigot 1; #X obj 256 272 spigot; #X obj 361 224 unpack 0 0; #X msg 361 178 1 0; #X msg 412 196 0 1; #X obj 463 93 select 0; #X obj 361 71 select asc desc; #X obj 40 437 outlet; #X obj 153 437 outlet; #X obj 256 300 swap; #X obj 153 271 spigot 1; #X obj 317 273 spigot; #X connect 0 0 3 0; #X connect 0 0 4 0; #X connect 1 0 13 0; #X connect 1 0 14 0; #X connect 2 0 9 0; #X connect 3 0 10 0; #X connect 4 0 12 0; #X connect 5 0 3 1; #X connect 5 0 13 1; #X connect 5 1 4 1; #X connect 5 1 14 1; #X connect 6 0 5 0; #X connect 7 0 5 0; #X connect 8 0 6 0; #X connect 8 1 7 0; #X connect 9 0 6 0; #X connect 9 1 7 0; #X connect 9 2 8 0; #X connect 12 0 10 0; #X connect 12 1 11 0; #X connect 13 0 11 0; #X connect 14 0 12 1; #X restore 101 471 pd swap?; #X obj 164 470 r \$0-direction; #X connect 0 0 2 0; #X connect 1 0 2 1; #X connect 1 0 5 1; #X connect 1 0 16 1; #X connect 2 0 17 0; #X connect 3 0 45 0; #X connect 4 0 45 1; #X connect 5 0 39 0; #X connect 6 0 7 0; #X connect 7 0 22 0; #X connect 7 1 27 0; #X connect 7 2 22 0; #X connect 8 0 10 1; #X connect 9 0 10 2; #X connect 10 0 11 1; #X connect 10 0 43 0; #X connect 11 0 10 0; #X connect 12 0 26 0; #X connect 13 0 28 0; #X connect 14 0 18 0; #X connect 14 1 35 0; #X connect 15 0 16 0; #X connect 15 0 14 0; #X connect 16 0 15 1; #X connect 17 0 13 0; #X connect 17 1 15 1; #X connect 18 0 21 0; #X connect 18 1 19 0; #X connect 20 0 13 1; #X connect 22 0 24 0; #X connect 22 1 23 0; #X connect 25 0 12 0; #X connect 27 0 11 0; #X connect 27 1 9 0; #X connect 27 1 8 0; #X connect 28 0 29 0; #X connect 28 1 15 0; #X connect 29 0 30 0; #X connect 30 0 3 0; #X connect 30 1 4 0; #X connect 31 0 12 1; #X connect 32 0 11 1; #X connect 33 0 29 1; #X connect 36 0 5 0; #X connect 37 0 8 1; #X connect 38 0 3 1; #X connect 40 0 9 1; #X connect 41 0 4 1; #X connect 42 0 12 1; #X connect 44 0 29 1; #X connect 45 0 6 0; #X connect 45 1 6 1; #X connect 46 0 45 2; #X restore 95 221 pd \$0-test-swap-loop; #X obj 26 274 list; #X obj 49 103 sel 0 1; #X obj 72 43 s \$0-list-init; #X obj 99 242 r \$0-list-init; #X obj 26 22 t b a a; #X obj 26 -1 list-filter; #N canvas 0 0 677 293 \$0-checknum 0; #X obj 131 95 route float; #X msg 131 116 1; #X obj 205 149 print; #X msg 205 119 list-sort: Warning: dropped a non-number from list; #X obj 131 70 inlet; #X obj 131 149 outlet; #X connect 0 0 1 0; #X connect 0 1 3 0; #X connect 1 0 5 0; #X connect 3 0 2 0; #X connect 4 0 0 0; #X restore 115 -1 pd \$0-checknum; #X text 46 343 2008 Matt Barber; #X obj 452 140 loadbang; #X obj 387 52 inlet; #X obj 387 201 list append \$1; #X obj 387 171 t b a; #X obj 387 229 s \$0-direction; #X connect 0 0 13 0; #X connect 2 0 6 0; #X connect 3 0 9 0; #X connect 4 0 7 0; #X connect 5 0 2 0; #X connect 5 1 4 1; #X connect 6 0 4 0; #X connect 6 1 7 1; #X connect 7 0 8 1; #X connect 8 0 1 0; #X connect 9 2 5 0; #X connect 11 0 8 1; #X connect 12 0 8 0; #X connect 12 1 3 0; #X connect 12 2 10 0; #X connect 13 0 12 0; #X connect 13 1 14 0; #X connect 14 0 13 1; #X connect 16 0 18 0; #X connect 17 0 19 0; #X connect 18 0 20 0; #X connect 19 0 18 0; #X connect 19 1 18 1; pd-list-abs_0.1/list-iter-help.pd0000644000076500007650000000223311516222410015412 0ustar hanshans#N canvas 0 32 584 444 10; #X msg 118 97 list a b; #X msg 132 122 list c d e f; #X msg 192 225 3; #X msg 152 155 list a b c d e; #X msg 152 176 list f g; #X floatatom 202 245 5 0 0 0 - - -; #X floatatom 73 230 5 0 0 0 - - -; #X text 55 45 list-iter - group lists into sub-lists with size-limit ; #X text 63 353 It's a clone of [zl iter]; #X text 94 382 Also see; #X obj 161 382 list-group; #X obj 118 296 print list-iter; #X obj 118 268 list-iter 2; #X text 241 224 change size limit (must be at least 1); #X text 233 267 argument sets size limit. Default: 1; #N canvas 510 66 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 105 OUTLET_0 list; #X text 12 45 DESCRIPTION group lists into sub-lists with size-limit ; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 float; #X restore 527 417 pd META; #X connect 0 0 12 0; #X connect 1 0 12 0; #X connect 2 0 12 1; #X connect 3 0 12 0; #X connect 4 0 12 0; #X connect 5 0 12 1; #X connect 6 0 12 0; #X connect 12 0 11 0; pd-list-abs_0.1/list-emath.pd0000644000076500007650000000223510755131205014626 0ustar hanshans#N canvas 256 135 500 518 10; #X obj 59 31 inlet; #X obj 287 28 inlet; #X obj 59 437 outlet; #X obj 78 138 list-drip; #X obj 264 131 list; #X obj 178 234 list-dripslow; #X obj 78 287 route float; #X obj 178 261 route float; #X obj 78 162 t a b b; #X obj 78 379 list prepend; #X obj 176 379 t a; #X obj 59 404 list; #X obj 136 57 s \$0-reset; #X obj 157 343 r \$0-reset; #X obj 59 58 t b a b b; #X obj 341 49 loadbang; #X obj 341 99 select + - * /; #X msg 341 129 0; #X msg 387 128 1; #X obj 341 76 symbol \$1; #X obj 325 232 f; #X obj 78 322 \$1; #X connect 0 0 14 0; #X connect 1 0 4 1; #X connect 3 0 8 0; #X connect 4 0 5 1; #X connect 5 0 7 0; #X connect 6 0 21 0; #X connect 6 1 9 0; #X connect 7 0 21 1; #X connect 8 0 6 0; #X connect 8 1 5 0; #X connect 8 2 20 0; #X connect 9 0 10 0; #X connect 9 0 11 1; #X connect 10 0 9 1; #X connect 11 0 2 0; #X connect 13 0 9 1; #X connect 14 0 11 0; #X connect 14 1 3 0; #X connect 14 2 4 0; #X connect 14 3 12 0; #X connect 15 0 19 0; #X connect 16 0 17 0; #X connect 16 1 17 0; #X connect 16 2 18 0; #X connect 16 3 18 0; #X connect 17 0 20 1; #X connect 18 0 20 1; #X connect 19 0 16 0; #X connect 20 0 21 1; #X connect 21 0 9 0; pd-list-abs_0.1/list-harmonic-mean.pd0000644000076500007650000000302410755131206016244 0ustar hanshans#N canvas 355 173 457 428 10; #X obj 127 69 inlet; #X obj 127 377 outlet; #X obj 146 138 list-drip; #X obj 146 164 route float; #X obj 127 314 f; #N canvas 425 298 450 300 count 0; #X obj 133 59 b; #X obj 133 35 inlet; #X obj 183 35 inlet; #X obj 164 111 + 1; #X obj 133 133 outlet; #X msg 183 71 1; #X obj 133 110 f 1; #X connect 0 0 6 0; #X connect 1 0 0 0; #X connect 2 0 5 0; #X connect 3 0 6 1; #X connect 5 0 6 1; #X connect 6 0 3 0; #X connect 6 0 4 0; #X restore 238 225 pd count; #X obj 146 189 t a b; #X obj 127 105 t b a b b; #X obj 146 250 pow -1; #X obj 127 342 *; #N canvas 370 313 660 345 sum-reci 0; #X obj 84 40 inlet; #X obj 183 40 inlet; #X obj 135 249 outlet; #X obj 168 218 f; #X obj 135 217 +; #X obj 183 183 0; #X obj 135 184 pow -1; #X obj 84 149 select 0; #X obj 219 249 outlet; #X obj 84 122 spigot 1; #X msg 135 90 1; #X msg 84 176 0; #X text 270 253 if a 0 occurs \, the harmonic mean always is 0 \, too! ; #X connect 0 0 9 0; #X connect 1 0 5 0; #X connect 1 0 10 0; #X connect 3 0 4 1; #X connect 4 0 2 0; #X connect 4 0 3 0; #X connect 5 0 4 1; #X connect 6 0 4 0; #X connect 7 0 11 0; #X connect 7 1 6 0; #X connect 9 0 7 0; #X connect 10 0 9 1; #X connect 11 0 9 1; #X connect 11 0 8 0; #X restore 146 225 pd sum-reci; #X connect 0 0 7 0; #X connect 2 0 3 0; #X connect 3 0 6 0; #X connect 4 0 9 0; #X connect 5 0 9 1; #X connect 6 0 10 0; #X connect 6 1 5 0; #X connect 7 0 4 0; #X connect 7 1 2 0; #X connect 7 2 10 1; #X connect 7 3 5 1; #X connect 8 0 4 1; #X connect 9 0 1 0; #X connect 10 0 8 0; #X connect 10 1 4 1; pd-list-abs_0.1/list-clip-help.pd0000644000076500007650000000143711516222410015403 0ustar hanshans#N canvas 0 0 450 300 10; #X obj 122 170 list-clip 2 8; #X obj 122 204 print; #X text 101 47 list-clip:; #X obj 189 49 clip; #X text 231 50 for lists; #X msg 122 102 1 2 3 SYMBOL 4 5 6 7 8 9 10; #X floatatom 165 144 5 0 0 0 - - -; #X floatatom 208 145 5 0 0 0 - - -; #N canvas 416 170 494 396 META 0; #X text 12 5 KEYWORDS control list_op; #X text 12 25 LICENSE SIBSD; #X text 12 145 AUTHOR Frank Barknecht; #X text 12 125 OUTLET_0 list; #X text 12 165 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION clip for lists; #X text 12 85 INLET_1 float; #X text 12 105 INLET_2 float; #X text 12 65 INLET_0 anything; #X restore 387 267 pd META; #X connect 0 0 1 0; #X connect 5 0 0 0; #X connect 6 0 0 1; #X connect 7 0 0 2; pd-list-abs_0.1/list-idx-help.pd0000644000076500007650000000163211516222410015235 0ustar hanshans#N canvas 0 31 434 313 10; #X obj 136 121 t b f; #X symbolatom 136 222 10 0 0 0 - - -; #X obj 136 78 hradio 15 1 0 8 empty empty empty 0 -6 0 8 -262144 -1 -1 0; #X msg 136 166 a b c d e f g h; #X obj 136 193 list-idx 2; #X text 86 52 list-idx: Get element at position idx.; #X floatatom 136 102 5 0 0 0 - - -; #X obj 136 245 print; #N canvas 444 31 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 125 AUTHOR Frank Barknecht; #X text 12 145 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 5 KEYWORDS control list_op; #X text 12 65 INLET_0 anything; #X text 12 85 INLET_1 float; #X text 12 105 OUTLET_0 symbol float pointer; #X text 12 45 DESCRIPTION get element at position idx; #X restore 377 287 pd META; #X connect 0 0 3 0; #X connect 0 1 4 1; #X connect 1 0 7 0; #X connect 2 0 6 0; #X connect 3 0 4 0; #X connect 4 0 1 0; #X connect 6 0 0 0; pd-list-abs_0.1/list-shellsort-help.pd0000644000076500007650000000322511516222410016470 0ustar hanshans#N canvas 0 31 681 593 10; #X text 59 525 2008 Matt Barber; #X obj 188 357 hradio 15 1 0 2 empty empty empty 0 -8 0 10 -262144 -1 -1 0; #X msg 232 357 asc; #X msg 270 357 desc; #X obj 93 205 list-random 100 10; #X obj 125 256 prepent set; #X msg 93 179 bang; #X obj 93 230 t b a; #X msg 93 291 72 65 75 88 61 50 93 18 88 80; #X text 279 324 non-floats are removed with a warning.; #X msg 135 324 100 2 wrong type 3; #X obj 93 441 prepent set; #X text 66 80 Inlets: 1) list to sort; #X text 66 134 Argument:; #X text 137 134 ; #X text 65 40 Sort a list of floats into ascending order using a Shell sort. Non-numbers are dropped.; #X obj 355 541 list-sort; #X text 299 510 Alternative implementation available in:; #X text 121 98 2) direction: 0 or asc for ascending \, 1 or desc for descending (default asc); #X obj 35 11 list-shellsort; #X obj 93 396 list-shellsort; #N canvas 506 181 494 396 META 0; #X text 12 25 LICENSE SIBSD; #X text 12 155 HELP_PATCH_AUTHORS Frank Barknecht. "pd meta" information added by Jonathan Wilkes for Pd version 0.42.; #X text 12 45 DESCRIPTION sort a list of floats into ascending order using a Shell sort. Non-numbers are dropped; #X text 12 5 KEYWORDS control list_op; #X text 12 75 INLET_0 list; #X text 12 95 INLET_1 float asc desc; #X text 12 135 AUTHOR Matt Barber; #X text 12 115 OUTLET_0 list; #X restore 611 564 pd META; #X msg 93 470; #X connect 1 0 20 1; #X connect 2 0 20 1; #X connect 3 0 20 1; #X connect 4 0 7 0; #X connect 5 0 8 0; #X connect 6 0 4 0; #X connect 7 0 8 0; #X connect 7 1 5 0; #X connect 8 0 20 0; #X connect 10 0 20 0; #X connect 11 0 22 0; #X connect 20 0 11 0;