#include <cctype>
#include <iostream>
#include <map>
#include <cstdio>
#include <cstring>
#include "XrdVersionPlugin.hh"
Go to the source code of this file.
◆ Display()
Definition at line 67 of file XrdPinls.cc.
69 const char *vType =
"Unknown";
80 if (vP->
vMinLow < 0) snprintf(buff,
sizeof(buff),
"%2d.x ", vP->
vMajLow);
81 else snprintf(buff,
sizeof(buff),
"%2d.%-2d", vP->
vMajLow, vP->
vMinLow);
85 std::cout <<vType <<
" >= "<<buff <<
' ' <<drctv <<std::endl;
#define XrdVERSIONPLUGIN_Optional
int vProcess
version: <0 skip, =0 optional, >0 required
#define XrdVERSIONPLUGIN_DoNotChk
#define XrdVERSIONPLUGIN_Required
short vMajLow
Lowest compatible major version number.
short vMinLow
Lowest compatible minor (< 0 don't check).
References XrdVersionPlugin::vMajLow, XrdVersionPlugin::vMinLow, XrdVersionPlugin::vProcess, XrdVERSIONPLUGIN_DoNotChk, XrdVERSIONPLUGIN_Optional, and XrdVERSIONPLUGIN_Required.
Referenced by main().
◆ main()
int main |
( |
int |
argc, |
|
|
char * |
argv[] |
|
) |
| |
Definition at line 92 of file XrdPinls.cc.
96 std::map<const char *, XrdVersionPlugin*, cmp_str> vRules;
97 std::map<const char *, XrdVersionPlugin*, cmp_str> dRules;
98 std::map<const char *, XrdVersionPlugin*, cmp_str>::iterator itD, itV;
104 while(vInfo[i].pName)
105 {vRules[vInfo[i].
pName] = &vInfo[i];
112 while(dInfo[i].dName)
113 {itV = vRules.find(dInfo[i].pName);
114 dRules[dInfo[i].
dName] = (itV != dRules.end() ? itV->second : 0);
120 for (itD = dRules.begin(); itD != dRules.end(); itD++)
121 {
if (itD->second)
Display(itD->first, itD->second);
122 else std::cout <<
"No version rule present for " <<itD->first
void Display(const char *drctv, XrdVersionPlugin *vP)
#define XrdVERSIONPLUGINRULES
const char * dName
-> plugin directive name
const char * pName
-> plugin object creator function name
#define XrdVERSIONPLUGINMAPD2P
References Display(), XrdVersionMapD2P::dName, XrdVersionPlugin::pName, XrdVERSIONPLUGINMAPD2P, and XrdVERSIONPLUGINRULES.