![]() |
XRootD
|
#include <XrdOucPinLoader.hh>
Public Member Functions | |
XrdOucPinLoader (char *eBuff, int eBlen, XrdVersionInfo *vInfo, const char *drctv, const char *plib) | |
XrdOucPinLoader (XrdSysError *errP, XrdVersionInfo *vInfo, const char *drctv, const char *plib) | |
XrdOucPinLoader (XrdVersionInfo *vInfo, const char *drctv, const char *plib) | |
~XrdOucPinLoader () | |
XrdSysPlugin * | Export () |
void | Global (bool glbl) |
const char * | LastMsg () |
const char * | Path () |
void * | Resolve (const char *symbl, int mcnt=1) |
void | Unload (bool dodel=false) |
Definition at line 49 of file XrdOucPinLoader.hh.
XrdOucPinLoader::XrdOucPinLoader | ( | XrdSysError * | errP, |
XrdVersionInfo * | vInfo, | ||
const char * | drctv, | ||
const char * | plib | ||
) |
Constructor #1
errP | Pointer to the message routing object. |
vInfo | Pointer to the version information of the caller. If the pointer is nil, no version checking occurs. |
drctv | Pointer to the directive that initiated the load. The text is used in error messages to relate the directive to the error. E.g. "ofs.osslib" -> "Unable to load ofs.osslib plugin...." |
plib | Pointer to the shared library path that contains the plugin. |
Definition at line 46 of file XrdOucPinLoader.cc.
XrdOucPinLoader::XrdOucPinLoader | ( | char * | eBuff, |
int | eBlen, | ||
XrdVersionInfo * | vInfo, | ||
const char * | drctv, | ||
const char * | plib | ||
) |
Constructor #2
eBuff | Pointer to a buffer to receive messages. |
eBlen | Length of the buffer. |
vInfo | Pointer to the version information of the caller. If the pointer is nil, no version checking occurs. |
drctv | Pointer to the directive that initiated the load (see above). |
plib | Pointer to the shared library path that contains the plugin. |
Definition at line 63 of file XrdOucPinLoader.cc.
XrdOucPinLoader::XrdOucPinLoader | ( | XrdVersionInfo * | vInfo, |
const char * | drctv, | ||
const char * | plib | ||
) |
Constructor #3 (An internal message buffer is allocated. You can get the message, if any, using LastMsg())
vInfo | Pointer to the version information of the caller. If the pointer is nil, no version checking occurs. |
drctv | Pointer to the directive that initiated the load (see above). |
plib | Pointer to the shared library path that contains the plugin. |
Definition at line 83 of file XrdOucPinLoader.cc.
XrdOucPinLoader::~XrdOucPinLoader | ( | ) |
Destructor
Upon deletion, if the plugin was successfully loaded, it is persisted.
Definition at line 107 of file XrdOucPinLoader.cc.
References XrdSysPlugin::Persist().
|
inline |
Export the plugin object for manual management.
Definition at line 62 of file XrdOucPinLoader.hh.
Referenced by XrdCksLoader::Load().
|
inline |
Set export range of symbols in the plugin.
glbl | when true then the symbols defined in the plug-in shared library are made available for symbol resolution of subsequently loaded libraries. |
Definition at line 72 of file XrdOucPinLoader.hh.
|
inline |
Get the last message placed in the buffer.
Definition at line 81 of file XrdOucPinLoader.hh.
Referenced by XrdCryptoFactory::GetCryptoFactory().
|
inline |
Get the actual path that was or will tried for loading.
Definition at line 91 of file XrdOucPinLoader.hh.
Referenced by XrdOssGetSS().
void * XrdOucPinLoader::Resolve | ( | const char * | symbl, |
int | mcnt = 1 |
||
) |
Resolve a desired symbol from the plugin image.
symbl | Pointer to the name of the symbol to resolve. |
mcnt | Maximum number of version messages to be displayed. |
Definition at line 267 of file XrdOucPinLoader.cc.
References XrdSysPlugin::getPlugin().
Referenced by XrdOucLogging::configLog(), XrdOssSys::ConfigStatLib(), XrdCryptoFactory::GetCryptoFactory(), XrdCl::DefaultEnv::GetMonitor(), XrdCmsSecurity::getVnId(), XrdCksLoader::Load(), XrdOucN2NLoader::Load(), XrdCmsUtils::loadPerfMon(), XrdOssGetSS(), and XrdXrootdloadFileSystem().
void XrdOucPinLoader::Unload | ( | bool | dodel = false | ) |
Unload any plugin that may be associated with this object. The plugin image will not be persisted when this object is deleted.
dodel | When true, the object is deleted (this only works if it is created via new). Otherwise, plugin is only unloaded. |
Definition at line 305 of file XrdOucPinLoader.cc.
Referenced by XrdOucLogging::configLog(), XrdCl::DefaultEnv::GetMonitor(), XrdCmsSecurity::getVnId(), and XrdCksLoader::Load().