You mean like the .spdl and .preset formats?

nope at all, I mean like a specification file.  plugins specifications are
usually little xml/json files where all informations relative to the plugin
are written (what you do with the PluginRegistrar::Put* calls).  This has
mainly two big advantages which are:
  - the shared library itself (plugin) has no need to be loaded to be
discovered and exposed to the audience of what it is about and what does it
do.
  - In the case of complex plugin systems, to declare dependencies to other
plugins for the plugin manager to resolve them before loading the actual
plugins.
This is something powerful and flexible where some systems are like
Softimage or Maya more traditional in the way they ask for an handle,
keeping it in memory and whatever happens, they don't really care.
Spdl s have a different meaning (description language used to declare and
define multiple things) as are presets (data storage).
-- jo






2012/10/26 Nicolas Burtnyk <[email protected]>

> Yep cached.  That explains it.
>
>
> On Fri, Oct 26, 2012 at 4:37 PM, Kamen Lilov <[email protected]>
> wrote:
> > On 10/26/2012 7:52 PM, Nicolas Burtnyk wrote:
> >>
> >> I'm confused.  I just tested this and global variable constructors
> >> only get called once in my plugin (on 2012 SP1).
> >>
> > Nicolas, is your plugin DLL marked as 'cached'?
> >
> > Because I double-checked the mechanism explained by Marc-Andre, turns out
> > he's right (not surprisingly - he's the SDK lead after all ;) ) BUT -
> this
> > all applies only to external plugins not marked as cached. "Cached" ones
> -
> > which happens to be the default - are LoadLibrary-ied just once, and
> > FreeLibrary-ied just once (unless ofcourse you select Reload)
> >
> >
>

Reply via email to