XrdDigDirectory Class Reference

#include <XrdDigFS.hh>

Inheritance diagram for XrdDigDirectory:
Inheritance graph
[legend]
Collaboration diagram for XrdDigDirectory:
Collaboration graph
[legend]

List of all members.

Public Member Functions

int open (const char *dirName, const XrdSecClientName *client=0, const char *opaque=0)
const char * nextEntry ()
int close ()
const char * FName ()
int autoStat (struct stat *buf)
 XrdDigDirectory (char *user=0, int monid=0)
 ~XrdDigDirectory ()

Private Attributes

DIR * dh
char * fname
struct stat * sBuff
struct dirent * d_pnt
int dirFD
bool ateof
bool isProc
bool isBase
bool noTag
struct {
   struct dirent   d_entry
   union {
      const char *   aEnt [aESZ]
      char   nbf [MAXNAMLEN+MAXPATHLEN]
      char   pad [MAXNAMLEN]
   } 
dirent_full

Static Private Attributes

static const int aESZ = (MAXNAMLEN+MAXPATHLEN)/sizeof(const char *)

Constructor & Destructor Documentation

XrdDigDirectory::XrdDigDirectory ( char *  user = 0,
int  monid = 0 
) [inline]
XrdDigDirectory::~XrdDigDirectory (  )  [inline]

References close(), and dh.


Member Function Documentation

int XrdDigDirectory::autoStat ( struct stat *  buf  )  [inline, virtual]

Set the stat() buffer where stat information is to be placed corresponding to the directory entry returned by nextEntry().

Returns:
If supported, SFS_OK should be returned. If not supported, then SFS_ERROR should be returned with error.code set to ENOTSUP.

Reimplemented from XrdSfsDirectory.

References sBuff, and SFS_OK.

int XrdDigDirectory::close (  )  [virtual]

Close the directory.

Returns:
One of SFS_OK or SFS_ERROR

Implements XrdSfsDirectory.

Referenced by ~XrdDigDirectory().

const char* XrdDigDirectory::FName (  )  [inline, virtual]

Get the directory path.

Returns:
Null terminated string of the path used in open().

Implements XrdSfsDirectory.

References fname.

const char* XrdDigDirectory::nextEntry (  )  [virtual]

Get the next directory entry.

Returns:
A null terminated string with the directory name. Normally, "." ".." are not returned. If a null pointer is returned then if this is due to an error, error.code should contain errno. Otherwise, error.code should contain zero to indicate that no more entries exist (i.e. end of list).

Implements XrdSfsDirectory.

int XrdDigDirectory::open ( const char *  dirName,
const XrdSecClientName *  client = 0,
const char *  opaque = 0 
)

Member Data Documentation

const int XrdDigDirectory::aESZ = (MAXNAMLEN+MAXPATHLEN)/sizeof(const char *) [static, private]
bool XrdDigDirectory::ateof [private]
struct dirent XrdDigDirectory::d_entry [read]
struct dirent* XrdDigDirectory::d_pnt [read, private]
DIR* XrdDigDirectory::dh [private]

Referenced by ~XrdDigDirectory().

struct { ... } XrdDigDirectory::dirent_full [private]
int XrdDigDirectory::dirFD [private]
char* XrdDigDirectory::fname [private]

Referenced by FName().

bool XrdDigDirectory::isBase [private]
bool XrdDigDirectory::isProc [private]
char XrdDigDirectory::nbf[MAXNAMLEN+MAXPATHLEN]
bool XrdDigDirectory::noTag [private]
char XrdDigDirectory::pad[MAXNAMLEN]
struct stat* XrdDigDirectory::sBuff [read, private]

Referenced by autoStat().


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