#include <RunTimeLibraryLoader.hxx>
Public Member Functions | |
virtual | ~RunTimeLibraryLoader () |
void | Load () const |
void | ReLoad () |
const std::string | CompletePathFor (const std::string &subpathAndName) const |
Static Public Member Functions | |
static void * | FullyLoadLibrary (const std::string &libraryPath) |
static void * | LazyLoadLibrary (const std::string &libraryPath) |
static bool | ReleaseLibraryHandler (void *handle, const std::string pluginFullFilename="") |
static const std::string | LibraryLoadError () |
static const std::string | FileOfSymbol (void *symbolAddress) |
static void * | GetSymbol (void *libraryHandler, const std::string &symbolName) |
Protected Member Functions | |
void | LoadLibrariesFromPath (const std::string &path) const |
std::vector< std::string > | SplitPathVariable (const std::string &pathVariable) const |
void * | GetLibraryHandler (const std::string &libraryPath) const |
const char * | pathSeparator () const |
virtual const char ** | standardPaths () const =0 |
virtual const char * | homePath () const =0 |
virtual const char * | pathEnvironmentVar () const =0 |
virtual const char * | libraryType () const =0 |
virtual const bool | needReleaseHandlerOnReload () const =0 |
virtual void | SetupLibrary (void *handle, const std::string &pluginFullFilename) const |
const std::string | getPathFromFullFileName (const std::string &fullFileNameConst) const |
bool | IsOnPath (const std::string &path) const |
virtual std::list< std::string > | GetUsedLibraries () |
Definition at line 10 of file RunTimeLibraryLoader.hxx.
virtual RunTimeLibraryLoader::~RunTimeLibraryLoader | ( | ) | [inline, virtual] |
Definition at line 14 of file RunTimeLibraryLoader.hxx.
const std::string RunTimeLibraryLoader::CompletePathFor | ( | const std::string & | subpathAndName | ) | const |
Definition at line 241 of file RunTimeLibraryLoader.cxx.
References SplitPathVariable().
const std::string RunTimeLibraryLoader::FileOfSymbol | ( | void * | symbolAddress | ) | [static] |
Definition at line 186 of file RunTimeLibraryLoader.cxx.
Referenced by CLAM::FactoryRegistrator< TheFactoryType, ConcreteProductType >::FactoryRegistrator().
void * RunTimeLibraryLoader::FullyLoadLibrary | ( | const std::string & | libraryPath | ) | [static] |
Definition at line 109 of file RunTimeLibraryLoader.cxx.
Referenced by LoadLibrariesFromPath().
void * RunTimeLibraryLoader::GetLibraryHandler | ( | const std::string & | libraryPath | ) | const [protected] |
Definition at line 142 of file RunTimeLibraryLoader.cxx.
Referenced by ReLoad().
const std::string RunTimeLibraryLoader::getPathFromFullFileName | ( | const std::string & | fullFileNameConst | ) | const [inline, protected] |
Definition at line 48 of file RunTimeLibraryLoader.hxx.
Referenced by GetUsedLibraries().
void * RunTimeLibraryLoader::GetSymbol | ( | void * | libraryHandler, | |
const std::string & | symbolName | |||
) | [static] |
Definition at line 132 of file RunTimeLibraryLoader.cxx.
Referenced by RunTimeLadspaLibraryLoader::SetupLibrary().
std::list< std::string > RunTimeLibraryLoader::GetUsedLibraries | ( | ) | [protected, virtual] |
Reimplemented in RunTimeFaustLibraryLoader.
Definition at line 44 of file RunTimeLibraryLoader.cxx.
References CLAM::ProcessingFactory::GetInstance(), getPathFromFullFileName(), CLAM::Factory< AbstractProductType >::GetSetOfValues(), and IsOnPath().
Referenced by ReLoad().
virtual const char* RunTimeLibraryLoader::homePath | ( | ) | const [protected, pure virtual] |
Implemented in RunTimeFaustLibraryLoader, and RunTimeLadspaLibraryLoader.
bool RunTimeLibraryLoader::IsOnPath | ( | const std::string & | path | ) | const [protected] |
Definition at line 59 of file RunTimeLibraryLoader.cxx.
References SplitPathVariable().
Referenced by GetUsedLibraries().
void * RunTimeLibraryLoader::LazyLoadLibrary | ( | const std::string & | libraryPath | ) | [static] |
Definition at line 121 of file RunTimeLibraryLoader.cxx.
const std::string RunTimeLibraryLoader::LibraryLoadError | ( | ) | [static] |
Definition at line 167 of file RunTimeLibraryLoader.cxx.
References NULL.
Referenced by LoadLibrariesFromPath(), and RunTimeLadspaLibraryLoader::SetupLibrary().
virtual const char* RunTimeLibraryLoader::libraryType | ( | ) | const [protected, pure virtual] |
Implemented in RunTimeFaustLibraryLoader, and RunTimeLadspaLibraryLoader.
void RunTimeLibraryLoader::Load | ( | ) | const |
Reimplemented in RunTimeFaustLibraryLoader.
Definition at line 71 of file RunTimeLibraryLoader.cxx.
References debug, LoadLibrariesFromPath(), and SplitPathVariable().
Referenced by ReLoad().
void RunTimeLibraryLoader::LoadLibrariesFromPath | ( | const std::string & | path | ) | const [protected] |
Definition at line 82 of file RunTimeLibraryLoader.cxx.
References debug, FullyLoadLibrary(), LibraryLoadError(), NULL, and SetupLibrary().
Referenced by Load().
virtual const bool RunTimeLibraryLoader::needReleaseHandlerOnReload | ( | ) | const [protected, pure virtual] |
Implemented in RunTimeFaustLibraryLoader, and RunTimeLadspaLibraryLoader.
Referenced by ReLoad().
virtual const char* RunTimeLibraryLoader::pathEnvironmentVar | ( | ) | const [protected, pure virtual] |
Implemented in RunTimeFaustLibraryLoader, and RunTimeLadspaLibraryLoader.
const char* RunTimeLibraryLoader::pathSeparator | ( | ) | const [inline, protected] |
Definition at line 32 of file RunTimeLibraryLoader.hxx.
Referenced by SplitPathVariable().
bool RunTimeLibraryLoader::ReleaseLibraryHandler | ( | void * | handle, | |
const std::string | pluginFullFilename = "" | |||
) | [static] |
Definition at line 153 of file RunTimeLibraryLoader.cxx.
Referenced by ReLoad(), and RunTimeLadspaLibraryLoader::SetupLibrary().
void RunTimeLibraryLoader::ReLoad | ( | ) |
Definition at line 19 of file RunTimeLibraryLoader.cxx.
References CLAM::Factory< AbstractProductType >::DeleteCreator(), CLAM::ProcessingFactory::GetInstance(), CLAM::Factory< AbstractProductType >::GetKeys(), GetLibraryHandler(), GetUsedLibraries(), Load(), needReleaseHandlerOnReload(), and ReleaseLibraryHandler().
virtual void RunTimeLibraryLoader::SetupLibrary | ( | void * | handle, | |
const std::string & | pluginFullFilename | |||
) | const [inline, protected, virtual] |
Reimplemented in RunTimeFaustLibraryLoader, and RunTimeLadspaLibraryLoader.
Definition at line 47 of file RunTimeLibraryLoader.hxx.
Referenced by LoadLibrariesFromPath().
std::vector< std::string > RunTimeLibraryLoader::SplitPathVariable | ( | const std::string & | pathVariable | ) | const [protected] |
Definition at line 207 of file RunTimeLibraryLoader.cxx.
References pathSeparator().
Referenced by CompletePathFor(), IsOnPath(), and Load().
virtual const char** RunTimeLibraryLoader::standardPaths | ( | ) | const [protected, pure virtual] |
Implemented in RunTimeFaustLibraryLoader, and RunTimeLadspaLibraryLoader.