MMCore 10.1.1
|
Public Member Functions | |
void | UnloadPluginLibrary (const char *moduleName) |
template<typename TStringIter > | |
void | SetSearchPaths (TStringIter begin, TStringIter end) |
std::vector< std::string > | GetSearchPaths () const |
std::vector< std::string > | GetAvailableDeviceAdapters () |
std::shared_ptr< LoadedDeviceAdapter > | GetDeviceAdapter (const std::string &moduleName) |
std::shared_ptr< LoadedDeviceAdapter > | GetDeviceAdapter (const char *moduleName) |
std::vector< std::string > CPluginManager::GetAvailableDeviceAdapters | ( | ) |
List all modules (device libraries) in all search paths.
std::shared_ptr< LoadedDeviceAdapter > CPluginManager::GetDeviceAdapter | ( | const std::string & | moduleName | ) |
Return a device adapter module, loading it if necessary
Load a plugin library.
Since we want to have a consistent plugin discovery/loading mechanism, the search path – if specified explicitly – is traversed.
This has to be done so that users do not have to make sure that DYLD_LIBRARY_PATH, LD_LIBRARY_PATH or PATH and java.library.path are in sync and include the correct paths.
However, the OS-dependent default search path is still searched in the case where the library is not found in our list of search paths. (XXX This should perhaps change, to avoid surprises.)
moduleName | Simple module name without path, prefix, or suffix. |
void CPluginManager::UnloadPluginLibrary | ( | const char * | moduleName | ) |
Unload a module.