Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • jwilkes/purr-data
  • aggraef/purr-data
  • samthursfield/purr-data
  • prakhar/purr-data
  • yadu05/purr-data
  • NegiAkash890/purr-data
  • prateekpardeshi/purr-data
  • Shruti3004/purr-data
  • hidimpu/purr-data
  • Atseosi/purr-data
  • piyushjasaiwal/purr-data
  • deveshprasad/purr-data
  • skm_7/purr-data
  • sankt/purr-data
  • ashim_tom/purr-data
  • dineshsoni02/purr-data
  • chaitanya1-coder/purr-data
  • Nitish0007/purr-data
  • nitin/purr-data
  • shuvam09/purr-data
  • gabrielabittencourt/purr-data
  • sivasai/purr-data
  • flachyjoe/purr-data
  • ishankaler/purr-data
  • prateek/purr-data
  • RukshanJS/purr-data
  • rajatshrm648/purr-data
  • Srashti/purr-data
  • Paarth/purr-data
  • AniruddhaGawali/purr-data
  • brittneyjuliet/purr-data
  • prakharagarwal1/purr-data
  • Shreyanshpaliwalcmsmn/purr-data
  • k_amrut/purr-data
  • AyushAnand/purr-data
  • Va16hav07/purr-data
36 results
Show changes
Showing
with 0 additions and 3027 deletions
#N canvas 427 33 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header czero_rev~ 3 12
0 18 -204280 -1 0;
#X obj 0 303 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 484 243 494 384 META 0;
#X text 12 195 LIBRARY internal;
#X text 12 235 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 215 AUTHOR Miller Puckette;
#X text 12 275 HELP_PATCH_AUTHORS Updated for Pd version-0.38. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS signal filter;
#X text 12 25 LICENSE SIBSD;
#X text 12 75 INLET_0 signal set clear;
#X text 12 95 INLET_1 signal;
#X text 12 115 INLET_2 signal;
#X text 12 135 INLET_3 signal;
#X text 12 155 OUTLET_0 signal;
#X text 12 175 OUTLET_1 signal;
#X text 12 255 RELEASE_DATE 1997;
#X text 12 45 DESCRIPTION complex one-zero (non-recursive) "reverse"
filter \, raw;
#X restore 500 597 pd META;
#X obj 0 440 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 502 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 559 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 207 322 428 309 Related_objects 0;
#X obj 74 60 rzero~;
#X obj 25 80 cpole~;
#X obj 25 60 rpole~;
#X obj 123 60 rzero_rev~;
#X obj 74 80 czero~;
#X obj 123 80 czero_rev~;
#X text 201 60 real;
#X text 200 81 complex;
#X text 22 44 1-pole;
#X text 71 44 1-zero;
#X text 121 44 1-zero \, reversed;
#X text 47 29 summary of raw filters:;
#X text 19 184 User-friendly Filters;
#X obj 22 213 lop~;
#X obj 73 212 hip~;
#X obj 125 213 bp~;
#X obj 170 214 vcf~;
#X obj 23 274 biquad~;
#X text 19 250 Other Objects;
#X text 19 113 Pd also provides a suite of user-friendly filters. This
and other raw filters are provided for situations which the user-friendly
ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
for an introduction to the necessary theory.;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [czero_rev~] Related Objects;
#X restore 101 597 pd Related_objects;
#X obj 78 449 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 312 cnv 17 3 45 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 312 signal;
#X text 98 449 signal;
#N canvas 3 174 550 380 test 0;
#X obj 152 296 env~ 16384;
#X floatatom 152 320 5 0 0 0 - - -, f 5;
#X floatatom 499 76 4 -1000 1000 0 - - -, f 4;
#X obj 349 324 dac~;
#X obj 349 288 *~;
#X obj 390 70 cos~;
#X floatatom 298 8 5 0 0 0 - - -, f 5;
#X obj 298 31 phasor~;
#X floatatom 398 14 5 0 0 0 - - -, f 5;
#X obj 397 39 / 1000;
#X obj 423 71 -~ 0.25;
#X obj 423 93 cos~;
#X obj 499 95 / 1000;
#X obj 389 121 *~;
#X obj 423 121 *~;
#X obj 228 296 env~ 16384;
#X floatatom 228 320 5 0 0 0 - - -, f 5;
#X obj 381 284 dbtorms;
#X floatatom 382 264 5 0 0 0 - - -, f 5;
#X obj 117 89 phasor~;
#X floatatom 115 60 5 0 0 0 - - -, f 5;
#X text 77 13 Stuff to test it:;
#X obj 131 149 cpole~;
#X obj 241 262 *~ -1;
#X obj 21 261 env~ 16384;
#X floatatom 21 285 5 0 0 0 - - -, f 5;
#X obj 50 312 env~ 16384;
#X floatatom 50 336 5 0 0 0 - - -, f 5;
#X obj 138 181 cpole~;
#X obj 146 216 czero_rev~;
#X obj 154 264 czero_rev~;
#X msg 204 103 clear;
#X obj 262 50 cos~;
#X obj 261 83 *~ 0.02;
#X obj 193 50 sig~ 1.1;
#X obj 448 296 *~;
#X connect 0 0 1 0;
#X connect 2 0 12 0;
#X connect 4 0 3 0;
#X connect 5 0 13 0;
#X connect 6 0 7 0;
#X connect 7 0 32 0;
#X connect 8 0 9 0;
#X connect 9 0 7 1;
#X connect 10 0 11 0;
#X connect 11 0 14 0;
#X connect 12 0 14 1;
#X connect 12 0 13 1;
#X connect 13 0 22 2;
#X connect 13 0 28 2;
#X connect 13 0 29 2;
#X connect 13 0 30 2;
#X connect 14 0 22 3;
#X connect 14 0 23 0;
#X connect 14 0 29 3;
#X connect 15 0 16 0;
#X connect 17 0 4 1;
#X connect 17 0 35 1;
#X connect 18 0 17 0;
#X connect 19 0 22 0;
#X connect 19 0 24 0;
#X connect 19 0 35 0;
#X connect 20 0 19 0;
#X connect 22 0 28 0;
#X connect 22 1 28 1;
#X connect 23 0 28 3;
#X connect 23 0 30 3;
#X connect 24 0 25 0;
#X connect 26 0 27 0;
#X connect 28 0 26 0;
#X connect 28 0 29 0;
#X connect 28 1 29 1;
#X connect 29 0 30 0;
#X connect 29 1 30 1;
#X connect 30 0 0 0;
#X connect 30 0 4 0;
#X connect 30 1 15 0;
#X connect 31 0 22 0;
#X connect 31 0 28 0;
#X connect 32 0 33 0;
#X connect 33 0 5 0;
#X connect 33 0 10 0;
#X connect 34 0 33 0;
#X connect 35 0 3 1;
#X restore 101 568 pd test;
#X text 98 327 clear;
#X text 98 342 set;
#X obj 78 362 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 362 signal;
#X obj 78 387 cnv 17 3 17 empty \$0-pddp.cnv.let.2 2 5 9 0 16 -228856
-162280 0;
#X text 98 387 signal;
#X obj 78 412 cnv 17 3 17 empty \$0-pddp.cnv.let.3 3 5 9 0 16 -228856
-162280 0;
#X text 98 412 signal;
#X obj 78 474 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 474 signal;
#X obj 474 10 czero_rev~;
#X text 198 196 where y[n] is the output \, x[n] the input \, and a[n]
the filter coefficient (all complex numbers). The filter is always
stable.;
#X text 261 176 y[n] = - a[n] * x[n] + x[n-1];
#X text 199 245 The transfer function is H(Z) = -a + Z^-1.;
#X obj 52 127 osc~ 100;
#X msg 60 152 clear;
#X obj 86 203 sig~;
#X obj 120 225 sig~;
#X obj 156 245 sig~;
#X msg 67 178 set 0.6 0.8;
#X obj 51 268 czero_rev~ 0.9 0.4;
#X text 11 23 complex one-zero (non-recursive) "reverse" filter \,
raw;
#X text 158 312 - signal to filter (real part).;
#X text 158 327 - clear internal state to zero.;
#X text 158 342 - set internal state (real & imaginary parts).;
#X text 158 362 - signal to filter ( imaginary part ).;
#X text 158 387 - filter coefficient ( real part ).;
#X text 158 412 - filter coefficient ( imaginary part ).;
#X text 157 521 - (optional) filter coefficient (real part).;
#X text 157 536 - (optional) filter coefficient (imaginary part).;
#X text 80 521 1) float;
#X text 80 536 2) float;
#X text 93 57 [czero_rev~] filters a complex audio signal (first two
inlets) via a one-zero filter \, whose coefficients are controlled
by creation arguments or by another complex audio signal (remaining
two inlets). The impulse response is that of "rzero" reversed in time.
;
#X text 201 155 The action of [czero_rev~] is:;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 476 56 pddp/dsp;
#X connect 27 0 33 0;
#X connect 28 0 33 0;
#X connect 29 0 33 1;
#X connect 30 0 33 2;
#X connect 31 0 33 3;
#X connect 32 0 33 0;
#N canvas 427 33 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header czero~ 3 12 0 18
-204280 -1 0;
#X obj 0 288 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 482 237 491 389 META 0;
#X text 12 185 LIBRARY internal;
#X text 12 225 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 205 AUTHOR Miller Puckette;
#X text 12 265 HELP_PATCH_AUTHORS Updated for Pd version-0.38. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS signal filter;
#X text 12 45 DESCRIPTION complex one-zero (non-recursive) filter \,
raw;
#X text 12 65 INLET_0 signal clear set;
#X text 12 85 INLET_1 signal;
#X text 12 105 INLET_2 signal;
#X text 12 125 INLET_3 signal;
#X text 12 145 OUTLET_0 signal;
#X text 12 165 OUTLET_1 signal;
#X text 12 245 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 425 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 487 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 543 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 214 316 428 309 Related_objects 0;
#X obj 75 61 rzero~;
#X obj 26 81 cpole~;
#X obj 26 61 rpole~;
#X obj 124 61 rzero_rev~;
#X obj 75 81 czero~;
#X obj 124 81 czero_rev~;
#X text 202 61 real;
#X text 201 82 complex;
#X text 23 45 1-pole;
#X text 72 45 1-zero;
#X text 122 45 1-zero \, reversed;
#X text 48 30 summary of raw filters:;
#X text 22 185 User-friendly Filters;
#X obj 25 214 lop~;
#X obj 76 213 hip~;
#X obj 128 214 bp~;
#X obj 173 215 vcf~;
#X obj 26 275 biquad~;
#X text 22 251 Other Objects;
#X text 22 114 Pd also provides a suite of user-friendly filters. This
and other raw filters are provided for situations which the user-friendly
ones can't handle. See Chapter 8 of http://crca.ucsd.edu/~msp/techniques
for an introduction to the necessary theory.;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 8 2 [czero~] Related Objects;
#X restore 102 597 pd Related_objects;
#X obj 78 434 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 297 cnv 17 3 45 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 297 signal;
#X text 98 434 signal;
#N canvas 21 185 498 375 test 0;
#X obj 88 282 env~ 16384;
#X floatatom 88 306 5 0 0 0 - - -, f 5;
#X floatatom 420 107 4 -1000 1000 0 - - -, f 4;
#X obj 285 310 dac~;
#X obj 285 274 *~;
#X obj 311 101 cos~;
#X floatatom 237 46 5 0 0 0 - - -, f 5;
#X obj 265 98 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 237 96 *~;
#X obj 237 69 phasor~;
#X floatatom 318 52 5 0 0 0 - - -, f 5;
#X obj 318 75 / 1000;
#X obj 344 102 -~ 0.25;
#X obj 344 124 cos~;
#X obj 420 126 / 1000;
#X obj 310 152 *~;
#X obj 344 152 *~;
#X obj 164 282 env~ 16384;
#X floatatom 164 306 5 0 0 0 - - -, f 5;
#X obj 317 270 dbtorms;
#X floatatom 318 250 5 0 0 0 - - -, f 5;
#X obj 181 206 czero~;
#X floatatom 137 118 4 -1000 1000 0 - - -, f 4;
#X obj 28 112 cos~;
#X obj 48 71 phasor~;
#X floatatom 51 46 5 0 0 0 - - -, f 5;
#X obj 61 113 -~ 0.25;
#X obj 61 135 cos~;
#X obj 137 137 / 1000;
#X obj 27 163 *~;
#X obj 61 163 *~;
#X text 150 13 Stuff to test it:;
#X connect 0 0 1 0;
#X connect 2 0 14 0;
#X connect 4 0 3 0;
#X connect 4 0 3 1;
#X connect 5 0 15 0;
#X connect 6 0 9 0;
#X connect 7 0 8 1;
#X connect 8 0 21 0;
#X connect 9 0 8 0;
#X connect 10 0 11 0;
#X connect 11 0 5 0;
#X connect 11 0 12 0;
#X connect 12 0 13 0;
#X connect 13 0 16 0;
#X connect 14 0 16 1;
#X connect 14 0 15 1;
#X connect 15 0 21 2;
#X connect 16 0 21 3;
#X connect 17 0 18 0;
#X connect 19 0 4 1;
#X connect 20 0 19 0;
#X connect 21 0 0 0;
#X connect 21 0 4 0;
#X connect 21 1 17 0;
#X connect 22 0 28 0;
#X connect 23 0 29 0;
#X connect 24 0 26 0;
#X connect 24 0 23 0;
#X connect 25 0 24 0;
#X connect 26 0 27 0;
#X connect 27 0 30 0;
#X connect 28 0 30 1;
#X connect 28 0 29 1;
#X connect 29 0 21 0;
#X connect 30 0 21 1;
#X restore 102 552 pd test;
#X text 98 312 clear;
#X text 98 327 set;
#X obj 78 347 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 347 signal;
#X obj 78 372 cnv 17 3 17 empty \$0-pddp.cnv.let.2 2 5 9 0 16 -228856
-162280 0;
#X text 98 372 signal;
#X obj 78 397 cnv 17 3 17 empty \$0-pddp.cnv.let.3 3 5 9 0 16 -228856
-162280 0;
#X text 98 397 signal;
#X obj 78 459 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 459 signal;
#X obj 42 111 osc~ 100;
#X msg 50 136 clear;
#X obj 69 187 sig~;
#X obj 96 209 sig~;
#X obj 126 229 sig~;
#X msg 57 162 set 0.6 0.8;
#X obj 41 252 czero~ 0.9 0.4;
#X obj 496 12 czero~;
#X text 179 152 The action of czero~ is:;
#X text 238 173 y[n] = x[n] - a[n] * x[n-1];
#X text 176 193 where y[n] is the output \, x[n] the input \, and a[n]
the filter coefficient (all complex numbers). The filter is always
stable.;
#X text 175 248 The transfer function is H(Z) = 1 - aZ^-1.;
#X text 11 23 complex one-zero (non-recursive) filter \, raw;
#X text 168 297 - signal to filter (real part).;
#X text 168 312 - clear internal state to zero.;
#X text 168 327 - set internal state (real & imaginary parts).;
#X text 168 347 - signal to filter ( imaginary part ).;
#X text 168 372 - filter coefficient ( real part ).;
#X text 168 397 - filter coefficient ( imaginary part ).;
#X text 167 506 - (optional) filter coefficient (real part).;
#X text 167 521 - (optional) filter coefficient (imaginary part).;
#X text 80 506 1) float;
#X text 80 521 2) float;
#X text 84 53 [czero~] filters a complex audio signal (first two inlets)
via a one-zero filter \, whose coefficients are controlled by creation
arguments or by another complex audio signal (remaining two inlets).
;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 485 50 pddp/dsp;
#X obj 100 572 pddp/pddplink ../3.audio.examples/H12.peaking.pd -text
doc/3.audio.examples/H12.peaking.pd;
#X connect 23 0 29 0;
#X connect 24 0 29 0;
#X connect 25 0 29 1;
#X connect 26 0 29 2;
#X connect 27 0 29 3;
#X connect 28 0 29 0;
#N canvas 426 36 555 619 10;
#X declare;
#X declare;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header declare 3 12 0 18
-204280 -1 0;
#X obj 0 105 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 483 286 494 344 META 0;
#X text 12 65 LIBRARY internal;
#X text 12 105 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 85 AUTHOR Miller Puckette;
#X text 12 145 HELP_PATCH_AUTHORS Updated for Pd version 0.41. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 45 DESCRIPTION set environment for loading patch;
#X text 12 125 RELEASE_DATE 1997;
#X text 12 5 KEYWORDS control pd_op;
#X restore 500 597 pd META;
#X obj 0 134 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 164 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 386 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 215 523 428 103 Related_objects 0;
#X obj 15 34 import;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [declare] Related Objects;
#X restore 101 597 pd Related_objects;
#X obj 494 12 declare;
#X text 98 109 (none);
#X text 98 139 (none);
#X text 164 291 -lib;
#X text 164 307 -stdlib;
#X text 164 255 -path;
#X text 164 271 -stdpath;
#X text 262 255 add to search path \, relative to the patch;
#X text 262 291 load a library \, relative to the patch;
#X text 262 308 load a library \, relative to Pd;
#X text 161 333 (for any of these you may use a full pathname such
as "/tmp/dir" or \, in Windows \, "C:/garbage" instead of a relative
path).;
#X text 262 272 add to search path \, relative to Pd;
#X text 98 482 WARNING: you might want to avoid putting "declare" statements
inside abstractions \, as their effects will extend to the calling
patch. As of version 0.41 \, "declare path" is ignored inside abstractions
\, although \, probably unwisely \, "-stdpath" takes effect (on the
calling patch as well as the abstraction.);
#X text 98 561 BUG: The name "-stdpath" is confusing \, as it has a
quite different effect from "-stdpath" on the pd command line.;
#X text 11 23 set environment for loading patch;
#X text 139 69 NEEDS AN EXAMPLE;
#X text 165 185 - the [declare] object adds one or more directories
to the search path \, and/or pre-loads one or more libraries ("extensions")
to Pd in preparation for opening the patch from a file. Usage is "declare
[-flag value] [-flag value] ..." where the flag can be:;
#X text 97 400 If you put abstractions and/or other supporting files
in a subdirectory "more" \, you can put an object \, "declare -path
more" to make sure Pd sees them when the patch is loaded. Or \, if
you have zexy installed in the directory extra/zexy (in the Pd installation")
you can get it using "declare -stdpath extra/zexy".;
#X text 80 185 n) symbol atom;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#N canvas 430 34 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header delay 3 12 0 18
-204280 -1 0;
#X obj 0 200 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 482 240 494 386 META 1;
#X text 12 145 LIBRARY internal;
#X text 12 185 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 45 LICENSE SIBSD;
#X text 12 165 AUTHOR Miller Puckette;
#X text 12 225 HELP_PATCH_AUTHORS This help patch was updated for Pd
version 0.35 test 28 by Dave Sabine as part of a project called pddp
proposed by Krzysztof Czaja to build comprehensive documentation for
Pd. Jonathan Wilkes revised the patch to conform to the PDDP template
for Pd version 0.42.;
#X text 12 65 DESCRIPTION bang after time delay;
#X text 12 5 ALIAS del;
#X text 12 85 INLET_0 float bang stop;
#X text 12 105 INLET_1 float;
#X text 12 125 OUTLET_0 bang;
#X text 12 25 KEYWORDS control time bang_op;
#X text 12 205 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 393 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 446 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 488 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 219 337 428 291 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 42 37 timer;
#X obj 8 37 pipe;
#X obj 80 37 metro;
#X obj 119 37 makenote;
#X obj 180 87 delwrite~;
#X text 4 208 The best places to find information about Pd's libraries
is:;
#X text 4 230 www.puredata.org and click on "Downloads" then "Software"
;
#X text 4 251 iem.kug.ac.at/pdb/;
#X text 5 112 Externals;
#X text 5 159 Externals are offered in Pd only if you have downloaded
and properly installed the appropriate library. These objects may or
may not exist in a single library.;
#X text 7 62 Audio Objects;
#X obj 10 87 vd~;
#X obj 47 87 delread~;
#X obj 113 89 delwrite~;
#X text 7 1 [delay] Related Objects;
#X obj 12 134 nop~;
#X obj 48 134 z~;
#X obj 78 133 t3_delay;
#X obj 138 133 idelay~;
#X obj 192 133 delay~;
#X restore 101 597 pd Related_objects;
#X obj 78 209 cnv 17 3 145 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 402 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 360 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 359 float;
#X obj 452 12 delay;
#X text 492 12 or;
#X obj 518 11 del;
#X obj 100 102 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 100 150 delay 2000;
#X obj 100 173 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 98 253 bang;
#X text 98 313 stop;
#X text 168 359 - a float to the right inlet sets the delay time (in
milliseconds).;
#X text 98 336 list;
#X text 98 401 bang;
#X msg 168 101 stop;
#X msg 122 101 500;
#X floatatom 157 128 0 0 0 0 - - -;
#X text 188 129 <- scroll to change delay time in milliseconds;
#X text 168 401 - [delay] only outputs a bang. It cannot be used like
an "echo" or to delay messages other than bang. For that purpose \,
you should explore [pipe].;
#N canvas 106 287 428 250 A_delay_based_metronome 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 19 55 Let's assume for a moment that Miller had forgotten to
build the [metro] object. (I know that sounds absurd \, but for the
sake of example...);
#X text 19 104 [delay] could be used to create a metronome as follows.
;
#X obj 58 197 bng 15 50 10 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 58 175 delay 1000;
#X msg 22 135 bang;
#X msg 58 135 stop;
#X obj 260 176 metro 1000;
#X obj 260 197 bng 15 50 10 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 260 157 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0
1;
#X floatatom 317 155 5 0 0 0 - - -, f 5;
#X floatatom 115 154 5 0 0 0 - - -, f 5;
#X text 152 175 is the same as;
#X text 19 36 A makeshift [metro];
#X text 7 1 [delay] A Metronome Built with [delay];
#X connect 3 0 5 0;
#X connect 4 0 3 0;
#X connect 5 0 4 0;
#X connect 6 0 4 0;
#X connect 7 0 8 0;
#X connect 9 0 7 0;
#X connect 10 0 7 1;
#X connect 11 0 4 1;
#X restore 101 550 pd A_delay_based_metronome;
#N canvas 103 173 428 389 Random_Impulse_Generator 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 21 35 Some users might be familiar with SC (SuperCollider)
by James McCartney. For more info about SC \, visit www.audiosynth.com.
Anyways...SC has a unit generator called "DUST". Dust will produce
random impulses at a specified "density". I believe that Dust was given
its name because it creates a sound that is similar to actual dust
on old vinyl LP's -- you know that old crackling sound like Rice Krispies.
;
#X text 20 143 The idea is quite simple. If you want a "very dusty"
sound \, you make the density quite high...if you want a "slightly
dusty" sound \, you make the density quite low.;
#X obj 22 299 delay;
#X obj 22 321 bng 15 50 10 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 22 235 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X text 20 188 Dust.ar(2) in SC will produce 2 dusty impulses randomly
per second. In the example below \, you'll see a version of this process
created using Pd's delay object.;
#X obj 22 278 random 500;
#X obj 22 257 metro 500;
#X floatatom 92 236 5 0 0 0 - - -, f 5;
#X text 20 343 Also note that this example merely approximates the
output of SC's "Dust" object.;
#X text 130 236 low numbers produce a very "dusty" output.;
#X text 130 248 high numbers produce a slightly "dusty" output.;
#X text 7 1 [delay] A Random Impulse Generator using [delay];
#X connect 3 0 4 0;
#X connect 5 0 8 0;
#X connect 7 0 3 0;
#X connect 8 0 7 0;
#X connect 9 0 8 1;
#X connect 9 0 7 1;
#X restore 101 572 pd Random_Impulse_Generator;
#X text 168 313 - causes [delay] to cancel its scheduled output.;
#X text 168 336 - a list of floats will be truncated to the first element.
;
#X text 80 465 1) float;
#X text 97 54 The [delay] object sends a bang to its outlet after a
delay (in milliseconds) \, specified by its right inlet or its creation
argument.;
#X text 168 253 - a bang to the left inlet will output a bang after
the prescribed time (set either at the right inlet creation argument).
In the above example \, you should notice a delay of 2 seconds \, then
a bang at the outlet.;
#X text 168 208 - if a float is sent to the left inlet \, [delay] will
set the delay time equal to that number (milliseconds) and schedule
the outgoing bang.;
#X text 98 492 [delay] accepts only ONE bang at a time. It cannot process
multiple delays. In other words \, sending a "bang" to a [delay] which
is already set will reschedule its output \, cancelling the old one.
;
#X text 168 465 - (optional) initial delay time (in milliseconds).
;
#X text 98 208 float;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 298 550 pddp/pddplink ../2.control.examples/07.time.pd;
#X text 11 23 bang after time delay;
#X connect 15 0 16 0;
#X connect 16 0 17 0;
#X connect 23 0 16 0;
#X connect 24 0 16 0;
#X connect 25 0 16 1;
#N canvas 428 33 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header delread~ 3 12 0
18 -204280 -1 0;
#X obj 0 292 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 484 286 494 344 META 0;
#X text 12 105 LIBRARY internal;
#X text 12 145 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 165 RELEASE_DATE 2009-06-12;
#X text 12 25 LICENSE SIBSD;
#X text 12 125 AUTHOR Miller Puckette;
#X text 12 185 HELP_PATCH_AUTHORS Updated for Pd version 0.33. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS signal nonlocal time;
#X text 12 45 DESCRIPTION read a signal from a delay line;
#X text 12 85 OUTLET_0 signal;
#X text 12 65 INLET_0 float;
#X restore 500 597 pd META;
#X obj 0 384 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 421 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 479 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X obj 78 301 cnv 17 3 75 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#N canvas 216 491 428 139 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 19 78 Control objects for delays:;
#X obj 22 105 delay;
#X obj 67 105 pipe;
#X obj 22 42 delwrite~ help;
#X obj 127 42 vd~ help;
#X text 7 1 [delread~] Related Objects;
#X restore 101 597 pd Related_objects;
#X obj 78 393 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 393 signal;
#X floatatom 299 169 0 0 0 0 - - -;
#X text 340 168 input to delay line;
#X obj 299 193 sig~;
#X floatatom 112 122 0 0 0 0 - - -;
#X text 139 122 float input (delay time in ms);
#X obj 112 217 snapshot~;
#X floatatom 112 241 0 0 0 0 - - -;
#X obj 123 173 loadbang;
#X obj 123 195 metro 200;
#X text 98 300 float;
#X text 98 320 list;
#X text 98 339 Note: If the specified delay time is longer than the
size of the delay line or less than zero it is clipped to the length
of the delay line.;
#X text 98 483 You can use more than one [delread~] object for the
same delay line.;
#X obj 485 10 delread~;
#X obj 299 218 delwrite~ delread_ex 1000;
#X obj 112 148 delread~ delread_ex 1000;
#X text 11 23 read a signal from a delay line;
#X text 168 300 - a float sets the delay time (in milliseconds).;
#X text 168 320 - lists are truncated to the first element.;
#X text 168 393 - the delayed signal.;
#X text 168 440 - name of delay line.;
#X text 168 455 - (optional) initial delay time (ms).;
#X text 80 455 2) float;
#X text 98 511 Note: if the [delwrite~] runs after the [delread~] the
minimum delay is actually one DSP period \, not zero.;
#X text 80 440 1) symbol atom;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 474 58 pddp/dsp;
#X obj 98 542 pddp/pddplink ../3.audio.examples/G01.delay.pd -text
doc/3.audio.examples/G01.delay.pd;
#X obj 98 557 pddp/pddplink ../3.audio.examples/G02.delay.loop.pd -text
doc/3.audio.examples/G02.delay.loop.pd;
#X obj 98 572 pddp/pddplink ../3.audio.examples/G05.execution.order.pd
-text doc/3.audio.examples/G05.execution.order.pd;
#X connect 11 0 13 0;
#X connect 13 0 25 0;
#X connect 14 0 26 0;
#X connect 16 0 17 0;
#X connect 18 0 19 0;
#X connect 19 0 16 0;
#X connect 26 0 16 0;
#N canvas 431 33 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header delwrite~ 3 12 0
18 -204280 -1 0;
#X obj 0 268 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 489 284 494 344 META 0;
#X text 12 85 LIBRARY internal;
#X text 12 125 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 145 RELEASE_DATE 2009-06-12;
#X text 12 25 LICENSE SIBSD;
#X text 12 105 AUTHOR Miller Puckette;
#X text 12 165 HELP_PATCH_AUTHORS Updated for Pd version 0.33. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS signal nonlocal;
#X text 12 45 DESCRIPTION write a signal in a delay line;
#X text 12 65 INLET_0 signal;
#X restore 500 597 pd META;
#X obj 0 321 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 350 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 429 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X obj 78 277 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#N canvas 219 490 428 139 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 19 79 Control objects for delays:;
#X obj 22 106 delay;
#X obj 67 106 pipe;
#X obj 22 43 delread~ delwrite_ex;
#X obj 157 43 vd~ delwrite_ex;
#X text 7 2 [delwrite~] Related Objects;
#X restore 101 597 pd Related_objects;
#X floatatom 90 97 0 0 0 0 - - -;
#X text 119 96 input to delay line;
#X obj 90 121 sig~;
#X floatatom 282 63 0 0 0 0 - - -;
#X obj 282 168 snapshot~;
#X floatatom 282 192 0 0 0 0 - - -;
#X obj 293 112 loadbang;
#X obj 293 134 metro 200;
#X obj 479 10 delwrite~;
#X obj 90 146 delwrite~ delwrite_ex 1000;
#X obj 282 86 delread~ delwrite_ex 1000;
#X floatatom 356 110 0 0 0 0 - - -;
#X obj 357 168 snapshot~;
#X floatatom 357 192 0 0 0 0 - - -;
#X obj 356 133 delread~ delwrite_ex 500;
#X text 98 326 (none);
#X text 98 276 signal;
#X text 168 276 - the signal is read by all [delread~] and [vd~] objects
with the same delay line name (delwrite_ex in the above example).;
#X text 169 384 - length of the delay line in milliseconds \, which
is the maximum delay time any receiving [delread~] or [vd~] object
may have.;
#X text 98 224 [delwrite~] allocates memory for a delay line and writes
an audio signal into it. [delread~] objects by the same name read from
the delay line.;
#X text 169 369 - name of the delay line.;
#X text 99 433 You can use more than one [delread~] object for the
same delay line. (See example above).;
#X text 80 384 2) float;
#X text 99 461 Note: if the [delwrite~] runs after the [delread~] the
minimum delay is actually one DSP period \, not zero.;
#X text 80 369 1) symbol atom;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 472 58 pddp/dsp;
#X obj 99 492 pddp/pddplink ../3.audio.examples/G01.delay.pd -text
doc/3.audio.examples/G01.delay.pd;
#X obj 99 512 pddp/pddplink ../3.audio.examples/G02.delay.loop.pd -text
doc/3.audio.examples/G02.delay.loop.pd;
#X obj 99 532 pddp/pddplink ../3.audio.examples/G03.delay.variable.pd
-text doc/3.audio.examples/G03.delay.variable.pd;
#X obj 99 552 pddp/pddplink ../3.audio.examples/G04.control.blocksize.pd
-text doc/3.audio.examples/G04.control.blocksize.pd;
#X obj 99 572 pddp/pddplink ../3.audio.examples/G05.execution.order.pd
-text doc/3.audio.examples/G05.execution.order.pd;
#X text 11 23 write a signal in a delay line;
#X connect 9 0 11 0;
#X connect 11 0 18 0;
#X connect 12 0 19 0;
#X connect 13 0 14 0;
#X connect 15 0 16 0;
#X connect 16 0 13 0;
#X connect 16 0 21 0;
#X connect 19 0 13 0;
#X connect 20 0 23 0;
#X connect 21 0 22 0;
#X connect 23 0 21 0;
#N struct drawnumber-help-template float x float y float cat float
dog float dog-vis;
#N canvas 429 35 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header drawnumber 3 12
0 18 -204280 -1 0;
#X obj 0 119 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 487 282 494 344 META 0;
#X text 12 105 LIBRARY internal;
#X text 12 145 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 165 RELEASE_DATE 2009-06-12;
#X text 12 45 LICENSE SIBSD;
#X text 12 125 AUTHOR Miller Puckette;
#X text 12 185 HELP_PATCH_AUTHORS Updated for Pd version 0.39. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 25 KEYWORDS control data_structure;
#X text 12 65 DESCRIPTION display a numberic field of a template;
#X text 12 5 ALIAS drawsymbol;
#X text 12 85 INLET_0 float;
#X restore 500 597 pd META;
#X obj 0 204 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 232 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 460 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 212 459 428 169 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 92 42 struct;
#X obj 142 42 drawpolygon;
#X obj 223 42 plot;
#X obj 17 42 drawsymbol;
#X obj 262 42 drawcurve;
#X text 7 78 Other Data Structure Objects;
#X obj 245 112 element;
#X obj 76 112 get;
#X obj 107 112 set;
#X obj 136 112 getsize;
#X obj 190 112 setsize;
#X obj 22 112 pointer;
#X text 7 1 [drawnumber] Related Objects;
#X restore 101 597 pd Related_objects;
#X obj 78 128 cnv 17 3 65 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 127 float;
#X text 98 177 list;
#X text 168 127 - [drawnumber] has a single inlet to toggle visibility
of the number. A zero makes it invisible. Any nonzero value makes it
visible.;
#X text 98 208 (none);
#N canvas 7 169 428 164 drawnumber-help-data 0;
#X scalar drawnumber-help-template 24 61 49 17 1 \;;
#X scalar drawnumber-help-template 174 61 41 18 1 \;;
#X obj 1 1 cnv 15 425 20 empty empty empty 20 12 2 14 -204280 -195568
0;
#X text 6 1 [drawnumber] Window to Display Data Structure Instances
;
#X text 21 91 Each dog/cat pair is a scalar. (You can click each in
editmode to get a bounding blue box and move them around.) When not
in editmode you may click and scroll the values up and down for each
field.;
#X restore 28 61 pd drawnumber-help-data;
#N canvas 115 43 428 526 drawnumber-help-template 0;
#X obj 23 121 drawnumber cat 0 0 0 cat=;
#X obj 23 92 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 22 454 struct drawnumber-help-template float x float y float
cat float dog float dog-vis;
#X obj 22 314 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 22 353 set drawnumber-help-template dog-vis;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [drawnumber] subpatch for data structure template;
#N canvas 115 239 426 147 init 0;
#X obj 14 57 pointer;
#X msg 14 35 traverse pd-drawnumber-help-data \, next;
#X obj 14 12 loadbang;
#X obj 14 80 outlet;
#X text 67 58 This just sends a pointer to the right inlet of the [set]
object;
#X text 257 39 the list);
#X text 255 27 (select the first scalar in;
#X connect 0 0 3 0;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X restore 235 331 pd init;
#X text 42 91 "0" makes both "cat" fields invisible;
#X text 40 311 "0" makes a single instance of a "dog" field invisible
;
#X obj 23 210 drawnumber -v dog-vis dog 0 -15 900 dog=;
#X text 20 29 [drawnumber] is used below to display the values of two
fields- "dog" and "cat". These two fields are defined in the template
"drawnumber-help-template" located at the bottom of this subpatch.
;
#X text 20 139 For the [drawnumber] object associated with "cat" above
\, a [toggle] is connected to the inlet. This toggles visibility globally
(i.e. \, for all existing scalars defined by the template "drawnumber-help-template").
;
#X text 21 229 The [drawnumber] object for "dog" above uses the -v
flag \, which can be used to set visibility for each scalar individually.
The (flag \, value) pair "-v dog-vis" means that the field "dog-vis"
determines whether "dog" will be visible in a given scalar. (If you
use the -v flag you can no longer use the inlet of this [drawsymbol]
object.);
#X text 19 372 With the [set] object \, we can change the value of
"dog-vis" in order to set visibility for the "dog" field. Notice when
you click the [toggle] \, it only affects one scalar-- the one which
the [set] object is currently pointing to (see the "init" subpatch).
;
#X text 19 487 This object defines the fields for this template. (Their
values were initialized when this help patch was created.);
#X connect 1 0 0 0;
#X connect 3 0 4 0;
#X connect 7 0 4 1;
#X restore 28 89 pd drawnumber-help-template;
#X obj 474 12 drawnumber;
#X text 99 464 When not in "edit" mode \, you can click and drag vertically
on the numbers to change their values. (In edit mode you can move \,
cut \, copy \, and paste the objects.);
#X text 201 89 <- click this subpatch to see how [drawnumber] is used.
;
#X text 179 59 <- subpatch to display the data structures;
#X text 11 23 display a numeric field of a template;
#X text 98 437 Note: you cannot use both the -n and -v flag.;
#X text 168 177 - a list will be truncated to the first element.;
#X text 80 253 0-2 flags;
#X text 168 304 - the field name of the number to draw.;
#X text 168 353 - RGB color (0=black \, 999=white \, 900=red \, 90=green
\, 9=blue \, 555=grey \, etc.).;
#X text 168 381 - (optional) label ("cat=" for instance).;
#X text 168 253 - "-n" flag to make the number invisible initially.
;
#X text 168 270 - a "-v [variable]" flag to assign a variable to make
the number visible/invisible.;
#X text 168 321 - relative x coordinate.;
#X text 168 337 - relative y coordinate.;
#X text 80 321 2) *;
#X text 80 337 3) *;
#X text 80 353 4) *;
#X text 80 304 1) *;
#X text 98 504 Keyboard entry is supported for [drawnumber] (but not
for [drawsymbol]) when not in editmode. Click a number to enter values
\, the click the enter key when you are finished.;
#X text 80 270 (symbol atoms);
#X text 80 381 5) symbol atom;
#X text 98 405 * Any of these can be numbers (float) or field names
(symbol atom).;
#X obj 98 542 pddp/pddplink drawsymbol-help.pd;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 318 542 pddp/pddplink ../4.data.structures/09.scaling.pd -text
doc/4.data.structure/09.scaling.pd;
#X obj 318 557 pddp/pddplink ../4.data.structures/10.onoff.pd -text
doc/4.data.structures/10.onoff.pd;
#X obj 98 572 pddp/pddplink all_about_z_order.pd;
#X obj 98 557 pddp/pddplink scalar-help.pd;
#N struct drawpolygon-help-template float x float y float weasel float
dog float cat float vis;
#N canvas 432 31 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header drawpolygon 3 12
0 18 -204280 -1 0;
#X obj 0 147 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 487 277 494 344 META 0;
#X text 12 85 LIBRARY internal;
#X text 12 125 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 145 RELEASE_DATE 2009-06-12;
#X text 12 25 LICENSE SIBSD;
#X text 12 105 AUTHOR Miller Puckette;
#X text 12 165 HELP_PATCH_AUTHORS This help patch was updated for Pd
version 0.35 test 28 by Dave Sabine as part of a project called pddp
proposed by Krzysztof Czaja to build comprehensive documentation for
Pd. Jonathan Wilkes revised the patch to conform to the PDDP template
for Pd version 0.42.;
#X text 12 5 KEYWORDS control data_structure;
#X text 12 45 DESCRIPTION display a polygon in a data structure instance
;
#X text 12 65 INLET_0 float;
#X restore 500 597 pd META;
#X obj 0 222 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 250 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 516 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 216 468 428 156 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 92 42 struct;
#X obj 142 42 drawpolygon;
#X obj 223 42 plot;
#X obj 17 42 drawsymbol;
#X obj 262 42 drawcurve;
#X text 7 78 Other Data Structure Objects;
#X obj 245 112 element;
#X obj 76 112 get;
#X obj 107 112 set;
#X obj 136 112 getsize;
#X obj 190 112 setsize;
#X obj 22 112 pointer;
#X text 7 1 [drawpolygon] Related Objects;
#X restore 101 597 pd Related_objects;
#X obj 78 156 cnv 17 3 55 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 99 157 float;
#X text 168 154 - [drawnumber] has a single inlet to toggle visibility
of the number. A zero makes it invisible. Any nonzero value makes it
visible.;
#X text 98 226 (none);
#X text 179 80 <- subpatch to display the data structures;
#X obj 473 10 drawpolygon;
#N canvas 23 258 428 340 drawpolygon-help-data 0;
#X scalar drawpolygon-help-template 101 41 0 60 100 1 \;;
#X scalar drawpolygon-help-template 301 44 1 80 100 1 \;;
#X obj 1 1 cnv 15 425 20 empty empty empty 20 12 2 14 -204280 -195568
0;
#X text 21 156 Three field values are used to draw these polygons.
The field "weasel" is used for the y-value of the top of the triangle
and the y-value of the top two points of the red "v". Fields "dog"
and "cat" are the top left and right x-values for the red "v".;
#X text 6 1 Window to Display Data Structures;
#X text 21 111 Each scalar consists of a set of numbers \, one triangle
\, and one red "v". In editmode you can click on a polygon to get a
blue bounding box around the scalar.;
#X text 21 226 In runmode you can click on each of these regions of
the polygons to alter their appearance. You may also scroll the displayed
values with the mouse to change them.;
#X text 21 276 Additionally \, you can right-click a scalar and select
"Properties" and edit the data in the text window that pops up.;
#X restore 28 82 pd drawpolygon-help-data;
#N canvas 102 75 428 563 drawpolygon-help-template 0;
#X obj 23 115 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#N canvas 69 268 428 162 init 0;
#X obj 20 75 pointer;
#X obj 20 99 outlet;
#X obj 20 30 loadbang;
#X msg 20 53 traverse pd-drawpolygon-help-data \, next;
#X obj 0 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 6 1 [drawpolygon] Initialization subpatch;
#X text 81 80 This just locates the first scalar in the subpatch "drawpolygon-help-data"
and outputs a pointer to it.;
#X connect 0 0 1 0;
#X connect 2 0 3 0;
#X connect 3 0 0 0;
#X restore 217 316 pd init;
#X obj 22 298 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [drawpolygon] subpatch;
#X obj 23 141 drawpolygon 0 4 0 40 40 40 20 weasel 0 40;
#X obj 22 27 struct drawpolygon-help-template float x float y float
weasel float dog float cat float vis;
#X text 42 114 "0" in inlet makes all instances of this polygon invisible
;
#X text 40 295 "0" in inlet makes a single instance of this polygon
invisible;
#X obj 22 340 set drawpolygon-help-template vis;
#X obj 23 491 drawnumber weasel -60 0 0 weasel=;
#X obj 23 511 drawnumber dog -60 15 0 dog=;
#X obj 23 532 drawnumber cat -60 30 0 cat=;
#X obj 23 199 drawpolygon -v vis 900 3 dog weasel 80 40 cat weasel
;
#X text 19 218 The next [drawpolygon] object uses the -v flag. This
flag controls visilibility of the polygon for only one instance of
a data structure. "-v vis" means that the value of field "vis" determines
whether the red "v" polygon is visible or not.;
#X text 19 360 Using the [set] object \, we can turn visibility on
and off for an instance of this polygon by changing the value of the
field "vis". Notice when you click the toggle above \, visibility only
changes for the red "v" furthest to the right. Once you use the -v
flag \, however \, you can no longer use the inlet to [drawpolygon]
to set visibility globally.;
#X text 19 447 Finally \, for convenience \, the following [drawnumber]
objects display the values of each field used in the drawing instructions
above:;
#X text 20 159 [drawpolygon] is used above to display a black triangle
and a red "v".;
#X text 19 60 The [struct] object defines the fields for this template.
You can see and edit the values by right-clicking the scalar in the
"data" subpatch and selecting "Properties.";
#X connect 0 0 5 0;
#X connect 1 0 9 1;
#X connect 2 0 9 0;
#X restore 28 109 pd drawpolygon-help-template;
#X text 98 471 Note: you cannot use the -n and -v flag together. When
using the -v flag \, the polygon is initially invisible by default.
;
#X text 99 519 When not in "edit" mode \, you can click on regions
of the polygon defined by template fields to stretch or alter the polygon's
shape.;
#X text 201 109 <- click this subpatch to see how [drawpolygon] is
used.;
#X text 11 23 display a polygon in a data structure instance;
#X text 168 195 - a list will be truncated to the first element.;
#X text 168 363 - RGB color (0=black \, 999=white \, 900=red \, 90=green
\, 9=blue \, 555=grey \, etc.);
#X text 168 390 - line width.;
#X text 168 414 - two or more (x \, y) pairs giving coordinates.;
#X text 168 270 - "-n" flag to make the polygon initially invisible.
;
#X text 168 289 - a "-v [variable]" flag to assign a variable to make
the polygon visible/invisible.;
#X text 80 390 2) *;
#X text 80 364 1) *;
#X text 80 414 n) *;
#X text 98 442 * Any of these can be numbers (float) or field names
(symbol atom).;
#X text 98 195 list;
#X text 80 309 (symbol atoms);
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 316 557 pddp/pddplink ../4.data.structures/09.scaling.pd -text
doc/4.data.structure/09.scaling.pd;
#X obj 316 572 pddp/pddplink ../4.data.structures/10.onoff.pd -text
doc/4.data.structures/10.onoff.pd;
#X obj 99 572 pddp/pddplink all_about_z_order.pd;
#X obj 99 557 pddp/pddplink scalar-help.pd;
#X text 80 270 0-3 flags;
#X text 80 290 (optional);
#X text 168 318 - "-x" flag to inhibit selecting the object when the
shape is clicked on in "edit" mode or clicked-and-dragged in "run mode".
;
#N struct element-help-template float x float y array array1 array1-element-help-template
;
#N struct array1-element-help-template float y;
#N canvas 428 35 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header element 3 12 0 18
-204280 -1 0;
#X obj 0 333 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 482 282 494 344 META 0;
#X text 12 125 LIBRARY internal;
#X text 12 165 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 145 AUTHOR Miller Puckette;
#X text 12 205 HELP_PATCH_AUTHORS Updated for Pd version 0.4. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS control data_structure array;
#X text 12 65 INLET_0 float list;
#X text 12 85 INLET_1 pointer;
#X text 12 105 INLET_2 pointer;
#X text 12 45 DESCRIPTION get pointer to an element of an array;
#X text 12 185 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 449 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 493 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 553 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 211 492 428 134 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 92 72 struct;
#X obj 142 72 drawpolygon;
#X obj 223 72 plot;
#X obj 17 72 drawsymbol;
#X obj 262 72 drawcurve;
#X obj 71 37 get;
#X obj 102 37 set;
#X obj 131 37 getsize;
#X obj 185 37 setsize;
#X obj 17 37 pointer;
#X obj 240 37 drawnumber;
#X text 7 1 [element] Related Objects;
#X restore 101 597 pd Related_objects;
#X obj 78 342 cnv 17 3 70 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 99 343 float;
#X text 98 398 list;
#X text 228 255 <- subpatch to display the data structures;
#X obj 497 10 element;
#N canvas 80 372 428 228 element-help-data 0;
#X scalar element-help-template 40 40 \; 19 \; 0 \; 11 \; 9 \; 41 \;
14 \; 31 \; 38 \; 33 \; \;;
#X obj 0 0 cnv 15 425 20 empty empty empty 20 12 2 14 -204280 -195568
0;
#X text 5 0 Window to Display Data Structure Instances;
#X text 20 155 You can also click and drag each element vertically
to change its value. When there is no "x" field specified (as in the
template array1-element-help-template) you can click and drag horizontally
to change multiple elements in one mouse swoop.;
#X text 20 110 Each purple square above represents one element of the
array. Using the [element] object in the parent window you can get
the y-value of each element.;
#X restore 77 257 pd element-help-data;
#N canvas 73 89 428 189 element-help-template 0;
#X obj 0 0 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 6 1 [element] subpatch;
#X obj 21 76 struct element-help-template float x float y array array1
array1-element-help-template;
#X obj 21 158 filledpolygon 777 666 1 -10 -10 210 -10 210 65 -10 65
;
#X obj 21 120 plot -y y(0:41)(41:0) array1 500 1 0 15 25;
#X text 18 37 This [struct] contains an array "array1." The elements
of this array are defined by array1-element-help-template;
#X restore 77 279 pd element-help-template;
#N canvas 80 82 428 218 array1-element-help-template 0;
#X obj 0 0 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 6 1 [element] subpatch;
#X obj 21 73 struct array1-element-help-template float y;
#X obj 21 131 drawnumber y -5 -20 0;
#X obj 21 102 filledpolygon 509 0 1 -5 0 0 5 5 0 0 -5;
#X text 19 37 This [struct] is used in element-help-template to define
the elements of the array "array1.";
#X text 20 158 When "array1" is plotted \, each element will be represented
by a purple box and a number \, as specified here by the [filledpolygon]
and [drawnumber] objects.;
#X restore 77 301 pd array1-element-help-template;
#X obj 78 421 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 420 pointer;
#X text 169 343 - [element] takes a float to its left inlet \, which
specifies the element of an array. Indices range from zero to the number
of elements minus one. Indices out of range are quietly replaced by
the nearest endpoint.;
#X obj 78 458 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 459 pointer;
#X text 168 459 - when [element] receives a float to its left inlet
\, it outputs a pointer to the specified element of the array.;
#X obj 297 107 pointer;
#X floatatom 125 209 5 0 0 0 - - -, f 5;
#X text 130 156 outlet is pointer to single element;
#X text 176 207 here we just get the value of y.;
#X msg 297 83 traverse pd-element-help-data \, next;
#X obj 125 135 element element-help-template array1;
#X obj 125 182 get array1-element-help-template y;
#X obj 125 112 hradio 15 1 0 9 empty empty empty 0 -8 0 10 -262144
-1 -1 0;
#X text 155 93 index (0-8);
#X floatatom 81 135 5 0 0 0 - - -, f 5;
#X text 11 23 get pointer to an element of an array;
#X text 168 527 - field name. The field name must be an array.;
#X text 168 398 - a list will be truncated to the first element.;
#X text 168 512 - name of the template.;
#X text 168 420 - the right inlet of [element] takes a pointer to a
scalar.;
#X text 80 512 1) symbol atom;
#X text 80 527 2) symbol atom;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 98 557 pddp/pddplink all_about_arrays.pd;
#X obj 98 572 pddp/pddplink scalar-help.pd;
#X text 125 75 2 ... then here;
#X text 299 63 1 Click here first...;
#X connect 22 0 27 1;
#X connect 26 0 22 0;
#X connect 27 0 28 0;
#X connect 28 0 23 0;
#X connect 29 0 27 0;
#X connect 29 0 31 0;
#N canvas 428 34 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header env~ 3 12 0 18 -204280
-1 0;
#X obj 0 343 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 486 284 494 344 META 0;
#X text 12 105 LIBRARY internal;
#X text 12 145 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 125 AUTHOR Miller Puckette;
#X text 12 185 HELP_PATCH_AUTHORS Updated for Pd version 0.40. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS signal conversion;
#X text 12 65 INLET_0 signal;
#X text 12 85 INLET_1 float;
#X text 12 45 DESCRIPTION envelope follower;
#X text 12 165 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 380 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 434 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 535 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X obj 78 352 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 389 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 351 signal;
#X obj 513 10 env~;
#X text 98 539 The analysis is "Hanning" (raised cosine) windowed.
;
#X text 98 389 float;
#X floatatom 74 263 0 0 0 0 - - -;
#X obj 74 140 osc~ 400;
#X obj 74 167 *~;
#X floatatom 166 116 3 -99 300 0 - - -, f 3;
#X obj 166 140 dbtorms;
#X text 194 114 <- set peak-to-peak amplitude here in dB.;
#X text 110 264 <- the output is RMS amplitude which (for a sinusoid)
is about 3 dB below peak-to-peak amplitude.;
#X obj 74 200 env~ 16384 8192;
#N canvas 213 524 428 101 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 9 38 threshold~;
#X text 7 1 [env~] Related Objects;
#X restore 101 597 pd Related_objects;
#X text 11 23 envelope follower;
#X text 168 452 - (optional) the analysis window size in samples (the
default is 1024).;
#X text 80 452 1) float;
#X text 80 479 2) float;
#X text 168 479 - (optional) the period (the number of samples per
analysis-- window/2 by default). This should normally be a multiple
of the DSP block size \, although this isn't enforced.;
#X text 168 389 - the [env~] object takes a signal and outputs its
RMS amplitude in dB (with 1 normalized to 100 dB.) Output is bounded
below by zero.;
#X text 168 351 - the incoming signal;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 480 56 pddp/dsp;
#X obj 98 557 pddp/pddplink ../3.audio.examples/C07.envelope.follower.pd
-text doc.3.audio.examples/C07.envelope.follower.pd;
#X obj 98 572 pddp/pddplink ../3.audio.examples/H06.envelope.follower.pd
-text doc.3.audio.examples/H06.envelope.follower.pd;
#X connect 14 0 15 0;
#X connect 15 0 20 0;
#X connect 16 0 17 0;
#X connect 17 0 15 1;
#X connect 20 0 13 0;
#N canvas 428 35 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header fft~ 3 12 0 18 -204280
-1 0;
#X obj 0 399 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 468 274 507 361 META 0;
#X text 12 150 LIBRARY internal;
#X text 12 190 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 210 RELEASE_DATE 2009-06-12;
#X text 12 30 LICENSE SIBSD;
#X text 12 170 AUTHOR Miller Puckette;
#X text 12 230 HELP_PATCH_AUTHORS Updated for Pd version 0.33. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 70 INLET_0 signal;
#X text 12 90 INLET_1 signal;
#X text 12 110 OUTLET_0 signal;
#X text 12 130 OUTLET_1 signal;
#X text 12 50 DESCRIPTION Fourier analyses;
#X text 12 5 KEYWORDS signal block_oriented analysis;
#X restore 500 597 pd META;
#X obj 0 460 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 523 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 551 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X text 98 527 (none);
#N canvas 214 524 428 107 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [fft~] Related Objects;
#X obj 22 42 ifft~;
#X obj 68 42 rfft~;
#X obj 114 42 rifft~;
#X obj 163 42 block~;
#X obj 210 42 switch~;
#X restore 101 597 pd Related_objects;
#X obj 78 408 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 469 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 433 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X obj 512 10 fft~;
#X floatatom 15 124 0 0 0 0 - - -;
#X obj 15 75 * 44100;
#X floatatom 15 53 0 0 0 0 - - -;
#X obj 15 180 osc~;
#X obj 15 205 rfft~;
#X obj 15 99 / 64;
#X obj 15 261 rifft~;
#X obj 60 261 print~ real;
#X obj 74 236 print~ imaginary;
#X obj 15 298 /~ 64;
#X obj 15 364 print~ resynthesized;
#X msg 25 337 bang;
#X msg 60 192 bang;
#X msg 36 150 0.25;
#X msg 77 150 0;
#X text 42 125 frequency in Hz.;
#X text 43 52 frequency in bins;
#X text 55 298 <- renormalize;
#X text 61 337 <- print resynthesis;
#X text 98 407 signal;
#X text 98 432 signal;
#X obj 78 496 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 495 signal;
#X text 98 468 signal;
#X text 11 23 Fourier analyses;
#X text 183 313 There is no normalization \, so that an FFT followed
by an IFFT has a gain of N.;
#X text 182 352 See the FFT examples to see how to use these in practice.
;
#X text 184 243 The real FFT outputs N/2+1 real parts and N/2-1 imaginary
parts. The other outputs are zero. At DC and at the Nyquist there is
no imaginary part \, but the second through Nth output is as a real
and imaginary pair \, which can be thought of as the cosine and sin
component strengths.;
#X text 104 151 <- bash phase;
#X text 92 193 <- print analysis;
#X text 184 118 The FFT objects do Fourier analyses and resyntheses
of incoming real or complex signals. Complex signals are handled as
pairs of signals (real and imaginary part.) The analysis size is one
block (you can use the [block~] or [switch~] objects to control block
size).;
#X obj 5 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 481 55 pddp/dsp;
#X obj 98 555 pddp/pddplink ../3.audio.examples/I01.Fourier.analysis.pd
-text doc/3.audio.examples/I01.Fourier.analysis.pd;
#X text 98 573 also see examples I02-I10 in doc/3.audio.examples;
#X connect 13 0 16 0;
#X connect 14 0 18 0;
#X connect 15 0 14 0;
#X connect 16 0 17 0;
#X connect 17 0 20 0;
#X connect 17 0 19 0;
#X connect 17 1 21 0;
#X connect 17 1 19 1;
#X connect 18 0 13 0;
#X connect 19 0 22 0;
#X connect 22 0 23 0;
#X connect 24 0 23 0;
#X connect 25 0 20 0;
#X connect 25 0 21 0;
#X connect 26 0 16 1;
#X connect 27 0 16 1;
#N canvas 427 33 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header float 3 12 0 18
-204280 -1 0;
#X obj 0 339 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 494 296 482 332 META 0;
#X text 12 145 LIBRARY internal;
#X text 12 185 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 45 LICENSE SIBSD;
#X text 12 165 AUTHOR Miller Puckette;
#X text 12 225 HELP_PATCH_AUTHORS Jonathan Wilkes revised the patch
to conform to the PDDP template for Pd version 0.42.;
#X text 12 25 KEYWORDS control storage;
#X text 12 5 ALIAS f;
#X text 12 85 INLET_0 float bang;
#X text 12 105 INLET_1 float;
#X text 12 125 OUTLET_0 float;
#X text 12 65 DESCRIPTION store a number;
#X text 12 205 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 78 144 cnv 10 50 16 empty empty empty 20 12 0 14 -262126 -66577
0;
#X obj 341 145 cnv 10 23 16 empty empty empty 20 12 0 14 -262126 -66577
0;
#X floatatom 379 117 5 0 0 0 - - -, f 5;
#X floatatom 340 169 5 0 0 0 - - -, f 5;
#X obj 359 117 bng 15 250 50 0 empty empty empty 20 7 0 12 -4034 -1
-1;
#X floatatom 80 169 5 0 0 0 - - -, f 5;
#X msg 80 61 bang;
#X msg 320 61 7 3 4;
#X obj 340 144 f;
#X obj 80 144 float 7;
#X obj 0 436 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 473 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 523 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X obj 78 408 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X obj 78 347 cnv 17 3 55 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 462 12 float;
#X obj 522 12 f;
#X text 501 13 or;
#X msg 119 115 12;
#X msg 152 115 -0.02;
#X msg 94 90 555;
#X msg 340 84 list one 2 3;
#X text 424 83 does not work!;
#X obj 100 543 pddp/pddplink http://crca.ucsd.edu/~msp/Pd_documentation/x2.htm#s3.1
-text Pd manual 2.3.1: anatomy of a message;
#N canvas 106 185 428 374 float/list 0;
#X msg 51 111 float 1 2 3;
#X msg 71 165 list 1 2 3;
#X text 68 142 A list with multiple elements remains a list.;
#X text 19 37 A float with one element remains a float.;
#X text 75 196 A list with one float element is converted to a float.
;
#X obj 27 286 bng 15 250 50 0 empty empty bang 0 20 1 9 -262144 -1
-1;
#X obj 76 286 bng 15 250 50 0 empty empty float 0 21 1 9 -262144 -1
-1;
#X obj 118 286 bng 15 250 50 0 empty empty symbol 0 21 1 9 -262144
-1 -1;
#X obj 166 286 bng 15 250 50 0 empty empty list 0 21 1 9 -262144 -1
-1;
#X obj 211 286 bng 15 250 50 0 empty empty UNDEFINED 0 21 1 9 -262144
-1 -1;
#X obj 26 264 route bang float symbol list;
#X obj 67 327 print FLOAT;
#X msg 26 59 float 3;
#X msg 82 217 list 2;
#X obj 149 327 print LIST;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [float] Conversion To/From a List;
#X text 48 81 A float with multiple elements remains a float but is
truncated to one element.;
#X connect 0 0 10 0;
#X connect 1 0 10 0;
#X connect 10 0 5 0;
#X connect 10 1 6 0;
#X connect 10 1 11 0;
#X connect 10 2 7 0;
#X connect 10 3 8 0;
#X connect 10 3 14 0;
#X connect 10 4 9 0;
#X connect 12 0 10 0;
#X connect 13 0 10 0;
#X restore 386 556 pd float/list conversion;
#N canvas 111 59 428 526 More_Info 0;
#X text 19 37 All numbers in Pd are kept in 32-bit floating point and
can represent real numbers between -8 \, 388608 and 8.388.608.00;
#X text 19 233 The following are examples of floating point numbers:
;
#X text 49 253 3;
#X text 50 294 -111.5;
#X text 49 273 0.5;
#X text 20 126 According to Webopedia.com \, "computers are integer
machines and are capable of representing real numbers only by using
complex codes." Hence \, real numbers must be 'approximated' by computers
using the "floating point standard". In such a number \, the decimal
point can "float" meaning that there is no fixed number of digits preceding
or following the decimal. A floating point number is therefore a computer's
approximation of a real number.;
#X text 50 318 10000 to 1e-16;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [float] More Info;
#X obj 1 91 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12
0 14 -204280 -1 0;
#X text 7 91 What is a floating point number?;
#X obj 1 411 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12
0 14 -204280 -1 0;
#X text 7 411 An Interesting Side-Note;
#X text 19 443 In the early 1990's \, the Intel 80486 was shipped with
a math coprocessor to help accelerate the process of computing floating
point numbers (which previously required a considerable amount of CPU
power). Math coprocessors have since found there way into nearly every
graphics card and CPU available today.;
#X text 49 343 3e-05 : This example is a computer shorthand for scientific
notation. It means 3*10^-5 (or 10 to the negative 5th power multiplied
by 3).;
#X restore 385 532 pd More_Info;
#X text 115 60 outputs argument;
#X text 123 89 overrides argument;
#X text 133 145 stores value;
#X text 98 346 bang;
#X text 98 366 float;
#X text 98 386 list;
#X text 98 408 float;
#N canvas 212 516 428 108 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [float] Related Objects;
#X obj 22 36 int;
#X obj 54 36 value;
#X obj 101 36 list;
#X floatatom 142 37 5 0 0 0 - - -, f 5;
#X msg 185 36;
#X restore 101 597 pd Related_objects;
#X text 99 445 float;
#X text 11 20 store a number;
#X obj 78 445 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 168 386 - truncates to the first element \, outputs it \, and
stores it.;
#X text 168 408 - a float received on the right inlet is stored.;
#X text 169 445 - outputs the stored value as a float message.;
#X text 81 490 1) float;
#X text 168 346 - outputs the currently stored value.;
#X text 168 366 - outputs the incoming number and stores it.;
#X text 171 490 - [float] accepts a single number as a creation argument
which sets the value that is stored.;
#X obj 80 226 21;
#X obj 80 206 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X floatatom 80 248 5 0 0 0 - - -, f 5;
#X text 122 204 As an additional shortcut \, you can leave off the
class name "float" altogether and just use a single number in an object
box to create a [float] object (with the value initialized to that
number).;
#X text 20 225 [float];
#X text 21 239 object;
#X text 21 210 implicit;
#X obj 441 280 1 2 3;
#X obj 441 260 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 441 302 print;
#X text 483 264 implicit;
#X text 482 293 object;
#X text 482 279 [list];
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 100 575 pddp/pddplink http://en.wikipedia.org/wiki/Floating_point
;
#X obj 99 527 pddp/pddplink all_about_messages.pd;
#X obj 100 560 pddp/pddplink ../2.control.examples/05.counter.pd -text
doc/2.control.examples/05.counter.pd;
#X text 77 277 (If you add additional arguments after this number you
will create an implicit [list] object.);
#X connect 6 0 12 1;
#X connect 8 0 12 0;
#X connect 10 0 13 0;
#X connect 11 0 12 0;
#X connect 12 0 7 0;
#X connect 13 0 9 0;
#X connect 22 0 13 1;
#X connect 23 0 13 1;
#X connect 24 0 13 0;
#X connect 25 0 12 0;
#X connect 48 0 50 0;
#X connect 49 0 48 0;
#X connect 55 0 57 0;
#X connect 56 0 55 0;
#N canvas 431 32 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header framp~ 3 12 0 18
-204280 -1 0;
#X obj 0 417 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 474 272 507 362 META 0;
#X text 12 155 LIBRARY internal;
#X text 12 195 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 175 AUTHOR Miller Puckette;
#X text 12 235 HELP_PATCH_AUTHORS Updated for Pd version 0.33. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 75 INLET_0 signal;
#X text 12 95 INLET_1 signal;
#X text 12 115 OUTLET_0 signal;
#X text 12 135 OUTLET_1 signal;
#X text 12 45 DESCRIPTION estimate frequency and amplitude of FFT components
;
#X text 12 215 RELEASE_DATE 1997;
#X text 12 5 KEYWORDS signal block_oriented;
#X restore 500 597 pd META;
#X obj 0 478 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 539 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 567 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X text 98 543 (none);
#N canvas 222 513 428 109 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 22 43 fft~;
#X text 8 2 [framp~] Related Objects;
#X restore 101 597 pd Related_objects;
#X obj 78 426 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 486 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 78 451 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X obj 497 10 framp~;
#X text 147 127 frequency;
#X floatatom 78 142 0 0 0 0 - - -;
#X obj 78 92 * 44100;
#X floatatom 78 67 0 0 0 0 - - -;
#X text 150 65 frequency;
#X text 153 83 in bins;
#X text 147 144 in Hz.;
#X obj 79 193 rfft~;
#X obj 78 117 / 64;
#X msg 165 214 bang;
#X obj 78 220 framp~;
#X obj 165 269 print~ frequency;
#X obj 180 244 print~ amplitude;
#X obj 78 168 osc~;
#X text 201 214 <- print analysis;
#X text 98 425 signal;
#X text 98 450 signal;
#X text 98 485 signal;
#X obj 78 511 cnv 17 3 17 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 510 signal;
#X text 11 23 estimate frequency and amplitude of FFT components;
#X text 75 309 [framp~] takes as input a rectangular-windowed FFT and
outputs \, for each FFT channel \, the estimated amplitude and frequency
of any component feedinf that channel. A sinusoidal component should
appear in four components (or three in the special case of a sinusoid
exactly tuned to a bin.) Frequency output is in bins \, i.e. \, units
of SR/N.;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 478 56 pddp/dsp;
#X connect 14 0 26 0;
#X connect 15 0 21 0;
#X connect 16 0 15 0;
#X connect 20 0 23 0;
#X connect 20 1 23 1;
#X connect 21 0 14 0;
#X connect 22 0 24 0;
#X connect 22 0 25 0;
#X connect 23 0 24 0;
#X connect 23 1 25 0;
#X connect 26 0 20 0;
#N canvas 428 36 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header gatom 3 12 0 18
-204280 -1 0;
#X obj 0 231 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 486 289 494 344 META 0;
#X text 12 115 LIBRARY internal;
#X text 12 155 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 35 LICENSE SIBSD;
#X text 12 135 AUTHOR Miller Puckette;
#X text 12 195 HELP_PATCH_AUTHORS Updated for Pd version 0.34. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 75 INLET_0 float bang symbol set;
#X text 12 95 OUTLET_0 float;
#X text 12 175 RELEASE_DATE 1997;
#X text 12 55 DESCRIPTION atom (number box and symbol box);
#X text 12 5 KEYWORDS control storage GUI nonlocal symbol_op;
#X restore 500 597 pd META;
#X obj 0 396 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 470 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 499 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X text 98 474 (none);
#N canvas 214 517 428 109 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 47 1 Related Objects;
#X floatatom 9 3 5 0 0 0 - - -, f 5;
#X obj 21 42 float;
#X obj 61 42 list;
#X obj 102 45 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-262144 -1 -1 0 256 0;
#X obj 169 42 drawnumber;
#X restore 102 597 pd Related_objects;
#X obj 78 240 cnv 17 3 145 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 404 float;
#X obj 78 405 cnv 17 3 52 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X floatatom 401 9 5 0 0 0 - - -, f 5;
#X floatatom 25 58 0 0 0 0 - - -;
#X floatatom 25 96 0 0 0 0 - - -;
#X msg 469 76 set 45;
#X floatatom 469 104 0 0 0 0 - - -;
#X text 98 239 bang;
#X text 98 259 float;
#X text 98 289 list;
#X text 98 309 symbol;
#X text 98 339 set;
#N canvas 98 96 430 514 Number_box_properties 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X floatatom 70 102 12 0 0 0 - - -, f 12;
#X floatatom 71 223 1 0 0 0 - - -, f 1;
#X text 50 2 Properties for gatom;
#X text 20 38 Right click on a number box and choose "Properties" to
change the following:;
#X text 19 69 width;
#X text 69 69 - width of the number box (in characters). By default
the width is 5 characters.;
#X text 148 102 width = 12 characters;
#X floatatom 70 123 2 0 0 0 - - -, f 2;
#X text 148 123 width = 2 characters;
#X text 69 164 If you select a width of 0 \, the number box will grow
as needed to hold the number--BUT BEWARE \, THIS IS EXPENSIVE IN CPU
TIME. In a production patch \, you'll want to set a specific width.
;
#X floatatom 70 143 0 0 0 0 - - -;
#X text 148 143 width = 0 characters (read below);
#X text 69 240 A width of one gives a clickable toggle switch ala Max.
;
#X text 88 223 width = 1 character: toggle between 0 and 1;
#X text 19 260 limits;
#X floatatom 71 282 5 0 127 0 - - -, f 5;
#X text 109 281 numbers between 0 and 127;
#X text 69 260 - set lower and upper limits for scrolling the number
box;
#X text 68 300 This only affects scrolling- you can still send values
to the number box that are outside these limits.;
#X floatatom 71 353 5 0 127 1 my_number_box - -, f 5;
#X text 19 331 label;
#X text 69 331 - give the number box a visible name;
#X text 68 371 Use the radio buttons to reposition the label to the
left \, right \, top \, or bottom of the number box. Spaces in the
label will automatically be converted to underscores.;
#X text 19 413 messages;
#X text 69 413 - nonlocal send and receive;
#X floatatom 193 532 5 0 0 2 Number_box_7 gatom-help-rcv gatom-help-snd
, f 5;
#X obj 276 540 r gatom-help-snd;
#X obj 71 516 s gatom-help-rcv;
#X msg 71 490 28;
#X text 68 433 As an alternative to using wires \, you can set send
and receive names to send messages through the number box. "Number-box-7"
below is set to receive messages to "gatom-help-rcv" \, and send messages
to "gatom-help-snd";
#X floatatom 276 563 5 0 0 0 - - -, f 5;
#X text 68 583 Notice that you cannot make local connections with wires
to "Number_box_7" when using non-local send and receive names. If you
want to use both \, see the [nbx] object:;
#X obj 71 626 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-262144 -1 -1 0 256 0;
#X floatatom 13 3 5 0 0 0 - - -, f 5;
#X connect 27 0 31 0;
#X connect 29 0 28 0;
#X restore 102 571 pd Number_box_properties;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X symbolatom 25 138 10 0 0 0 - - -, f 10;
#X text 11 23 atom (number box and symbol box);
#X symbolatom 481 9 10 0 0 0 - - -, f 10;
#X text 445 9 and;
#X symbolatom 25 174 10 0 0 0 - - -, f 10;
#X text 61 52 A number box allows you to display a number or enter
a number using the mouse and keyboard. When a number arrives at the
number box's inlet \, it is displayed and sent to the outlet. You can
click on a number box and drag upward or downward to change the value
continuously.;
#X text 97 134 A symbol box allows you to display a single symbol-atom
or enter one using the mouse and keyboard. Unlike a number box you
cannot change the value by clicking and dragging.;
#X text 96 174 The symbol box is called "Symbol" in the "Put" menu.
;
#X text 168 239 - sends the current value to the outlet.;
#X msg 469 156 set foo;
#X symbolatom 469 180 10 0 0 0 - - -, f 10;
#X text 168 309 - symbol box only: an incoming symbol is displayed
and output. (Number box will display and output zero.);
#X text 168 259 - number box only: sets the current value and outputs
it. (Symbol box will display 'float' and output 'symbol float'.);
#X text 168 289 - a list will be truncated to the first item.;
#X text 168 339 - displays the incoming value without outputting it
(e.g. \, "set 23" will cause a number box to display 23). Sending a
set message without a value does not change the current value of a
number box or symbol box.;
#X text 168 404 - number box only: outputs a float for each message
it receives (except set).;
#X text 98 434 symbol;
#X text 168 434 - symbol box only: outputs a symbol message for each
message it receives (except set).;
#X text 100 537 Control-clicking (or command-clicking on a mac) toggles
the value between 0 and the last nonzero value.;
#X floatatom 59 545 5 0 0 0 - - -, f 5;
#X text 100 503 You can shift-click a number box and drag to change
the number by hundredths instead of ones.;
#X text 61 118 The number box is called "Number" in the "Put" menu.
;
#X text 67 197 To enter data simply click a number box or symbol box
and begin typing. Then click "Enter" to finish and output it.;
#X connect 13 0 14 0;
#X connect 15 0 16 0;
#X connect 24 0 28 0;
#X connect 33 0 34 0;
#N struct get-help-template float x float y symbol s;
#N canvas 430 33 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header get 3 12 0 18 -204280
-1 0;
#X obj 0 338 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 482 279 494 344 META 0;
#X text 12 105 LIBRARY internal;
#X text 12 145 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 125 AUTHOR Miller Puckette;
#X text 12 185 HELP_PATCH_AUTHORS Updated for Pd version 0.39. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS control data_structure;
#X text 12 45 DESCRIPTION get values from a scalar;
#X text 12 65 INLET_0 pointer;
#X text 12 85 OUTLET_N float symbol;
#X text 12 165 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 375 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 438 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 506 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 216 515 428 109 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 72 34 set;
#X obj 104 34 append;
#X obj 163 34 getsize;
#X obj 14 59 setsize;
#X obj 72 59 element;
#X obj 184 59 sublist;
#X obj 14 34 pointer;
#X obj 132 59 struct;
#X text 7 1 [get] Related Objects;
#X restore 102 597 pd Related_objects;
#X obj 78 347 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 383 float;
#X obj 78 384 cnv 17 3 48 empty \$0-pddp.cnv.let.n n 5 9 0 16 -228856
-162280 0;
#X obj 518 11 get;
#X msg 121 139 next;
#X floatatom 106 234 5 0 0 0 - - -, f 5;
#X floatatom 185 234 5 0 0 0 - - -, f 5;
#X obj 106 162 pointer;
#X text 302 115 output first scalar in list;
#X text 164 138 output next item;
#X text 102 250 x output;
#X text 183 250 y output;
#X text 261 251 s output;
#X symbolatom 265 234 18 0 0 0 - - -, f 18;
#X obj 145 186 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 98 346 pointer;
#X text 168 346 - [get] takes a pointer to a scalar.;
#X text 98 398 symbol;
#X text 166 183 bang when there are no more items;
#X text 11 23 get values from a scalar;
#X text 221 283 <- Click here to see the data;
#N canvas 111 75 428 272 get-help-data 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [get] Data Window;
#X scalar get-help-template 22 43 guten_tag \;;
#X scalar get-help-template 79 87 jo_napot_kivanok \;;
#X text 62 42 Each blue rectangle is a scalar. Their appearance and
data structure are defined by the template "get-help-template".;
#X text 27 187 In addition to using the [get] object \, you can right-click
on a rectangle and choose "Properties" to view the field values of
the scalar. (You can also change them-- once you are finished \, click
"Ok" to update the values.);
#X text 27 124 The "x" and "y" fields in a [struct] are special: they
always specify the screen coordinates for the top left corner of each
rectangle. In editmode you can click and drag each rectangle to change
these values.;
#X restore 106 283 pd get-help-data;
#X msg 106 116 traverse pd-get-help-data \, next;
#X obj 106 208 get get-help-template x y s;
#N canvas 105 219 428 175 get-help-template 0;
#X obj 23 118 filledpolygon 9 0 1 0 0 20 0 20 30 0 30;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [get] Template subpatch;
#X text 19 69 This [struct] just defines a simple data structure. The
values for the fields were set when this help patch was created.;
#X obj 21 42 struct get-help-template float x float y symbol s;
#X text 21 137 Draw a blue rectangle with a black border.;
#X restore 106 305 pd get-help-template;
#X text 168 383 - one outlet is created for each field specified in
the creation arguments. When [get] receives a pointer at its inlet
\, the value of each field is output to the corresponding outlet.;
#X text 168 472 - the name of a field or fields in that template. An
outlet is created for each field specified.;
#X text 103 56 [get] \, when sent a pointer to a scalar \, retrieves
fields from it by name. The fields can be a float or symbol. (In the
future this will also allow access to sublists of scalars.);
#X text 168 457 - a struct name to specify the template of a scalar.
;
#X text 97 510 If you have data whose templates vary (from a heterogeneous
list \, for example) you can use [pointer] to select according to template
before sending to [get]. (See pointer-help.pd for more information.)
;
#X text 80 457 1) symbol atom;
#X text 80 472 n) symbol atom;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 97 563 pddp/pddplink ../04.data.structures/02.getting.data.pd
-text doc/04.data.structures/02.getting.data.pd;
#X obj 97 578 pddp/pddplink scalar-help.pd;
#X connect 12 0 15 0;
#X connect 15 0 31 0;
#X connect 15 1 22 0;
#X connect 30 0 15 0;
#X connect 31 0 13 0;
#X connect 31 1 14 0;
#X connect 31 2 21 0;
#N struct help-getsize-template float x float y array array1 help-getsize-array1-template
;
#N struct help-getsize-array1-template float y float x;
#N canvas 426 32 555 619 10;
#X scalar help-getsize-template 89 279 \; 7 -6 \; 7 35 \; 26 57 \;
45 85 \; 74 90 \; 79 137 \; 48 150 \; \;;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header getsize 3 12 0 18
-204280 -1 0;
#X obj 0 406 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 478 284 494 344 META 0;
#X text 12 105 LIBRARY internal;
#X text 12 145 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 125 AUTHOR Miller Puckette;
#X text 12 185 HELP_PATCH_AUTHORS Updated for Pd version 0.4. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS control data_structure array;
#X text 12 45 DESCRIPTION get the number of elements in an array;
#X text 12 65 INLET_0 pointer;
#X text 12 85 OUTLET_0 float;
#X text 12 165 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 443 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 485 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 553 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 214 518 428 109 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 71 34 pointer;
#X obj 205 34 setsize;
#X obj 138 34 element;
#X obj 14 34 struct;
#X text 7 1 [getsize] Related Objects;
#X obj 14 70 get;
#X obj 51 70 set;
#X obj 84 70 append;
#X obj 138 70 sublist;
#X restore 102 597 pd Related_objects;
#X obj 78 415 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 451 float;
#X obj 78 452 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X obj 492 11 getsize;
#X obj 78 135 pointer;
#X floatatom 78 190 5 0 0 0 - - -, f 5;
#X obj 78 161 getsize help-getsize-template array1;
#N canvas 83 204 428 227 help-getsize-template 0;
#X obj 21 42 struct help-getsize-template float x float y array array1
help-getsize-array1-template;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [getsize] Data Structure;
#X obj 21 138 filledpolygon 11 527 1 -10 0 175 0 175 110 -10 110;
#X obj 21 85 plot array1 770 2 10 15 20;
#X text 18 107 An array plotted with a yellow trace 2 pixels wide.
;
#X text 18 157 A black rectangle for the background.;
#X restore 78 223 pd help-getsize-template;
#N canvas 76 167 428 138 help-getsize-array1-template 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [getsize] Data Structure;
#X obj 21 42 struct help-getsize-array1-template float y float x;
#X obj 21 69 filledpolygon 999 5 1 -5 0 0 5 5 0 0 -5;
#X text 18 91 This is the template for the elements of the array "array1"
\, which is defined in [pd help-getsize-template].;
#X restore 78 244 pd help-getsize-array1-template;
#X text 98 414 pointer;
#X text 11 23 get the number of elements in an array;
#X text 168 414 - a pointer to a scalar that contains an array.;
#X text 168 451 - the output of [getsize] is the number of elements
in the array. The smallest possible size is one.;
#X text 81 504 1) symbol;
#X text 81 520 2) symbol;
#X text 77 55 When sent a pointer \, [getsize] looks up a field \,
which should be an array \, and outputs the number of elements of the
array.;
#X text 168 504 - a struct name to specify the the template of a scalar.
;
#X text 119 190 here we just get the size of the array "array1".;
#X text 168 519 - the name of a field within that template. (The field
must be an array.);
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 98 557 pddp/pddplink all_about_arrays.pd;
#X obj 98 572 pddp/pddplink scalar-help.pd;
#X msg 78 109 traverse pd-getsize-help.pd \, next;
#X text 278 303 To the left is a scalar that contains;
#X text 278 333 diamond represents one element. (The;
#X text 278 318 an array of 7 elements. Each white;
#X text 278 348 black background is just a reference.);
#X connect 13 0 15 0;
#X connect 15 0 14 0;
#X connect 31 0 13 0;
#N canvas 430 39 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header (graph) 3 12 0 18
-204280 -1 0;
#X obj 0 453 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 485 291 494 344 META 0;
#X text 12 65 LIBRARY internal;
#X text 12 105 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 85 AUTHOR Miller Puckette;
#X text 12 145 HELP_PATCH_AUTHORS Updated for Pd v0.41. Revised by
Jonathan Wilkes to conform to the PDDP template for Pd version 0.42.
;
#X text 12 5 KEYWORDS signal GUI;
#X text 12 45 DESCRIPTION container canvas for a garray;
#X text 12 125 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 483 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 513 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 566 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#N canvas 218 526 428 109 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X obj 23 43 table;
#N canvas 0 0 450 300 (subpatch) 0;
#X restore 70 43 pd;
#X text 8 2 (graph) Related Objects;
#X restore 102 598 pd Related_objects;
#X text 80 532 1) symbol atom;
#X text 98 461 (none);
#X text 98 491 (none);
#N canvas 0 0 450 300 (subpatch) 0;
#X coords 0 1 100 -1 40 20 1;
#X restore 496 9 graph;
#N canvas 0 0 450 300 (subpatch) 0;
#X coords 0 1 100 -1 200 140 1;
#X restore 165 188 graph;
#X text 100 56 A graph in Pd is a rectangular subregion of the window
in which you can store numeric arrays.;
#X text 99 133 You can change the array values by redrawing it in the
graph. See also "11.arrays" and passim in the "control examples".;
#X text 99 88 If you create a new array Pd will usually make a new
graph to put it in (you can change this using the "array" dialog that
pops up.);
#X text 99 345 You can put a garray in the graph above by choosing
"Array" from the "Put" menu. Just choose "in last graph" from the dialog
window. For more help on garrays \, see below under the heading "more_info".
;
#X text 167 532 - (optional) the name of the graph. When using the
"Put" menu \, the name is created automatically.;
#X text 11 23 container canvas for a garray;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 98 572 pddp/pddplink array-help.pd -text array-help;
#N canvas 433 45 612 281 10;
#X obj 1 1 cnv 8 100 60 empty empty hdial=hdl 20 20 1 18 -262144 -1109
0;
#X text 16 213 (c) musil@iem.kug.ac.at;
#X text 58 226 IEM KUG;
#X text 289 52 click properties to;
#X text 277 63 modify geometry \, colors \, etc.;
#X obj 356 172 bng 15 250 50 0 empty empty empty 8 -8 0 10 -262144
-1 -1;
#X obj 21 54 bng 15 250 50 0 empty empty empty 8 -8 0 10 -262144 -1
-1;
#X obj 355 124 s foo8_rcv;
#X obj 356 150 r foo8_snd;
#X obj 44 100 hdl 25 1 1 10 foo8_snd foo8_rcv hdial_0_9 156 -8 192
10 -99865 -262144 -260818 2;
#X msg 44 142 \$1;
#X floatatom 44 164 4 0 0 0 - - -, f 4;
#X obj 44 186 bng 15 250 50 0 empty empty empty 8 -8 0 10 -262144 -1
-1;
#X obj 89 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 89 140 route 0 1 2 3 4 5 6 7 8 9;
#X msg 176 64 set \$1;
#X floatatom 176 43 4 0 9 0 - - -, f 4;
#X floatatom 44 54 4 0 9 0 - - -, f 4;
#X msg 91 41 7 0 -5.44;
#X msg 95 63 3 3 4.55;
#X obj 106 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 123 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 1
1;
#X obj 140 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 157 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 174 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 191 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 208 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 225 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 242 161 tgl 12 0 empty empty empty 8 -8 0 10 -262144 -1 -1 0
1;
#X obj 82 178 print;
#X floatatom 380 198 4 0 0 0 - - -, f 4;
#X msg 380 172 \$1;
#X msg 355 103 set \$1;
#X floatatom 355 82 4 0 9 0 - - -, f 4;
#X text 128 178 UP- \, DOWN- \, LEFT- or RIGHT-key;
#X text 127 189 for moving selected gui-objects;
#N canvas 226 227 699 530 edit 0;
#X obj 42 198 f;
#X msg 20 177 bang;
#X floatatom 58 176 3 63 156 0 - - -, f 3;
#X floatatom 93 198 3 -20 37 0 - - -, f 3;
#X obj 42 221 pack 0 0;
#X text 120 198 y-label;
#X text 86 176 x-label;
#X floatatom 270 187 3 8 50 0 - - -, f 3;
#X text 297 187 size;
#X obj 286 293 f;
#X msg 264 272 bang;
#X floatatom 302 271 3 -10 10 0 - - -, f 3;
#X floatatom 337 293 3 -10 10 0 - - -, f 3;
#X obj 286 316 pack 0 0;
#X obj 300 412 f;
#X msg 278 391 bang;
#X floatatom 316 390 3 20 60 0 - - -, f 3;
#X floatatom 351 412 3 100 200 0 - - -, f 3;
#X obj 300 435 pack 0 0;
#X text 330 271 x-delta;
#X text 364 293 y-delta;
#X text 344 390 x-position;
#X text 378 412 y-position;
#X obj 62 313 f;
#X msg 40 292 bang;
#X floatatom 78 291 3 0 2 0 - - -, f 3;
#X floatatom 113 313 3 4 36 0 - - -, f 3;
#X obj 62 336 pack 0 0;
#X text 106 291 font;
#X text 142 313 height;
#X text 504 293 no init;
#X text 475 348 init value on loadbang;
#X floatatom 482 228 5 2 20 0 - - -, f 5;
#X msg 47 125 \; foo8_rcv color \$1 \$2 \$3;
#X msg 42 246 \; foo8_rcv label_pos \$1 \$2;
#X msg 62 361 \; foo8_rcv label_font \$1 \$2;
#X msg 34 423 \; foo8_rcv label blabla;
#X msg 300 460 \; foo8_rcv pos \$1 \$2;
#X msg 286 341 \; foo8_rcv delta \$1 \$2;
#X msg 270 216 \; foo8_rcv size \$1;
#X msg 482 171 \; foo8a_rcv receive foo8_rcv;
#X msg 483 133 \; foo8_rcv receive foo8a_rcv;
#X msg 483 88 \; foo8_rcv send foo8_snd;
#X msg 483 50 \; foo8_rcv send foo8a_snd;
#X msg 483 312 \; foo8_rcv init 0;
#X msg 485 366 \; foo8_rcv init 1;
#X msg 490 436 \; foo8_rcv single_change;
#X msg 490 470 \; foo8_rcv double_change;
#X text 491 417 changing-behavior;
#X msg 482 254 \; foo8_rcv number \$1;
#X text 526 228 number of buttons;
#X obj 47 104 pack 0 0 0;
#X obj 47 76 f;
#X msg 24 28 bang;
#X floatatom 63 26 3 0 29 0 - - -, f 3;
#X floatatom 79 46 3 0 29 0 - - -, f 3;
#X floatatom 112 62 3 0 29 0 - - -, f 3;
#X text 91 26 background;
#X text 106 46 front-color;
#X text 140 63 label-color;
#X msg 285 25 back;
#X msg 285 45 front;
#X msg 285 65 label;
#X msg 247 25 bang;
#N canvas 15 207 606 448 RGB_____________ 0;
#X obj 97 56 inlet;
#X obj 262 53 inlet;
#X obj 339 55 inlet;
#X obj 405 56 inlet;
#X obj 97 270 bang;
#X msg 77 295 0;
#X msg 104 295 1;
#X obj 146 268 bang;
#X msg 132 295 0;
#X msg 160 295 1;
#X obj 196 269 bang;
#X msg 187 295 0;
#X msg 214 295 1;
#X obj 265 313 spigot;
#X obj 312 313 spigot;
#X obj 359 313 spigot;
#X obj 249 385 outlet;
#X text 93 33 select;
#X text 267 28 red;
#X text 337 30 green;
#X text 409 30 blue;
#X obj 405 102 t b f;
#X obj 339 160 +;
#X obj 339 185 t b f;
#X obj 339 216 +;
#X obj 296 385 outlet;
#X obj 343 385 outlet;
#X obj 28 180 loadbang;
#X obj 97 135 route back front label bang;
#X obj 343 362 f;
#X obj 296 361 f;
#X obj 249 361 f;
#X obj 262 79 * -65536;
#X obj 339 80 * -256;
#X obj 405 80 * -1;
#X obj 339 247 - 1;
#X obj 235 168 t b b b b;
#X connect 0 0 28 0;
#X connect 1 0 32 0;
#X connect 2 0 33 0;
#X connect 3 0 34 0;
#X connect 4 0 5 0;
#X connect 4 0 6 0;
#X connect 5 0 14 1;
#X connect 5 0 15 1;
#X connect 6 0 13 1;
#X connect 7 0 8 0;
#X connect 7 0 9 0;
#X connect 8 0 13 1;
#X connect 8 0 15 1;
#X connect 9 0 14 1;
#X connect 10 0 11 0;
#X connect 10 0 12 0;
#X connect 11 0 13 1;
#X connect 11 0 14 1;
#X connect 12 0 15 1;
#X connect 13 0 31 1;
#X connect 14 0 30 1;
#X connect 15 0 29 1;
#X connect 21 0 22 0;
#X connect 21 1 22 1;
#X connect 22 0 23 0;
#X connect 23 0 24 0;
#X connect 23 1 24 1;
#X connect 24 0 35 0;
#X connect 27 0 6 0;
#X connect 28 0 4 0;
#X connect 28 1 7 0;
#X connect 28 2 10 0;
#X connect 28 3 36 0;
#X connect 29 0 26 0;
#X connect 30 0 25 0;
#X connect 31 0 16 0;
#X connect 32 0 24 0;
#X connect 33 0 22 0;
#X connect 34 0 21 0;
#X connect 35 0 15 0;
#X connect 35 0 14 0;
#X connect 35 0 13 0;
#X connect 36 0 31 0;
#X connect 36 1 30 0;
#X connect 36 2 29 0;
#X connect 36 3 35 0;
#X restore 285 86 pd RGB_____________;
#X floatatom 327 55 3 0 255 0 - - -, f 3;
#X floatatom 370 55 3 0 255 0 - - -, f 3;
#X floatatom 413 56 3 0 255 0 - - -, f 3;
#X text 34 0 preset-colors;
#X text 296 -3 RGB-colors;
#X text 327 37 red;
#X text 363 36 green;
#X text 411 36 blue;
#X msg 34 459 \; foo8_rcv label hdial_0_9;
#X connect 0 0 4 0;
#X connect 1 0 0 0;
#X connect 2 0 0 1;
#X connect 3 0 4 1;
#X connect 4 0 34 0;
#X connect 7 0 39 0;
#X connect 9 0 13 0;
#X connect 10 0 9 0;
#X connect 11 0 9 1;
#X connect 12 0 13 1;
#X connect 13 0 38 0;
#X connect 14 0 18 0;
#X connect 15 0 14 0;
#X connect 16 0 14 1;
#X connect 17 0 18 1;
#X connect 18 0 37 0;
#X connect 23 0 27 0;
#X connect 24 0 23 0;
#X connect 25 0 23 1;
#X connect 26 0 27 1;
#X connect 27 0 35 0;
#X connect 32 0 49 0;
#X connect 51 0 33 0;
#X connect 52 0 51 0;
#X connect 53 0 52 0;
#X connect 54 0 52 1;
#X connect 55 0 51 1;
#X connect 56 0 51 2;
#X connect 60 0 64 0;
#X connect 61 0 64 0;
#X connect 62 0 64 0;
#X connect 63 0 64 0;
#X connect 64 0 51 0;
#X connect 64 1 51 1;
#X connect 64 2 51 2;
#X connect 65 0 64 1;
#X connect 66 0 64 2;
#X connect 67 0 64 3;
#X restore 469 108 pd edit;
#X obj 346 35 hdl 15 1 0 8 eee eee empty 20 8 192 8 -262144 -1 -1 0
;
#X obj 260 11 x_all_guis aaa bbb ccc ddd eee fff ggg hhh iii;
#X text 183 11 gui-hdial:;
#X text 33 238 graz \, austria 2002;
#X text 251 232 updated for Pd version 0.35;
#X text 279 254 KEYWORDS deprecated;
#X connect 6 0 9 0;
#X connect 8 0 5 0;
#X connect 8 0 31 0;
#X connect 9 0 10 0;
#X connect 9 0 14 0;
#X connect 9 0 29 0;
#X connect 10 0 11 0;
#X connect 11 0 12 0;
#X connect 14 0 13 0;
#X connect 14 1 20 0;
#X connect 14 2 21 0;
#X connect 14 3 22 0;
#X connect 14 4 23 0;
#X connect 14 5 24 0;
#X connect 14 6 25 0;
#X connect 14 7 26 0;
#X connect 14 8 27 0;
#X connect 14 9 28 0;
#X connect 15 0 9 0;
#X connect 16 0 15 0;
#X connect 17 0 9 0;
#X connect 18 0 9 0;
#X connect 19 0 9 0;
#X connect 31 0 30 0;
#X connect 32 0 7 0;
#X connect 33 0 32 0;
#N canvas 425 40 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header hip~ 3 12 0 18 -204280
-1 0;
#X obj 0 381 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 485 284 494 344 META 0;
#X text 12 125 LIBRARY internal;
#X text 12 165 WEBSITE http://crca.ucsd.edu/~msp/;
#X text 12 25 LICENSE SIBSD;
#X text 12 145 AUTHOR Miller Puckette;
#X text 12 205 HELP_PATCH_AUTHORS Updated for Pd version 0.37. Jonathan
Wilkes revised the patch to conform to the PDDP template for Pd version
0.42.;
#X text 12 5 KEYWORDS signal filter;
#X text 12 45 DESCRIPTION one-pole high pass filter;
#X text 12 105 OUTLET_0 signal;
#X text 12 65 INLET_0 signal clear;
#X text 12 85 INLET_1 float;
#X text 12 185 RELEASE_DATE 1997;
#X restore 500 597 pd META;
#X obj 0 488 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 525 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 566 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X obj 78 390 cnv 17 3 37 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#N canvas 219 468 428 166 Related_objects 0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 8 2 [hip~] Related Objects;
#X obj 22 43 lop~;
#X obj 69 43 bp~;
#X obj 117 43 vcf~;
#X text 22 81 Raw Filters;
#X obj 73 108 rzero~;
#X obj 195 108 cpole~;
#X obj 24 108 rpole~;
#X obj 122 108 rzero_rev~;
#X obj 244 108 czero~;
#X obj 293 108 czero_rev~;
#X restore 101 597 pd Related_objects;
#X text 98 389 signal;
#X obj 78 497 cnv 17 3 17 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 98 497 signal;
#X obj 510 11 hip~;
#X obj 146 270 env~;
#X floatatom 146 293 0 0 0 0 - - -;
#X floatatom 195 215 0 0 0 0 - - -;
#X obj 146 243 hip~ 5;
#X obj 88 270 env~;
#X floatatom 88 292 0 0 0 0 - - -;
#X floatatom 88 144 0 0 0 0 - - -;
#X text 89 105 The left inlet is the incoming audio signal. The right
inlet is the cutoff frequency in Hz.;
#X obj 88 167 osc~ 100;
#X text 133 142 <-- scroll to change input frequency;
#X msg 146 191 clear;
#X text 198 190 <-- reinitialize internal state;
#X text 227 216 <-- set cutoff frequency;
#X text 168 389 - incoming audio signal.;
#X obj 78 432 cnv 17 3 45 empty \$0-pddp.cnv.let.1 1 5 9 0 16 -228856
-162280 0;
#X text 98 431 float;
#X text 98 449 list;
#X text 98 409 clear;
#X text 84 312 Compare the strength of the original signal on the left
with that of the filtered signal on the right.;
#X text 11 23 one-pole high pass filter;
#X text 168 543 - initial rolloff frequency.;
#X text 168 409 - reinitialize internal state.;
#X text 168 431 - cutoff frequency in Hz.;
#X text 168 449 - a list to the right inlet is truncated \, and the
first element is used as the cutoff frequency.;
#X text 88 68 [hip~] is a one-pole high pass filter with a specified
rolloff frequency.;
#X text 191 272 [env~] gives the amplitude of the signal envelop in
dB.;
#X text 168 497 - the output is the filtered audio signal.;
#X text 80 543 1) float;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X obj 479 52 pddp/dsp;
#X connect 13 0 14 0;
#X connect 15 0 16 1;
#X connect 16 0 13 0;
#X connect 17 0 18 0;
#X connect 19 0 21 0;
#X connect 21 0 17 0;
#X connect 21 0 16 0;
#X connect 23 0 16 0;
#N canvas 428 39 555 619 10;
#X obj 0 595 cnv 15 552 21 empty \$0-pddp.cnv.footer empty 20 12 0
14 -228856 -66577 0;
#X obj 0 0 cnv 15 552 40 empty \$0-pddp.cnv.header hslider 3 12 0 18
-204280 -1 0;
#X obj 0 291 cnv 3 550 3 empty \$0-pddp.cnv.inlets inlets 8 12 0 13
-228856 -1 0;
#N canvas 482 291 494 344 META 0;
#X text 12 135 LIBRARY internal;
#X text 12 45 LICENSE SIBSD;
#X text 12 155 AUTHOR Thomas Musil;
#X text 12 175 WEBSITE;
#X text 12 215 HELP_PATCH_AUTHORS Jonathan Wilkes revised the patch
to conform to the PDDP template for Pd version 0.42.;
#X text 12 25 KEYWORDS control storage GUI nonlocal;
#X text 12 65 DESCRIPTION horizontal gui-slider;
#X text 12 5 ALIAS hsl;
#X text 12 85 INLET_0 float bang size range log init steady receive
send label label_pos label_font color pos delta;
#X text 12 115 OUTLET_0 float;
#X text 12 195 RELEASE_DATE 2002;
#X restore 500 597 pd META;
#X obj 0 410 cnv 3 550 3 empty \$0-pddp.cnv.outlets outlets 8 12 0
13 -228856 -1 0;
#X obj 0 461 cnv 3 550 3 empty \$0-pddp.cnv.argument arguments 8 12
0 13 -228856 -1 0;
#X obj 0 546 cnv 3 550 3 empty \$0-pddp.cnv.more_info more_info 8 12
0 13 -228856 -1 0;
#X obj 78 300 cnv 17 3 105 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#N canvas 211 518 428 112 Related_objects 0;
#X obj 19 52 x_all_guis bng tgl vsl hsl hradio vradio vu cnv nbx;
#X text 17 28 All iem-gui objects:;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [hslider] Related Objects;
#X restore 100 597 pd Related_objects;
#X obj 78 419 cnv 17 3 35 empty \$0-pddp.cnv.let.0 0 5 9 0 16 -228856
-162280 0;
#X text 291 175 and receive names. Right-;
#X text 291 190 click and choose;
#X text 290 206 "Properties" to set them \,;
#X text 98 299 float;
#X text 98 340 list;
#X text 98 419 float;
#X text 291 220 or change them with messages (see below);
#X obj 414 45 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X floatatom 135 116 4 0 0 0 - - -, f 4;
#X msg 199 69 set \$1;
#X floatatom 155 48 4 0 0 0 - - -, f 4;
#X obj 135 138 bng 15 250 50 0 empty empty empty 8 -8 0 10 -262144
-1 -1;
#X obj 135 49 bng 15 250 50 0 empty empty empty 8 -8 0 10 -262144 -1
-1;
#X obj 138 94 hsl 101 15 25 75 0 1 foo1_snd foo1_rcv empty 8 -8 0 10
-225280 -1109 -1 3900 1;
#X floatatom 199 48 4 0 0 0 - - -, f 4;
#X floatatom 292 141 4 0 0 0 - - -, f 4;
#X floatatom 292 48 4 0 0 0 - - -, f 4;
#X obj 179 140 print;
#N canvas 276 200 290 224 once 0;
#X obj 38 47 t b b f;
#X msg 56 85 1;
#X obj 31 108 f 0;
#X obj 31 131 pack 0 0;
#X obj 31 156 route 0;
#X obj 38 24 inlet;
#X obj 31 180 outlet;
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 3 1;
#X connect 1 0 2 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 4 0 6 0;
#X connect 5 0 0 0;
#X restore 179 116 pd once;
#X obj 59 177 hsl 73 15 55 3520 1 1 goo2_snd goo2_rcv log.freq. 8 7
0 10 -204800 -260818 -90133 1618 1;
#X obj 56 203 ftom;
#X floatatom 56 227 4 0 0 0 - - -, f 4;
#X floatatom 143 215 9 0 0 0 - - -, f 9;
#X floatatom 56 132 4 0 0 0 - - -, f 4;
#X obj 56 153 mtof;
#X obj 292 92 s foo1_rcv;
#X obj 292 117 r foo1_snd;
#X msg 292 68 set \$1;
#X text 139 193 (0.01 pixels);
#X text 142 163 shift-click & drag;
#X text 142 178 for fine-tuning;
#X text 54 248 Use the UP- \, DOWN- \, LEFT- or RIGHT-key to move a
selected gui-object. Right-click and choose "Properties" to modify
its appearance.;
#X text 290 159 hslider has settable send;
#X text 98 356 Special messages can be sent to [hslider] to change
its properties:;
#X text 168 419 - when the slider value is changed by clicking \, dragging
\, or sending a float to the inlet \, the new slider value is sent
to the outlet.;
#N canvas 94 219 428 370 hsl-creation-arguments 0;
#X obj 22 289 s pd-hsl-creation-arguments;
#X text 20 37 "hsl" can be called with 18 creation arguments. These
are not "optional" - all parameters must be filled or the gui-bng will
not instantiate correctly.;
#X text 21 225 For example \, click the msg-box to dynamically create
a hsl:;
#X text 20 84 hsl creation arguments: xSize ySize rangeBtm rangeTop
Logarithmic Init sendName receiveName Label labelXOff labelYOff Font#
fontSize bgColor foregroundColor lblColor sliderPosition steadyOnClick
;
#X text 21 142 note: sliderPosition is not the same as the initialization
value. To dynamically instantiate an hsl that initializes with a desired
value \, save an hsl in a patch and view it in a text editor to get
the right value for sliderPosition. Or \, refer to hslider_set in g_hslider.c
for conversion between sliderPosition and slider value.;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X text 7 1 [hslider] Creation Arguments and Dynamic Patching;
#X msg 22 247 obj 150 335 hsl 75 20 -1 1 0 1 send receive Celaeno 12
-9 0 12 7 13 21 4400 0;
#X connect 7 0 0 0;
#X restore 170 521 pd hsl-creation-arguments;
#N canvas 66 11 463 602 Setting_slider_properties_through_messages
0;
#X obj 1 1 cnv 15 425 20 empty \$0-pddp.cnv.subheading empty 3 12 0
14 -204280 -1 0;
#X floatatom 11 188 1 0 1 0 - #0-soc -, f 1;
#X text 323 34 no init;
#X text 8 169 steady-on-click;
#X text 339 169 label;
#X msg 339 191 label blabla;
#X msg 323 53 init 0;
#X msg 11 221 steady \$1;
#X msg 234 73 lin;
#X msg 244 105 log;
#X text 230 34 linear/;
#X text 230 49 logarithmical;
#X text 332 73 init value;
#X text 333 88 on loadbang;
#X text 231 169 change send name;
#X text 106 169 change receive name;
#X obj 120 244 s z_rcv;
#X msg 108 191 receive z_rcv;
#X msg 347 243 label mySlider;
#X obj 234 134 s hsl_rcv;
#X obj 323 134 s hsl_rcv;
#X obj 11 269 s hsl_rcv;
#X obj 233 269 s hsl_rcv;
#X obj 108 269 s hsl_rcv;
#X msg 120 221 receive hsl_rcv;
#X msg 233 192 send hsl1_snd;
#X msg 242 221 send hsl_snd;
#X obj 339 271 s hsl_rcv;
#N canvas 382 136 161 310 init 0;
#X obj 16 11 loadbang;
#X obj 16 42 f \$0;
#X msg 16 73 \; \$1-xpos 300 \; \$1-ypos 350 \; \$1-xlabel -2 \; \$1-ylabel
-8 \; \$1-soc 1 \; \$1-font-size 10 \; \$1-width 128 \; \$1-height
15 \; \$1-bottom 0 \; \$1-top 127 \; \$1-bg 0 \; \$1-front 12 \; \$1-label
12;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X restore 384 415 pd init;
#X msg 333 109 init 1;
#X msg 11 105 size \$1 \$2;
#X text 60 56 1.width;
#X text 60 77 2.height;
#X obj 11 134 s hsl_rcv;
#X obj 123 134 s hsl_rcv;
#X text 172 56 1.bottom;
#X text 172 77 2.top;
#X text 120 34 output-range;
#X msg 123 105 range \$1 \$2;
#X text 136 307 font properties;
#X msg 138 379 label_font \$1 \$2;
#X text 187 329 1.font(0-2);
#X text 187 350 2.height;
#X text 9 308 label position;
#X msg 11 380 label_pos \$1 \$2;
#X text 60 330 1.x-offset;
#X text 60 351 2.y-offset;
#X obj 11 405 s hsl_rcv;
#X obj 138 404 s hsl_rcv;
#X obj 273 325 cnv 15 157 82 empty empty empty 20 12 0 14 -1 -66577
0;
#X obj 274 326 cnv 15 155 80 empty empty empty 20 12 0 14 -261682 -66577
0;
#N canvas 366 206 174 259 flash-time 0;
#X obj 68 180 pack;
#X obj 103 149 t b a;
#X obj 68 205 outlet;
#X obj 103 104 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-width empty
0 -8 0 12 -262144 -1 -1 128 256 0;
#X obj 103 124 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-height empty
0 -8 0 12 -262144 -1 -1 15 256 0;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 1 1 0 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X coords 0 -1 1 1 48 42 2 100 100;
#X restore 11 55 pd flash-time;
#N canvas 366 206 174 259 flash-time 0;
#X obj 68 180 pack;
#X obj 103 149 t b a;
#X obj 68 205 outlet;
#X obj 103 104 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-bottom empty
0 -8 0 12 -262144 -1 -1 0 256 0;
#X obj 103 124 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-top empty 0
-8 0 12 -262144 -1 -1 127 256 0;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 1 1 0 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X coords 0 -1 1 1 48 42 2 100 100;
#X restore 123 55 pd flash-time;
#N canvas 366 206 174 259 flash-time 0;
#X obj 68 180 pack;
#X obj 103 149 t b a;
#X obj 68 205 outlet;
#X obj 103 104 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-xlabel empty
0 -8 0 12 -262144 -1 -1 -2 256 0;
#X obj 103 124 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-ylabel empty
0 -8 0 12 -262144 -1 -1 -8 256 0;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 1 1 0 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X coords 0 -1 1 1 48 42 2 100 100;
#X restore 11 329 pd flash-time;
#N canvas 366 206 174 259 flash-time 0;
#X obj 68 180 pack;
#X obj 103 149 t b a;
#X obj 68 205 outlet;
#X obj 103 104 nbx 3 14 0 2 0 0 \$0-dummy \$0-font empty 0 -8 0 12
-262144 -1 -1 0 256 0;
#X obj 103 124 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-font-size empty
0 -8 0 12 -262144 -1 -1 10 256 0;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 1 1 0 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X coords 0 -1 1 1 48 42 2 100 100;
#X restore 138 328 pd flash-time;
#X text 8 448 preset-colors;
#X text 104 448 RGB-colors;
#X msg 11 554 color \$1 \$2 \$3;
#N canvas 364 205 306 317 flash-time 0;
#X obj 69 196 t b a;
#X obj 33 262 outlet;
#X obj 33 237 pack 0 0 0;
#X obj 120 197 t b a;
#X obj 103 104 nbx 3 14 0 29 0 0 \$0-dummy \$0-bg empty 0 -8 0 12 -262144
-1 -1 0 256 0;
#X obj 103 124 nbx 3 14 0 29 0 0 \$0-dummy \$0-front empty 0 -8 0 12
-262144 -1 -1 12 256 0;
#X obj 103 144 nbx 3 14 0 29 0 0 \$0-dummy \$0-label empty 0 -8 0 12
-262144 -1 -1 12 256 0;
#X connect 0 0 2 0;
#X connect 0 1 2 1;
#X connect 2 0 1 0;
#X connect 3 0 2 0;
#X connect 3 1 2 2;
#X connect 4 0 2 0;
#X connect 5 0 0 0;
#X connect 6 0 3 0;
#X coords 0 -1 1 1 48 62 2 100 100;
#X restore 11 469 pd flash-time;
#N canvas 0 0 306 317 flash-time 0;
#X obj 96 521 outlet;
#X obj 162 230 t b f;
#X obj 96 268 +;
#X obj 96 293 t b f;
#X obj 96 324 +;
#X obj 19 208 * -65536;
#X obj 96 208 * -256;
#X obj 162 208 * -1;
#X obj 96 355 - 1;
#X obj 96 385 list prepend 0;
#X obj 96 410 route 0 1 2;
#X obj 96 497 pack 0 0 0;
#X obj 115 456 t b a;
#X obj 168 455 t b a;
#X obj 104 124 vradio 15 1 0 3 empty empty empty 0 -8 0 10 -262144
-1 -1 0;
#X text 120 120 1.bg;
#X text 120 137 2.front;
#X text 120 153 3.label;
#X obj 103 105 nbx 3 14 0 255 0 0 \$0-dummy \$0-r empty 0 -8 0 10 -262144
-258113 -1 0 256 0;
#X obj 133 105 nbx 3 14 0 255 0 0 \$0-dummy \$0-g empty 0 -8 0 10 -262144
-13381 -1 0 256 0;
#X obj 163 105 nbx 3 14 0 255 0 0 \$0-dummy \$0-b empty 0 -8 0 10 -262144
-4160 -1 0 256 0;
#X connect 1 0 2 0;
#X connect 1 1 2 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 1 4 1;
#X connect 4 0 8 0;
#X connect 5 0 4 0;
#X connect 6 0 2 0;
#X connect 7 0 1 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 11 0;
#X connect 10 1 12 0;
#X connect 10 2 13 0;
#X connect 11 0 0 0;
#X connect 12 0 11 0;
#X connect 12 1 11 1;
#X connect 13 0 11 0;
#X connect 13 1 11 2;
#X connect 14 0 9 1;
#X connect 18 0 5 0;
#X connect 19 0 6 0;
#X connect 20 0 7 0;
#X coords 0 -1 1 1 102 74 2 100 100;
#X restore 108 469 pd flash-time;
#X text 60 471 1.bg;
#X text 60 491 2.front;
#X text 60 512 3.label;
#X text 317 448 delta;
#X text 217 448 position;
#X msg 218 540 pos \$1 \$2;
#X msg 318 540 delta \$1 \$2;
#X obj 318 517 list;
#X obj 318 470 bng 20 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 397 469 1.x-delta;
#X text 397 491 2.y-delta;
#N canvas 366 206 174 259 flash-time 0;
#X obj 68 180 pack;
#X obj 103 149 t b a;
#X obj 68 205 outlet;
#X obj 103 104 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-xpos empty 0
-8 0 12 -262144 -1 -1 300 256 0;
#X obj 103 124 nbx 3 14 -1e+37 1e+37 0 0 \$0-dummy \$0-ypos empty 0
-8 0 12 -262144 -1 -1 350 256 0;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 1 1 0 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X coords 0 -1 1 1 48 42 2 100 100;
#X restore 218 470 pd flash-time;
#N canvas 366 206 174 259 flash-time 0;
#X obj 68 180 pack;
#X obj 103 149 t b a;
#X obj 68 205 outlet;
#X obj 103 104 nbx 3 14 -20 20 0 0 \$0-dummy \$0-xdelta empty 0 -8
0 12 -262144 -1 -1 0 256 0;
#X obj 103 124 nbx 3 14 -20 20 0 0 \$0-dummy \$0-ydelta empty 0 -8
0 12 -262144 -1 -1 0 256 0;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 1 1 0 1;
#X connect 3 0 0 0;
#X connect 4 0 1 0;
#X coords 0 -1 1 1 48 42 2 100 100;
#X restore 347 470 pd flash-time;
#X floatatom 329 384 5 0 0 0 - - -, f 5;
#X obj 11 579 s hsl_rcv;
#X obj 318 565 s hsl_rcv;
#X obj 218 565 s hsl_rcv;
#X text 10 35 dimensions;
#X text 7 1 [hslider] Set Properties through Messages;
#X text 266 469 1.x-pos;
#X text 266 491 2.y-pos;
#X obj 289 356 hsl 128 15 0 127 0 0 hsl-snd hsl-rcv mySlider -2 -8
0 10 -262144 -1 -1 0 1;
#X connect 1 0 7 0;
#X connect 5 0 27 0;
#X connect 6 0 20 0;
#X connect 7 0 21 0;
#X connect 8 0 19 0;
#X connect 9 0 19 0;
#X connect 17 0 23 0;
#X connect 18 0 27 0;
#X connect 24 0 16 0;
#X connect 25 0 22 0;
#X connect 26 0 22 0;
#X connect 29 0 20 0;
#X connect 30 0 33 0;
#X connect 38 0 34 0;
#X connect 40 0 48 0;
#X connect 44 0 47 0;
#X connect 51 0 30 0;
#X connect 52 0 38 0;
#X connect 53 0 44 0;
#X connect 54 0 40 0;
#X connect 57 0 74 0;
#X connect 58 0 57 0;
#X connect 59 0 57 0;
#X connect 65 0 76 0;
#X connect 66 0 75 0;
#X connect 67 0 66 0;
#X connect 68 0 67 0;
#X connect 71 0 65 0;
#X connect 72 0 67 1;
#X connect 81 0 73 0;
#X restore 101 388 pd Setting_slider_properties_through_messages;
#X text 11 21 horizontal gui-slider;
#X text 98 466 18;
#X text 168 466 - creating an [hslider] object without arguments sets
default values for its gui-properties. See the subpatch below to learn
how to dynamically instantiate a [bng] object with custom properties:
;
#X text 215 551 (c) musil@iem.kug.ac.at;
#X text 257 564 IEM KUG;
#X text 232 576 graz \, austria 2002;
#X text 168 299 - a float updates the slider value and is sent to the
outlet.;
#X text 168 340 - a list is truncated to the first element.;
#X obj 4 597 pddp/pddplink all_about_help_patches.pd -text Usage Guide
;
#X text 98 323 bang;
#X text 168 323 - output the current slider value.;
#X text 436 8 [hslider] or [hsl];
#X connect 18 0 21 0;
#X connect 19 0 23 0;
#X connect 20 0 23 0;
#X connect 22 0 23 0;
#X connect 23 0 18 0;
#X connect 23 0 28 0;
#X connect 24 0 19 0;
#X connect 26 0 37 0;
#X connect 28 0 27 0;
#X connect 29 0 32 0;
#X connect 29 0 30 0;
#X connect 30 0 31 0;
#X connect 33 0 34 0;
#X connect 34 0 29 0;
#X connect 36 0 25 0;
#X connect 37 0 35 0;