On Wed, 29 Jul 2009 17:38:45 +0100
lists@xxxxxxxxxxx wrote:
Dear sc-users,
I would like to know if there is some way to tell when an n_set
message has been received and executed by the server, e.g.:
~synth = {arg freq=440; SinOsc.ar(freq:freq)}.play;
~synth.set("freq", 220);
// I'd like something like
~synth.whenControlsUpdated({"controls updated".postln});
I've checked out NodeWatchers, but they don't seem to deal with
the state of Synth controls.
_
Hmmm - this seems to work but is clunky:
~synth = {arg freq=440; SinOsc.ar(freq:freq)}.play;
{
~wait = true;
100.do{
~new_freq = rrand(400, 600);
~synth.set("freq", ~new_freq);
("waiting for freq "++~new_freq).postln;
while({~wait}, {
~synth.get(\freq, { arg value; ("freq is "++value).postln;
// has the synth been updated?
if (value == ~new_freq, {~wait = false;"Synth control
updated!".postln}, {"waiting... ".postln});
});
0.0001.wait;
});
~wait = true;
};
}.fork;
cheers
- matthew
_______________________________________________
sc-users mailing list
info (subscription, etc.): http://www.beast.bham.ac.uk/research/
sc_mailing_lists.shtml
archive: https://listarc.bham.ac.uk/marchives/sc-users/
search: https://listarc.bham.ac.uk/lists/sc-users/search/