XrdOucPinKing< T > Class Template Reference

#include <XrdOucPinKing.hh>

Collaboration diagram for XrdOucPinKing< T >:
Collaboration graph
[legend]

List of all members.

Classes

struct  pinInfo

Public Member Functions

void Add (const char *path, const char *parms, bool push=false)
T * Load (const char *Symbol)
 XrdOucPinKing (const char *drctv, XrdOucEnv &envR, XrdSysError &errR, XrdVersionInfo *vinfo=0)
 ~XrdOucPinKing ()

Private Attributes

const char * Drctv
XrdOucEnveInfo
XrdSysErroreMsg
XrdVersionInfo * vInfo
std::vector< pinInfopinVec

template<class T>
class XrdOucPinKing< T >


Constructor & Destructor Documentation

template<class T >
XrdOucPinKing< T >::XrdOucPinKing ( const char *  drctv,
XrdOucEnv envR,
XrdSysError errR,
XrdVersionInfo *  vinfo = 0 
) [inline]

Constructor

Parameters:
drctv Ref to the directive that initiated the load. The text is used in error messages to relate the directive to the error. E.g. "sec.entlib" -> "Unable to load sec.entlib plugin...."
envP Ref to environment.
errP Ref to the message routing object.
vInfo Pointer to the version information of the caller. If the pointer is nil, no version checking occurs.

References XrdOucPinKing< T >::pinVec.

template<class T >
XrdOucPinKing< T >::~XrdOucPinKing (  )  [inline]

Destructor

Upon deletion, if the plugin was successfully loaded, it is persisted.


Member Function Documentation

template<class T >
void XrdOucPinKing< T >::Add ( const char *  path,
const char *  parms,
bool  push = false 
) [inline]

Add an Pin object to the load list.

Parameters:
path Pointer to the pin's path.
parm Pointer to the pin's parameters.
push When true pushes the pin onto the load stack. Otherwise, replaces or defines the base plugin.

References XrdOucPinKing< T >::pinVec.

template<class T >
T * XrdOucPinKing< T >::Load ( const char *  Symbol  )  [inline]

Load all necessary plugins.

Parameters:
Symbol Pointer to the external symobol of the plugin.
Returns:
Pointer to the plugin upon success and nil upon failure.

References XrdOucPinKing< T >::Drctv, XrdOucPinKing< T >::eInfo, XrdOucPinKing< T >::eMsg, XrdSysError::logger(), XrdOucPinKing< T >::pinVec, and XrdOucPinKing< T >::vInfo.


Member Data Documentation

template<class T >
const char* XrdOucPinKing< T >::Drctv [private]
template<class T >
XrdOucEnv& XrdOucPinKing< T >::eInfo [private]
template<class T >
XrdSysError& XrdOucPinKing< T >::eMsg [private]
template<class T >
std::vector<pinInfo> XrdOucPinKing< T >::pinVec [private]
template<class T >
XrdVersionInfo* XrdOucPinKing< T >::vInfo [private]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 7 Jul 2020 for xrootd by  doxygen 1.6.1