#N canvas 324 23 915 656 12;
#X obj 33 15 send;
#X obj 26 120 send help-send1;
#X obj 182 121 send help-send1;
#X obj 332 121 send help-send2;
#X obj 26 150 receive help-send1;
#X obj 182 150 receive help-send2;
#X obj 332 150 receive help-send2;
#X floatatom 26 95 5 0 0 0 - - - 0;
#X floatatom 182 98 5 0 0 0 - - - 0;
#X floatatom 332 97 5 0 0 0 - - - 0;
#X floatatom 26 174 5 0 0 0 - - - 0;
#X floatatom 182 176 5 0 0 0 - - - 0;
#X floatatom 332 174 5 0 0 0 - - - 0;
#X obj 374 14 s;
#X msg 199 306 \; help-send1 34 \; help-send2 67;
#X obj 156 540 send;
#X msg 181 448 symbol help-send1;
#X msg 194 477 symbol help-send2;
#X floatatom 127 478 5 0 0 0 - - - 0;
#X symbolatom 181 509 12 0 0 0 - - - 0;
#X obj 599 197 value y;
#X obj 525 214 send y;
#X floatatom 525 186 5 0 0 0 - - - 0;
#X obj 599 166 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X floatatom 599 226 5 0 0 0 - - - 0;
#X text 29 620 see also:;
#X text 72 14 - send messages without patch cords;
#X text 406 13 - abbreviation;
#X obj 105 619 send~;
#X obj 482 395 list store 1 2 3;
#X obj 628 413 float 1.5;
#X obj 716 413 int 10;
#X msg 482 367 send x;
#X obj 804 340 receive x;
#X listbox 804 374 10 0 0 0 - - - 0;
#X msg 628 353 send x;
#X msg 716 352 send x;
#X obj 375 40 r;
#X obj 32 41 receive;
#X text 90 40 - receive messages without patch cords;
#X text 407 39 - abbreviation;
#X obj 155 619 receive~;
#X floatatom 578 566 5 0 0 0 - x z 0;
#X obj 676 224 send array;
#X msg 676 178 0 -1 0 1 0 -1 0 1, f 9;
#X text 489 454 Note that GUIs have built in send and receive names you can set via properties (right click and check it)., f 40;
#X text 691 619 updated for Pd version 0.52;
#N canvas 0 22 450 278 (subpatch) 0;
#X array array 7 float 2;
#X coords 0 1.1 7 -1.1 100 50 1 0 0;
#X restore 773 186 graph;
#X msg 639 383 send y;
#X msg 726 383 send y;
#X floatatom 809 470 5 0 0 0 - - - 0;
#X obj 809 442 value y;
#X text 490 554 "receive x";
#X text 676 517 "send x";
#X text 625 560 send in GUIs can also send to value objects., f 22;
#X text 496 572 "send z";
#X floatatom 824 570 5 0 0 0 - - - 0;
#X obj 824 541 value z;
#X text 499 87 Interaction with other objects (check their help files):;
#X msg 836 410 send x;
#N canvas 452 151 914 439 Dealing_with_"\$0" 0;
#X obj 171 164 send \$0-x;
#X obj 294 120 receive \$0-x;
#X floatatom 294 161 5 0 0 0 - - - 0;
#X floatatom 171 122 5 0 0 0 - - - 0;
#X obj 126 381 send;
#X symbolatom 171 368 10 0 0 0 - - - 0;
#X floatatom 83 330 5 0 0 0 - - - 0;
#X obj 151 331 symbol \$0-y;
#X msg 281 370 \; \$1-y 80;
#X floatatom 387 365 5 0 0 0 - - - 0;
#X obj 387 324 receive \$0-y;
#X obj 281 320 float \$0;
#X text 61 216 Since "\$0" only works inside objects \, if you need to set a send name with it \, you need to use something like a symbol object. It's also common to pass "\$0" from a float object to a message that works as a send. Click on the bangs below.;
#X floatatom 291 345 5 0 0 0 - - - 0;
#X obj 590 237 float 1.5;
#X msg 590 199 send \$1-x;
#X obj 590 167 f \$0;
#X obj 590 139 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X obj 718 183 value \$0-x;
#X floatatom 718 218 5 0 0 0 - - - 0;
#N canvas 0 22 450 278 (subpatch) 0;
#X array \$0-array 515 float 0;
#X coords 0 1 514 -1 150 100 1 0 0;
#X restore 710 297 graph;
#X obj 587 351 send \$0-array;
#X msg 587 319 sinesum 512 1;
#X floatatom 820 183 5 0 0 0 - \$0-x - 0;
#X text 559 24 Note that "\$0" is also used in send/receive names in GUIs \, array names and as well as variable names in value objects. In order to use the 'send' method from [float] \, [int] and [list store] objects \, you also need to pass the "\$0" value to the message., f 45;
#X obj 718 154 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X obj 281 292 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X obj 151 301 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X text 36 33 '\$0' - the patch ID number used to force locality in Pd - is widely used in send and receive names \, especially in abstractions so each copy has local connections instead of global., f 67;
#X connect 1 0 2 0;
#X connect 3 0 0 0;
#X connect 6 0 4 0;
#X connect 7 0 5 0;
#X connect 7 0 4 1;
#X connect 10 0 9 0;
#X connect 11 0 13 0;
#X connect 11 0 8 0;
#X connect 15 0 14 0;
#X connect 16 0 15 0;
#X connect 17 0 16 0;
#X connect 18 0 19 0;
#X connect 22 0 21 0;
#X connect 25 0 18 0;
#X connect 26 0 11 0;
#X connect 27 0 7 0;
#X restore 335 570 pd Dealing_with_"\$0";
#X msg 223 619 message;
#X obj 374 619 samplerate~;
#X obj 285 619 pd-messages;
#N canvas 725 70 573 568 reference 0;
#X obj 8 53 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 8 86 cnv 1 550 1 empty empty 1st: 8 12 0 13 #9f9f9f #000000 0;
#X obj 8 235 cnv 2 550 2 empty empty OUTLETS: 8 12 0 13 #202020 #000000 0;
#X obj 8 272 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 7 319 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X obj 8 166 cnv 1 550 1 empty empty 2nd: 8 12 0 13 #7c7c7c #000000 0;
#X obj 47 17 send;
#X obj 13 17 s;
#X text 86 16 - send messages without patch cords;
#X obj 15 375 r;
#X obj 49 375 receive;
#X text 107 374 - receive messages without patch cords;
#X obj 8 412 cnv 5 550 5 empty empty INLETS: 8 18 0 13 #202020 #000000 0;
#X obj 8 451 cnv 2 550 2 empty empty OUTLET: 8 12 0 13 #202020 #000000 0;
#X obj 8 501 cnv 2 550 2 empty empty ARGUMENT: 8 12 0 13 #202020 #000000 0;
#X obj 7 538 cnv 5 550 5 empty empty empty 8 18 0 13 #202020 #000000 0;
#X text 66 95 any message -;
#X text 168 95 sends to the corresponding receive object \, or any named object which name corresponds to the stored symbol. e.g: array \, value \, iemguis \, directly to a named patch \, etc..., f 50;
#X text 163 245 NONE, f 49;
#X text 131 280 symbol -;
#X text 163 424 NONE, f 49;
#X text 82 466 any message -;
#X text 121 204 symbol - sets the send name.;
#X text 179 466 outputs the messages destined to its receive name., f 51;
#X text 46 170 (if created without arguments);
#X text 106 511 1) symbol -;
#X text 189 511 receive name symbol (default: empty symbol).;
#X text 193 280 send symbol (if given \, 2nd inlet is suppressed \, default: empty symbol)., f 35;
#X restore 723 31 pd reference;
#X text 820 32 <= click;
#X obj 8 77 cnv 1 900 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#X obj 8 607 cnv 1 900 1 empty empty empty 8 12 0 13 #000000 #000000 0;
#X obj 824 514 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X obj 809 409 bng 19 250 50 0 empty empty empty 17 7 0 10 #dfdfdf #000000 #000000;
#X text 23 225 [send] sends messages to [receive] objects with the same name (set by the argument). They work across windows too. Also \, you can use message boxes to send messages if they start with a semicolon as shown below:;
#X text 499 110 The [value] object receives floats from [send] objects with the same name as its variable name. You can also use [send] to send messages to arrays with the same name., f 55;
#X text 479 262 The [receive] object can also get messages from [value] and the other objects below via their "send" messages. Note that [value] can also get these values from these objects (except [list store] because [value] can't deal with lists).;
#X obj 503 517 hsl 162 19 0 127 0 0 empty empty empty -2 -10 0 12 #dfdfdf #000000 #000000 0 1;
#X text 7 570 Open subpatch to see how to deal with '\$0' ->;
#X text 22 378 If invoked without an argument \, [send] is assigned to an empty symbol and creates an inlet to let you set the target via "symbol" messages:, f 54;
#X connect 4 0 10 0;
#X connect 5 0 11 0;
#X connect 6 0 12 0;
#X connect 7 0 1 0;
#X connect 8 0 2 0;
#X connect 9 0 3 0;
#X connect 16 0 19 0;
#X connect 17 0 19 0;
#X connect 18 0 15 0;
#X connect 19 0 15 1;
#X connect 20 0 24 0;
#X connect 22 0 21 0;
#X connect 23 0 20 0;
#X connect 32 0 29 0;
#X connect 33 0 34 0;
#X connect 35 0 30 0;
#X connect 36 0 31 0;
#X connect 44 0 43 0;
#X connect 48 0 30 0;
#X connect 49 0 31 0;
#X connect 51 0 50 0;
#X connect 57 0 56 0;
#X connect 59 0 51 0;
#X connect 68 0 57 0;
#X connect 69 0 51 0;
