I have a developer question from a developer in our building. We've checked the SDK manuals, but they were ambiguous on the subject.
Our developer is attempting to write a bridge between Softimage and our other proprietary tools/systems for custom tool development and must allocate many resources during XSILoadPlugin() so other plugins can share/use the resources without having to allocate them at each invocation (eg: memory, establish .dll reference count with Windows, login to other accounts, etc...). The question is: Under exactly what conditions will XSIUnloadPlugin() get called? For example, if XSILoadPlugin() terminates prematurely by returning XSI::CStatus::Fail, does XSIUnloadPlugin() get called? Or does XSIUnloadPlugin() only get called if XSILoadPlugin() returns XSI::CStatus::OK indicating the plugin has successfully completed loading? If XSIUnloadPlugin() gets called in all cases, are there exceptions to what will/won't be available in that callback? Thanks, Matt