On Fri, Jan 09, 2004 at 09:10:00AM -0500, RonKuper@xxxxxxxxxxxx wrote: >> 1) Do nothing. Send all events to the plugin. The vast majority of plugins >> do not care about gesture-start and gesture-end, and will ignore them. If >> two sources fight, you will get a knob that jumps around. Plugins don't >> need to handle anything special, and ignore things they don't need. >> >> 2) Act as a priority-based switch. Based on the source of inputs, decide >> which events make it to the plugin, and which get dropped. Plugins don't >> need to handle anything special, and ignore things they don't need. > Please read up on what DirectX automation does for parameter > capture/release. (That's the terminology used there, capture/release like a > mouse, rather than gestures which can easily be confused with musical > performance gestures.) > > In DX8 the host optionally exposes a parameter capture/release interface. > If the plugin wants to use it, I can query for it. Then, then the user > clicks on a widget in the plugins GUI for parameter foo, the plugin says > host->ParamCapture( foo, TRUE ). Then as the widget moves, > host->ParamChange( foo, x ), the finally host->ParamCapture( foo, FALSE ) > > This approach is neither 1 or 2, and actually works pretty well. 1 and 2 above refer to a collision. What does DX do if two separate plugins capture the same foo? As with others, I am fine with these terms. But we still need to handle 2 cases well: How does a sender capture 2 controls at once, so that they are known to be one capture? -> Gesture IDs on the start/end events, sent to each control. What happens if two senders try to capture the same control? -> Host handles it, either 1 or 2 above are legit. ---------------------------------------------------------------------- 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