XRootD
Loading...
Searching...
No Matches
XrdFrmFiles Class Reference

#include <XrdFrmFiles.hh>

+ Collaboration diagram for XrdFrmFiles:

Public Member Functions

 XrdFrmFiles (const char *dname, int opts=Recursive, XrdOucTList *XList=0, XrdOucNSWalk::CallBack *cbP=0)
 
 ~XrdFrmFiles ()
 
XrdFrmFilesetGet (int &rc, int noBase=0)
 

Static Public Attributes

static const int CompressD = 0x0002
 
static const int GetCpyTim = 0x0008
 
static const int NoAutoDel = 0x0004
 
static const int Recursive = 0x0001
 

Detailed Description

Definition at line 115 of file XrdFrmFiles.hh.

Constructor & Destructor Documentation

◆ XrdFrmFiles()

XrdFrmFiles::XrdFrmFiles ( const char * dname,
int opts = Recursive,
XrdOucTList * XList = 0,
XrdOucNSWalk::CallBack * cbP = 0 )

Definition at line 304 of file XrdFrmFiles.cc.

306 : nsObj(&Say, dname, 0,
311 | (opts & Recursive ? XrdOucNSWalk::Recurse : 0), XList),
312 fsList(0), manMem(opts & NoAutoDel ? Hash_keep : Hash_default),
313 shareD(opts & CompressD), getCPT(opts & GetCpyTim)
314{
315
316// Set Call Back method
317//
318 nsObj.setCallBack(cbP);
319}
XrdOucPup XrdCmsParser::Pup & Say
@ Hash_default
Definition XrdOucHash.hh:51
@ Hash_keep
Definition XrdOucHash.hh:55
struct myOpts opts
static const int CompressD
static const int NoAutoDel
static const int GetCpyTim
static const int Recursive
static const int retFile
static const int retLink
static const int skpErrs
static const int noPath
static const int retStat
void setCallBack(CallBack *cbP=0)
static const int Recurse
static const int retIILO

References XrdOucNSWalk::setCallBack().

+ Here is the call graph for this function:

◆ ~XrdFrmFiles()

XrdFrmFiles::~XrdFrmFiles ( )

Definition at line 325 of file XrdFrmFiles.cc.

326{
327 XrdFrmFileset *fsetP;
328
329// If manual memory is wante then we must delete any unreturned objects
330//
331 if (manMem)
332 while((fsetP = fsList))
333 {fsList = fsetP->Next; fsetP->Next = 0; delete fsetP;}
334}
XrdFrmFileset * Next

References XrdFrmFileset::Next.

Member Function Documentation

◆ Get()

XrdFrmFileset * XrdFrmFiles::Get ( int & rc,
int noBase = 0 )

Definition at line 340 of file XrdFrmFiles.cc.

341{
343 XrdFrmFileset *fsetP;
344 const char *dPath;
345
346// Check if we have something to return
347//
348do{while ((fsetP = fsList))
349 {fsList = fsetP->Next; fsetP->Next = 0;
350 if (fsetP->File[XrdOssPath::isBase])
351 {if (getCPT) fsetP->setCpyTime();
352 rc = 0; return fsetP;
353 }
354 else if (noBase) {rc = 0; return fsetP;}
355 else if (manMem) delete fsetP;
356 }
357
358// Start with next directory (we return when no directories left).
359//
360 do {if (!(nP = nsObj.Index(rc, &dPath))) return 0;
361 fsTab.Purge(); fsList = 0;
362 } while(!Process(nP, dPath));
363
364 } while(1);
365
366// To keep the compiler happy
367//
368 return 0;
369}
int setCpyTime(int Refresh=0)
NSEnt * Index(int &rc, const char **dPath=0)

References XrdOucNSWalk::Index(), XrdOssPath::isBase, XrdFrmFileset::Next, XrdOucHash< T >::Purge(), and XrdFrmFileset::setCpyTime().

+ Here is the call graph for this function:

Member Data Documentation

◆ CompressD

const int XrdFrmFiles::CompressD = 0x0002
static

Definition at line 122 of file XrdFrmFiles.hh.

◆ GetCpyTim

const int XrdFrmFiles::GetCpyTim = 0x0008
static

Definition at line 124 of file XrdFrmFiles.hh.

◆ NoAutoDel

const int XrdFrmFiles::NoAutoDel = 0x0004
static

Definition at line 123 of file XrdFrmFiles.hh.

◆ Recursive

const int XrdFrmFiles::Recursive = 0x0001
static

Definition at line 121 of file XrdFrmFiles.hh.


The documentation for this class was generated from the following files: