[schange] can be built as an pd-vanilla abstraction using [select], see attached.
tim vets wrote:
[nchange s] gr, Tim
2010/4/26 James Dunn james@4thharmonic.com
Hi list,
is there something like a change object for symbols?
thanks
James
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
#N canvas 0 0 450 300 10; #X obj 127 62 loadbang; #X obj 82 127 select s; #X obj 75 37 route set; #X obj 75 6 inlet; #X obj 146 158 symbol; #X obj 146 190 outlet; #X obj 146 35 route bang; #X obj 203 68 t a a; #X obj 127 95 symbol $1; #X connect 0 0 8 0; #X connect 1 1 4 0; #X connect 2 0 8 0; #X connect 2 1 6 0; #X connect 3 0 2 0; #X connect 4 0 5 0; #X connect 6 0 4 0; #X connect 6 1 7 0; #X connect 7 0 8 0; #X connect 7 1 1 0; #X connect 8 0 1 1; #X connect 8 0 4 1;
#N canvas 0 0 450 300 10; #X obj 75 191 schange foo; #X text 57 79 output current value; #X symbolatom 75 118 10 0 0 0 - - -; #X text 81 97 if different from current value , output and set; #X symbolatom 104 144 10 0 0 0 - - -; #X msg 104 167 set $1; #X text 177 140 set the value; #X text 154 196 creation argument initializes first value; #X symbolatom 75 219 10 0 0 0 - - -; #X obj 75 247 print; #X obj 28 14 schange; #X text 114 16 - ELIMINATE REDUNDANCY IN A SYMBOL STEAM; #X msg 14 77 bang; #X text 12 42 The schange object outputs its input only when it changes. You can "set" the current value , or bang to force output.; #X connect 0 0 8 0; #X connect 2 0 0 0; #X connect 4 0 5 0; #X connect 5 0 0 0; #X connect 8 0 9 0; #X connect 12 0 0 0;