Hi Tim, > GUI: > user twists a knob 1.0 > GUI calls the actor > actor modifies 1.0 to 0.75 > GUI draws 0.75 > - no (perceivable) latency The way SynthEdit does it - Knob gets "mouse moving" message - GUI calls the actor - actor modifies 1.0 to 0.75, sets parameter - Parameter broadcasts to all listeners "update yourself" - GUI re-draws - no latency (no visible 'jittering') So the mouse movement has no direct link to the knob position, redraw is triggered by the parameter change. This might be completely non-practical for other windowing systems, But I thought it might be interesting. The resulting knob code is very minimal, mouse movement and knob drawing are completely decoupled. The knob dosn't need extra code to ignore parameter-change broadcasts triggered by itself. What's really interesting: In the same situation, will a motorised control surface fight back? Sorry, digressing a bit. Jeff ----- Original Message ----- From: "Tim Hockin" <thockin@xxxxxxxxxx> To: <gmpi@xxxxxxxxxxxxx> Sent: Wednesday, April 14, 2004 1:46 PM Subject: [gmpi] Re: 3.11 topic: Inter-parameter linkages > On Wed, Apr 14, 2004 at 12:42:21PM +1200, Jeff McClintock wrote: > > > I don't see a clean way to do parameter clipping without making another > > > level of dynamism on top of parameters. The ideal would be that the GUI > > > knob would just stop rotating at a certain point, until the clip was > > > resolved. Making it go past the clip then come back after some latency > > > DOES suck. > > > > That's why the Actor is in the MVC notification loop. No latency. All > > values are clipped *before* being broadcast to the GUIs. > > It works for GUI, but there is physical latency with some UIs: > > GUI: > user twists a knob 1.0 > GUI calls the actor > actor modifies 1.0 to 0.75 > GUI draws 0.75 > - no (perceivable) latency > > Motorized fader: > user pushed fader to 1.0 (127) > control-surface interface receives MIDI event (or whatever) > control-surface interface calls actor > actor modifies 1.0 to 0.75 (95) > control-surface interface sends MIDI feedback (or whatever) of 95 > - probably negligible latency? > > So maybe it is negligible.. Still recovering from bad flu, brain not 100% > yet. Trying to not get buried here. I *think* we're really close. What I > am looking for now is a way to characterize this into reqs.. > > > ---------------------------------------------------------------------- > Generalized Music Plugin Interface (GMPI) public discussion list > Participation in this list is contingent upon your abiding by the > following rules: Please stay on topic. You are responsible for your own > words. Please respect your fellow subscribers. Please do not > redistribute anyone else's words without their permission. > > Archive: //www.freelists.org/archives/gmpi > Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe > > > ---------------------------------------------------------------------- Generalized Music Plugin Interface (GMPI) public discussion list Participation in this list is contingent upon your abiding by the following rules: Please stay on topic. You are responsible for your own words. Please respect your fellow subscribers. Please do not redistribute anyone else's words without their permission. Archive: //www.freelists.org/archives/gmpi Email gmpi-request@xxxxxxxxxxxxx w/ subject "unsubscribe" to unsubscribe