#N struct help-get-template1 float x float y; #N canvas 293 5 629 429 12; #X text 13 325 see also:; #X obj 143 370 template; #X obj 84 345 set; #X obj 116 345 append; #X obj 175 345 getsize; #X obj 243 345 setsize; #X obj 311 345 element; #X obj 16 370 sublist; #X obj 84 370 scalar; #X msg 60 130 next; #N canvas 164 72 425 146 help-get-template1 0; #X obj 41 87 filledpolygon 9 0 1 0 0 20 0 20 30 0 30; #X obj 60 21 template float x float y; #X restore 376 234 pd help-get-template1; #N canvas 0 0 276 156 help-get-data 1; #X scalar help-get-template1 46 23 \;; #X scalar help-get-template1 106 73 \;; #X restore 376 212 pd help-get-data; #X obj 21 10 get; #X text 86 10 -- get values from a scalar; #X msg 45 102 traverse pd-help-get-data \, next; #X floatatom 45 214 5 0 0; #X floatatom 222 210 5 0 0; #X obj 45 157 pointer; #X text 337 101 output first scalar in list; #X text 103 129 output next item; #X text 21 277 If you have data whose template varies (from a heterogeneous list \, for example) you can use "pointer" to select according to template before sending to "get".; #X obj 45 185 get help-get-template1 x y; #X text 31 37 "Get" \, when sent a pointer to a scalar \, retrieves fields from it by name. The fields can be float or symbol. In the future this will also allow access to sublists of scalars.; #X text 293 167 First argument selects template.; #X text 294 182 Remaining args are names of fields.; #X text 41 233 x output; #X text 220 232 y output; #X obj 16 345 pointer; #X text 373 399 updated for Pd version 0.35; #X connect 9 0 17 0; #X connect 14 0 17 0; #X connect 17 0 21 0; #X connect 21 0 15 0; #X connect 21 1 16 0;