#N canvas 308 71 688 415 12; #X obj 421 332 pointer; #X obj 108 277 t b b b; #X msg 120 241 bang; #X text 161 240 click here to re-initialize; #X msg 11 313 50 250 30 9 \, 200 200 -20 900 \, 100 200 -50 30; #X text 56 27 The objects below put three items in the data window. First the window is cleared. Then a "pointer" object is instructed to point to the beginning of the data window ("traverse pd-data") \, and to output its value ("bang") to the "append" object. This object is then given numeric values to create three items.; #X obj 11 336 append template4 x y z q; #X msg 421 269 \; pd-data4 clear; #N canvas 0 0 315 341 data4 1; #X restore 430 219 pd data4; #N canvas 15 278 519 148 template4 0; #X obj 17 44 filledpolygon 244 q 5 0 0 20 z 40 0; #X text 13 79 The template for the two scalars \, as in the last patch ; #X obj 17 19 struct template4 float x float y float z float q; #X restore 428 243 pd template4; #X msg 421 309 traverse pd-data4 \, bang; #X text 57 165 The outlet of "append" is a pointer to the newly created scalar. You can pass that on to other append objects if you want to build heterogenous lists.; #X text 363 375 Updated for Pd version 0.32; #X text 57 121 The "append" object is given the argument "template4" to specify what kind of data structure to append. The other arguments are the names of variables we'll set.; #X connect 0 0 6 4; #X connect 1 0 4 0; #X connect 1 1 10 0; #X connect 1 2 7 0; #X connect 2 0 1 0; #X connect 4 0 6 0; #X connect 10 0 0 0;