#N canvas 509 59 631 467 12;
#X obj 78 344 snapshot~;
#X obj 32 19 snapshot~;
#X text 112 19 - convert a signal to a number on demand;
#X obj 78 261 osc~ 0.1;
#X text 147 261 signal in to take snapshots of;
#X text 28 162 A 'set' message is provided for the (rare) situations where you might make a known change to the signal input \, and then read snapshot's value before any ensuing signal computation., f 81;
#X floatatom 78 371 7 0 0 0 - - - 0;
#X msg 101 314 set 5 \, bang;
#X text 78 235 0.1 Hz cosine wave;
#N canvas 702 112 582 226 reference 0;
#X obj 18 52 cnv 5 550 5 empty empty INLET: 8 18 0 13 #202020 #000000 0;
#X obj 18 122 cnv 2 550 2 empty empty OUTLET: 8 12 0 13 #202020 #000000 0;
#X obj 18 159 cnv 2 550 2 empty empty ARGUMENTS: 8 12 0 13 #202020 #000000 0;
#X obj 17 196 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 116 66 bang -;
#X text 223 169 NONE, f 9;
#X obj 39 20 snapshot~;
#X text 168 66 convert a signal to a float., f 46;
#X text 116 132 float/list - the converted signal(s) at every bang., f 54;
#X text 119 20 - convert a signal connection to a numbers on demand;
#X text 74 86 set <list> -;
#X text 168 86 set a float value for each channel the next DSP block.;
#X restore 435 19 pd reference;
#X text 533 19 <= click;
#X obj 10 51 cnv 1 610 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#X text 48 428 see also:;
#X obj 124 429 sig~;
#X obj 10 414 cnv 1 610 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#X text 113 286 <-- take one snapshot;
#X text 27 122 In the example below \, a [snapshot~] object prints out the values of a low frequency cosine wave every time it is sent a bang message., f 83;
#X obj 89 286 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X text 140 366 This output updates each time bang is clicked above, f 26;
#X text 190 314 <-- set value (which is reset next DSP block);
#X msg 430 249 \; pd dsp \$1;
#X obj 430 214 set-dsp-tgl;
#X text 461 218 DSP on/off;
#X text 383 350 mutichannel signal support:, f 20;
#N canvas 677 196 453 447 multichannel 0;
#X obj 92 342 snapshot~;
#X obj 92 194 snake~ in 2;
#X obj 92 158 noise~;
#X listbox 92 375 20 0 0 0 - - - 0;
#X msg 299 171 \; pd dsp \$1;
#X obj 299 136 set-dsp-tgl;
#X text 330 140 DSP on/off;
#X msg 111 238 set 4 5 \, bang;
#X obj 129 305 metro 250;
#X obj 166 158 osc~ 0.01;
#X obj 129 276 tgl 19 0 empty empty empty 0 -10 0 12 #dfdfdf #000000 #000000 0 1;
#X obj 58 262 bng 19 250 50 0 empty empty empty 0 -10 0 12 #dfdfdf #000000 #000000;
#X text 90 45 The object has support for multichannel connections \, in which case it outputs a list of floats for each channel input., f 40;
#X text 219 225 the set message also takes floats for each input channel, f 21;
#X text 209 295 you can use [metro] for conversion at a constant rate, f 25;
#X connect 0 0 3 0;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X connect 5 0 4 0;
#X connect 7 0 0 0;
#X connect 8 0 0 0;
#X connect 9 0 1 1;
#X connect 10 0 8 0;
#X connect 11 0 0 0;
#X restore 452 372 pd multichannel;
#X text 28 63 The [snapshot~] object takes a signal and converts it to a control value whenever it receives a bang in its left inlet. This object is particularly useful for monitoring outputs and has support for multichannel connections., f 81;
#X text 393 429 updated for Pd version 0.56;
#X obj 170 429 print~;
#X connect 0 0 6 0;
#X connect 3 0 0 0;
#X connect 7 0 0 0;
#X connect 17 0 0 0;
#X connect 21 0 20 0;
