> IMHO, this communication should be performed using the same basic=20 > interface as is used for control/automation. I don't like the idea of=20 > plugins having "private" interfaces for their GUIs, as that=20 > unavoidibly forces non-portable code into both parts of plugins.=20 > (Portable GUIs is a serious problem as it is.) > > I think using the same basic API for GUIs as for DSP plugins would be=20 > a nice and clean solution, and I intend to try this with XAP.=20 > (http://olofson.net/xap) > > The idea is that plugins can suggest another plugin (by unique ID) if=20 > the host wants to fire up a GUI. When the host looks for that plugin,=20 > it will generally find that it's an executable that's meant to be=20 > started as a separate process. The host will start the GUI plugin,=20 > setting up a "gateway node" in the local audio plugin net. The=20 > gateway node will appear as a normal plugin, ready for connections.=20 > The host will take care of the issues of communication between the=20 > hard RT domain and the outside (soft RT) world, and pipe incoming and=20 > outgoing events from/to the external GUI "plugin" process. > > I will report back when I know how it turns out. This actually sounds exactly like how it's done with AU. The GUI and the DSP are separate executable code, separate DLLs, separate plugins, etc. In Mac OS world, they are called "components" (handled by the Component Manager). The DSP component gives the host, if requested, a list of zero or more IDs for GUI components that are recommended, and then the host can instantiate any GUI components, passing along a Component Manager reference to the DSP component, and then the Component Manager resolves any property setting and getting that the GUI component does. The DSP component has no awareness of the GUI component. I personally think that it's an excellent system, and I think that it's basically the same as what you're working on, so I would say that it looks to me like it has already turned out well. :) Marc ---------------------------------------------------------------------- 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