On Wed, Mar 31, 2004 at 12:14:54PM -0500, Ron Kuper wrote: > Oh, you are thinking *really* dynamic changes, like anywhere at anytime, > even during playback. I had something more restrictive in mind, both > for param changes and dynamic output creation. > > The idea is that the plugin has to ask the host if it's OK to change > param counts or pin counts. For example, the plugin says: > > bool bOK = pHost->BeginParamCountChange(); > if (bOK) > { > ... change param counts ... > pHost->EndParamCountChange(); > } > else > ... try again later ... And I was thinking the opposite model. The host says: module_id = plugin->module_new("STEREO_STRIP", "Input 14 (S)"); if (module_id < 0) /* plugin failed or chose not to create that module */ Or more heavy handedly: GMPI_module_desc modules[]; /* holding all current modules */ int nmodules; ... if (add_module_to_array(modules, nmodules, plugin->modules[5])) { nmodules++; /* create a new plugin instance, if OK, destroy the old one */ new_plug = recreate(plugin, modules, nmodules); if (!new_plug) /* plugin rejected new module config */ } I can see why the host would ask the plugin to change its config, but why would a plugin do it spontaneously? ---------------------------------------------------------------------- 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