[Clam-devel] COMMIT 11822 - Re: Faust support - plugins dynamic reloading
David García Garzón
dgarcia at iua.upf.edu
Tue Aug 5 10:45:47 PDT 2008
El Tuesday 05 August 2008 09:31:44 Natanael Olaiz va escriure:
> El 08/04/2008 07:12 AM, David García Garzón escribió:
> > [...]
> > My suggestion:
> > * First move all dl_ calls to the base RunTimeLibraryLoader primitives
> > (see LoadLibraryError and FullyLoadLibrary) so that we can encapsulate
> > the platform dependant bits.
> > * Add in the same class some static structure that holds the list of
> > libraries.
> > * Add also a static state that holds the currently loading library and
> > set it and unset it when appropiate.
> > * When registering a factory entry check that state and if set, populate
> > the structure or just add some metadata.
> > * The factory registrator destructor should remove the processing type
> > from the factory (this should be TDD) in order to allow unloading the
> > library.
> > I am not sure whether this should work. But, anyway, be carefull,
> > remember that we are in release!!! The plugin system cannot be broken!
> David: you was totally right. Trying to do just a "simple regenerating
> of all plugins", I understand your suggestions reasons.
> Do you think that is safer to keep that out of the release? For now I
> prefer to release as is (and maybe the same for the ladspa compiled
> networks), like a workaround... Is not totally safe, but the faust
> reloader works for the user, and I could continue this after the release
> and focus my work on subnetworks.
> BTW, I apologize for break up the loading of clam plugins on the SVN for
> a few hours. :-/
Keep developing, but just be extra careful, i will send a pencils up for the
release before starting generating the packages. just, if you do a commit you
are not sure that is going to be valid, think twice and warn us.
More information about the clam-devel