From 061e4be1f20ac78e3b52bc6429322d5fadcf5831 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Thu, 28 Apr 2005 00:25:05 +0000 Subject: cleaned up a number of patches; renamed all to the standard -help.pd format; added some more ideas to the style guide; finished up lists_vs_anythings svn path=/trunk/; revision=2841 --- doc/pddp/value-help.pd | 102 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 doc/pddp/value-help.pd (limited to 'doc/pddp/value-help.pd') diff --git a/doc/pddp/value-help.pd b/doc/pddp/value-help.pd new file mode 100644 index 00000000..783ea5a4 --- /dev/null +++ b/doc/pddp/value-help.pd @@ -0,0 +1,102 @@ +#N canvas 1 1 889 657 10; +#X text 62 10 -- nonlocal shared value (named variable); +#X obj 21 10 value; +#X text 17 46 [value] is a container. It holds a global variable numeric +value and can be "polled" at any time with a "bang" message. In other +words \, [value] is a place where numbers can be stored and then accessed +by all active Pd windows.; +#X text 16 109 SCOPE; +#X text 18 127 Understanding "scope" is important while developing +programmatic applications. In Pd there are three levels of "scope": +; +#X text 29 170 1 Local Scope: all objects \, subroutines \, data \, +and variables which exist within a single patch on a single computer +and do not communicate with other active Pd patches.; +#X text 27 226 2 Global Scope: all objects \, subroutines \, data and +variables which exist within single or multiple patches on a single +computer which communicate with other active Pd patches.; +#X text 17 354 As a general rule \, all things are considered "local" +in Pd and if communication between Pd windows is necessary \, then +[send]/[receive] \, or [throw]/[catch] objects are used. Likewise \, +if communication is necessary between many computers running Pd \, +then objects such as [netsend]/[netreceive] are used.; +#X text 16 441 The exception to the above rule is [value]. This object +is a container which makes its data known to all [value] objects of +the same name in all active Pd windows on a single computer: hence +\, GLOBAL scope.; +#X text 28 288 3 Network (Universal) Scope: all objects \, subroutines +\, data and variables which exist within single or multiple patches +on two or more computers which communicate with other active Pd patches +via a network.; +#X text 419 15 To create a [value] object \, a name should be defined +for the variable that it will contain. For example:; +#X obj 422 54 value my_variable; +#X text 419 110 To assign a numeric value to that variable \, a number +box or message can be used \, as follows:; +#X obj 420 190 value my_variable; +#X msg 438 167 42; +#X text 12 523 The [value] object can be abbreviated as follows:; +#X obj 19 550 v; +#X text 48 550 is the same as; +#X obj 142 552 value; +#X obj 384 12 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X obj 384 583 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 417 77 If no name is given \, then the object will communicate +with all other [value] objects with no name.; +#X floatatom 420 214 5 0 0; +#X floatatom 420 147 5 0 0; +#X obj 417 304 value my_variable; +#X floatatom 417 328 5 0 0; +#X obj 417 284 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X text 464 146 play with me; +#X text 463 166 or click me; +#X text 416 237 Notice that the number is not outputted to the outlet +\; it is merely stored. To retreive the number \, send a "bang" \, +like below:; +#X text 414 354 Now \, to show how global scope works \, click the +sub-patch below and then "bang" the [value] object to retreive the +current number. While you're in the sub-patch \, change the number +and then return to this window and click the above "bang". You'll quickly +see how this variable can be retreived or reset in any active Pd window. +; +#N canvas 0 0 452 302 global_values 0; +#X obj 43 127 v my_variable; +#X floatatom 43 149 5 0 0; +#X obj 43 86 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 +-1; +#X floatatom 61 104 5 0 0; +#X connect 0 0 1 0; +#X connect 2 0 0 0; +#X connect 3 0 0 0; +#X restore 415 442 pd global_values; +#X text 414 474; +#X text 409 490 RELATED OBJECTS; +#N canvas 73 229 452 302 related_objects_from_other_libraries 0; +#X obj 28 37 getenv; +#X text 18 86 These objects 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 17 135 The best places to find information about Pd's libraries +is:; +#X text 14 157 www.puredata.org and click on "Downloads" then "Software" +; +#X text 15 173 or; +#X text 16 187 iem.kug.ac.at/pdb/; +#X restore 413 551 pd related_objects_from_other_libraries; +#X obj 408 517 send; +#X obj 441 517 receive; +#X text 492 504 These objects are actually quite different than [value] +but it's important to understand that difference in relation to [value]. +; +#X text 252 603 This document was updated for Pd version 0.35 test +26 by Dave Sabine as part of a project called pddp proposed by Krzysztof +Czaja to build comprehensive documentation for Pd.; +#X connect 13 0 22 0; +#X connect 14 0 13 0; +#X connect 19 0 20 0; +#X connect 23 0 13 0; +#X connect 24 0 25 0; +#X connect 26 0 24 0; -- cgit v1.2.1