XRootD
StatsFile Class Reference

#include <XrdStatsFile.hh>

+ Inheritance diagram for StatsFile:
+ Collaboration diagram for StatsFile:

Public Member Functions

 StatsFile (std::unique_ptr< XrdOssDF > wrapDF, XrdSysError &log, StatsFileSystem &oss)
 
virtual ~StatsFile ()
 
int Close (long long *retsz=0) override
 
int Fchmod (mode_t mode) override
 
void Flush () override
 Flush filesystem cached pages for this file (used for checksums). More...
 
int Fstat (struct stat *buf) override
 
int Fsync () override
 
int Fsync (XrdSfsAio *aiop) override
 
int Ftruncate (unsigned long long size) override
 
off_t getMmap (void **addr) override
 
int isCompressed (char *cxidp=0) override
 
int Open (const char *path, int Oflag, mode_t Mode, XrdOucEnv &env) override
 
ssize_t pgRead (void *buffer, off_t offset, size_t rdlen, uint32_t *csvec, uint64_t opts) override
 
int pgRead (XrdSfsAio *aioparm, uint64_t opts) override
 
ssize_t pgWrite (void *buffer, off_t offset, size_t wrlen, uint32_t *csvec, uint64_t opts) override
 
int pgWrite (XrdSfsAio *aioparm, uint64_t opts) override
 
ssize_t Read (off_t offset, size_t size) override
 
ssize_t Read (void *buffer, off_t offset, size_t size) override
 
int Read (XrdSfsAio *aiop) override
 
ssize_t ReadRaw (void *buffer, off_t offset, size_t size) override
 
ssize_t ReadV (XrdOucIOVec *readV, int rdvcnt) override
 
ssize_t Write (const void *buffer, off_t offset, size_t size) override
 
int Write (XrdSfsAio *aiop) override
 
ssize_t WriteV (XrdOucIOVec *writeV, int wrvcnt) override
 
- Public Member Functions inherited from XrdOssWrapDF
 XrdOssWrapDF (XrdOssDF &df2Wrap)
 
virtual ~XrdOssWrapDF ()
 
uint16_t DFType ()
 
virtual int Fctl (int cmd, int alen, const char *args, char **resp=0)
 
virtual int getFD ()
 
virtual const char * getTID ()
 
virtual int Opendir (const char *path, XrdOucEnv &env)
 
virtual int Readdir (char *buff, int blen)
 
virtual int StatRet (struct stat *Stat)
 
- Public Member Functions inherited from XrdOssDF
 XrdOssDF (const char *tid="", uint16_t dftype=0, int fdnum=-1)
 
virtual ~XrdOssDF ()
 
uint16_t DFType ()
 

Additional Inherited Members

- Static Public Attributes inherited from XrdOssDF
static const uint16_t DF_isDir = 0x0001
 Object is for a directory. More...
 
static const uint16_t DF_isFile = 0x0002
 Object is for a file. More...
 
static const uint16_t DF_isProxy = 0x0010
 Object is a proxy object. More...
 
static const uint64_t doCalc = 0x4000000000000000ULL
 pgw: Calculate checksums More...
 
static const int Fctl_ckpObj = 0
 
static const int Fctl_utimes = 1
 
static const uint64_t Verify = 0x8000000000000000ULL
 all: Verify checksums More...
 
- Protected Attributes inherited from XrdOssWrapDF
XrdOssDFwrapDF
 
- Protected Attributes inherited from XrdOssDF
uint16_t dfType
 
int fd
 
off_t pgwEOF
 
short rsvd
 
const char * tident
 

Detailed Description

Definition at line 12 of file XrdStatsFile.hh.

Constructor & Destructor Documentation

◆ StatsFile()

StatsFile::StatsFile ( std::unique_ptr< XrdOssDF wrapDF,
XrdSysError log,
StatsFileSystem oss 
)
inline

Definition at line 14 of file XrdStatsFile.hh.

14  :
16  m_wrapped(std::move(wrapDF)),
17  m_log(log),
18  m_oss(oss)
19  {}
XrdOssDF & wrapDF
XrdOssWrapDF(XrdOssDF &df2Wrap)

◆ ~StatsFile()

StatsFile::~StatsFile ( )
virtual

Definition at line 4 of file XrdStatsFile.cc.

4 {}

Member Function Documentation

◆ Close()

int StatsFile::Close ( long long *  retsz = 0)
inlineoverridevirtual

Close a directory or file.

Parameters
retszIf not nil, where the size of the file is to be returned.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 157 of file XrdStatsFile.hh.

158  {
159  return wrapDF.Close(retsz);
160  }
virtual int Close(long long *retsz=0)=0

References XrdOssDF::Close(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Fchmod()

int StatsFile::Fchmod ( mode_t  mode)
inlineoverridevirtual

Change file mode settings.

Parameters
mode- The new file mode setting.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 29 of file XrdStatsFile.hh.

30  {
31  StatsFileSystem::OpTimer op(m_oss.m_ops.m_chmod_ops, m_oss.m_slow_ops.m_chmod_ops, m_oss.m_times.m_chmod, m_oss.m_slow_times.m_chmod, m_oss.m_slow_duration);
32  return wrapDF.Fchmod(mode);
33  }
virtual int Fchmod(mode_t mode)
Definition: XrdOss.hh:120

References XrdOssDF::Fchmod(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Flush()

void StatsFile::Flush ( )
inlineoverridevirtual

Flush filesystem cached pages for this file (used for checksums).

Reimplemented from XrdOssWrapDF.

Definition at line 35 of file XrdStatsFile.hh.

36  {
37  return wrapDF.Flush();
38  }
virtual void Flush()
Flush filesystem cached pages for this file (used for checksums).
Definition: XrdOss.hh:126

References XrdOssDF::Flush(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Fstat()

int StatsFile::Fstat ( struct stat buf)
inlineoverridevirtual

Return state information for this file.

Parameters
buf- Pointer to the structure where info it to be returned.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 40 of file XrdStatsFile.hh.

41  {
42  StatsFileSystem::OpTimer op(m_oss.m_ops.m_stat_ops, m_oss.m_slow_ops.m_stat_ops, m_oss.m_times.m_stat, m_oss.m_slow_times.m_stat, m_oss.m_slow_duration);
43  return wrapDF.Fstat(buf);
44  }
virtual int Fstat(struct stat *buf)
Definition: XrdOss.hh:136

References XrdOssDF::Fstat(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Fsync() [1/2]

int StatsFile::Fsync ( void  )
inlineoverridevirtual

Synchronize associated file with media (synchronous).

Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 46 of file XrdStatsFile.hh.

47  {
48  return wrapDF.Fsync();
49  }
virtual int Fsync()
Definition: XrdOss.hh:144

References XrdOssDF::Fsync(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Fsync() [2/2]

int StatsFile::Fsync ( XrdSfsAio aiop)
inlineoverridevirtual

Synchronize associated file with media (asynchronous).

Parameters
aiop- Pointer to async I/O request object.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 51 of file XrdStatsFile.hh.

52  {
53  return wrapDF.Fsync(aiop);
54  }

References XrdOssDF::Fsync(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Ftruncate()

int StatsFile::Ftruncate ( unsigned long long  flen)
inlineoverridevirtual

Set the size of the associated file.

Parameters
flen- The new size of the file.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 56 of file XrdStatsFile.hh.

57  {
58  StatsFileSystem::OpTimer op(m_oss.m_ops.m_truncate_ops, m_oss.m_slow_ops.m_truncate_ops, m_oss.m_times.m_truncate, m_oss.m_slow_times.m_truncate, m_oss.m_slow_duration);
59  return wrapDF.Ftruncate(size);
60  }
virtual int Ftruncate(unsigned long long flen)
Definition: XrdOss.hh:164

References XrdOssDF::Ftruncate(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ getMmap()

off_t StatsFile::getMmap ( void **  addr)
inlineoverridevirtual

Return the memory mapped characteristics of the file.

Parameters
addr- Pointer to where the memory mapped address is to be returned.
Returns
If mapped, the size of the file is returned and it memory location is placed in addr. Otherwise, addr is set to zero and zero is returned. Note that zero length files cannot be memory mapped.

Reimplemented from XrdOssWrapDF.

Definition at line 62 of file XrdStatsFile.hh.

63  {
64  return wrapDF.getMmap(addr);
65  }
virtual off_t getMmap(void **addr)
Definition: XrdOss.hh:176

References XrdOssDF::getMmap(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ isCompressed()

int StatsFile::isCompressed ( char *  cxidp = 0)
inlineoverridevirtual

Return file compression charectistics.

Parameters
cxidp- Pointer to where the compression algorithm name returned.
Returns
If the file is compressed, the region size if returned. Otherwise, zero is returned (file not compressed).

Reimplemented from XrdOssWrapDF.

Definition at line 67 of file XrdStatsFile.hh.

68  {
69  return wrapDF.isCompressed(cxidp);
70  }
virtual int isCompressed(char *cxidp=0)
Definition: XrdOss.hh:187

References XrdOssDF::isCompressed(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Open()

int StatsFile::Open ( const char *  path,
int  Oflag,
mode_t  Mode,
XrdOucEnv env 
)
inlineoverridevirtual

Open a file.

Parameters
path- Pointer to the path of the file to be opened.
Oflag- Standard open flags.
Mode- File open mode (ignored unless creating a file).
env- Reference to environmental information.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 23 of file XrdStatsFile.hh.

24  {
25  StatsFileSystem::OpTimer op(m_oss.m_ops.m_open_ops, m_oss.m_slow_ops.m_open_ops, m_oss.m_times.m_open, m_oss.m_slow_times.m_open, m_oss.m_slow_duration);
26  return wrapDF.Open(path, Oflag, Mode, env);
27  }
int Mode
virtual int Open(const char *path, int Oflag, mode_t Mode, XrdOucEnv &env)
Definition: XrdOss.hh:200

References Mode, XrdOssDF::Open(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ pgRead() [1/2]

ssize_t StatsFile::pgRead ( void *  buffer,
off_t  offset,
size_t  rdlen,
uint32_t *  csvec,
uint64_t  opts 
)
inlineoverridevirtual

Read file pages into a buffer and return corresponding checksums.

Parameters
buffer- pointer to buffer where the bytes are to be placed.
offset- The offset where the read is to start. It must be page aligned.
rdlen- The number of bytes to read. The amount must be an integral number of XrdSfsPage::Size bytes.
csvec- A vector of entries to be filled with the cooresponding CRC32C checksum for each page. It must be size to rdlen/XrdSys::PageSize + (rdlenXrdSys::PageSize != 0)
opts- Processing options (see below).
Returns
>= 0 The number of bytes that placed in buffer upon success.
< 0 -errno or -osserr upon failure. (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 72 of file XrdStatsFile.hh.

74  {
75  StatsFileSystem::OpTimer op(m_oss.m_ops.m_pgread_ops, m_oss.m_slow_ops.m_pgread_ops, m_oss.m_times.m_pgread, m_oss.m_slow_times.m_pgread, m_oss.m_slow_duration);
76  return wrapDF.pgRead(buffer, offset, rdlen, csvec, opts);
77  }
struct myOpts opts
virtual ssize_t pgRead(void *buffer, off_t offset, size_t rdlen, uint32_t *csvec, uint64_t opts)
Definition: XrdOss.cc:160

References opts, XrdOssDF::pgRead(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ pgRead() [2/2]

int StatsFile::pgRead ( XrdSfsAio aioparm,
uint64_t  opts 
)
inlineoverridevirtual

Read file pages and checksums using asynchronous I/O.

Parameters
aioparm- Pointer to async I/O object controlling the I/O.
opts- Processing options (see above).
Returns
0 upon if request started success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 79 of file XrdStatsFile.hh.

80  {
81  StatsFileSystem::OpTimer op(m_oss.m_ops.m_pgread_ops, m_oss.m_slow_ops.m_pgread_ops, m_oss.m_times.m_pgread, m_oss.m_slow_times.m_pgread, m_oss.m_slow_duration);
82  return wrapDF.pgRead(aioparm, opts);
83  }

References opts, XrdOssDF::pgRead(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ pgWrite() [1/2]

ssize_t StatsFile::pgWrite ( void *  buffer,
off_t  offset,
size_t  wrlen,
uint32_t *  csvec,
uint64_t  opts 
)
inlineoverridevirtual

Write file pages into a file with corresponding checksums.

Parameters
buffer- pointer to buffer containing the bytes to write.
offset- The offset where the write is to start. It must be page aligned.
wrlen- The number of bytes to write. If amount is not an integral number of XrdSys::PageSize bytes, then this must be the last write to the file at or above the offset.
csvec- A vector which contains the corresponding CRC32 checksum for each page. It must be size to wrlen/XrdSys::PageSize + (wrlenXrdSys::PageSize != 0)
opts- Processing options (see above).
Returns
>= 0 The number of bytes written upon success. or -errno or -osserr upon failure. (see XrdOssError.hh).
< 0 -errno or -osserr upon failure. (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 85 of file XrdStatsFile.hh.

87  {
88  StatsFileSystem::OpTimer op(m_oss.m_ops.m_pgwrite_ops, m_oss.m_slow_ops.m_pgwrite_ops, m_oss.m_times.m_pgwrite, m_oss.m_slow_times.m_pgwrite, m_oss.m_slow_duration);
89  return wrapDF.pgWrite(buffer, offset, wrlen, csvec, opts);
90  }
virtual ssize_t pgWrite(void *buffer, off_t offset, size_t wrlen, uint32_t *csvec, uint64_t opts)
Definition: XrdOss.cc:198

References opts, XrdOssDF::pgWrite(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ pgWrite() [2/2]

int StatsFile::pgWrite ( XrdSfsAio aioparm,
uint64_t  opts 
)
inlineoverridevirtual

Write file pages and checksums using asynchronous I/O.

Parameters
aioparm- Pointer to async I/O object controlling the I/O.
opts- Processing options (see above).
Returns
0 upon if request started success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 92 of file XrdStatsFile.hh.

93  {
94  StatsFileSystem::OpTimer op(m_oss.m_ops.m_pgwrite_ops, m_oss.m_slow_ops.m_pgwrite_ops, m_oss.m_times.m_pgwrite, m_oss.m_slow_times.m_pgwrite, m_oss.m_slow_duration);
95  return wrapDF.pgWrite(aioparm, opts);
96  }

References opts, XrdOssDF::pgWrite(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Read() [1/3]

ssize_t StatsFile::Read ( off_t  offset,
size_t  size 
)
inlineoverridevirtual

Preread file blocks into the file system cache.

Parameters
offset- The offset where the read is to start.
size- The number of bytes to pre-read.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 98 of file XrdStatsFile.hh.

99  {
100  StatsFileSystem::OpTimer op(m_oss.m_ops.m_read_ops, m_oss.m_slow_ops.m_read_ops, m_oss.m_times.m_read, m_oss.m_slow_times.m_read, m_oss.m_slow_duration);
101  return wrapDF.Read(offset, size);
102  }
virtual ssize_t Read(off_t offset, size_t size)
Definition: XrdOss.hh:281

References XrdOssDF::Read(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Read() [2/3]

ssize_t StatsFile::Read ( void *  buffer,
off_t  offset,
size_t  size 
)
inlineoverridevirtual

Read file bytes into a buffer.

Parameters
buffer- pointer to buffer where the bytes are to be placed.
offset- The offset where the read is to start.
size- The number of bytes to read.
Returns
>= 0 The number of bytes that placed in buffer.
< 0 -errno or -osserr upon failure (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 104 of file XrdStatsFile.hh.

105  {
106  StatsFileSystem::OpTimer op(m_oss.m_ops.m_read_ops, m_oss.m_slow_ops.m_read_ops, m_oss.m_times.m_read, m_oss.m_slow_times.m_read, m_oss.m_slow_duration);
107  return wrapDF.Read(buffer, offset, size);
108  }

References XrdOssDF::Read(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Read() [3/3]

int StatsFile::Read ( XrdSfsAio aiop)
inlineoverridevirtual

Read file bytes using asynchronous I/O.

Parameters
aiop- Pointer to async I/O object controlling the I/O.
Returns
0 upon if request started success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 110 of file XrdStatsFile.hh.

111  {
112  StatsFileSystem::OpTimer op(m_oss.m_ops.m_read_ops, m_oss.m_slow_ops.m_read_ops, m_oss.m_times.m_read, m_oss.m_slow_times.m_read, m_oss.m_slow_duration);
113  return wrapDF.Read(aiop);
114  }

References XrdOssDF::Read(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ ReadRaw()

ssize_t StatsFile::ReadRaw ( void *  buffer,
off_t  offset,
size_t  size 
)
inlineoverridevirtual

Read uncompressed file bytes into a buffer.

Parameters
buffer- pointer to buffer where the bytes are to be placed.
offset- The offset where the read is to start.
size- The number of bytes to read.
Returns
>= 0 The number of bytes that placed in buffer.
< 0 -errno or -osserr upon failure (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 116 of file XrdStatsFile.hh.

117  {
118  StatsFileSystem::OpTimer op(m_oss.m_ops.m_read_ops, m_oss.m_slow_ops.m_read_ops, m_oss.m_times.m_read, m_oss.m_slow_times.m_read, m_oss.m_slow_duration);
119  return wrapDF.ReadRaw(buffer, offset, size);
120  }
virtual ssize_t ReadRaw(void *buffer, off_t offset, size_t size)
Definition: XrdOss.hh:319

References XrdOssDF::ReadRaw(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ ReadV()

ssize_t StatsFile::ReadV ( XrdOucIOVec readV,
int  rdvcnt 
)
inlineoverridevirtual

Read file bytes as directed by the read vector.

Parameters
readVpointer to the array of read requests.
rdvcntthe number of elements in readV.
Returns
>=0 The numbe of bytes read.
< 0 -errno or -osserr upon failure (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 122 of file XrdStatsFile.hh.

123  {
124  auto start = std::chrono::steady_clock::now();
125  auto result = wrapDF.ReadV(readV, rdvcnt);
126  auto dur = std::chrono::steady_clock::now() - start;
127  m_oss.m_ops.m_readv_ops++;
128  m_oss.m_ops.m_readv_segs += rdvcnt;
129  auto ns = std::chrono::nanoseconds(dur).count();
130  m_oss.m_times.m_readv += ns;
131  if (dur > m_oss.m_slow_duration) {
132  m_oss.m_slow_ops.m_readv_ops++;
133  m_oss.m_slow_ops.m_readv_segs += rdvcnt;
134  m_oss.m_times.m_readv += std::chrono::nanoseconds(dur).count();
135  }
136  return result;
137  }
virtual ssize_t ReadV(XrdOucIOVec *readV, int rdvcnt)
Definition: XrdOss.cc:236

References XrdOssDF::ReadV(), and XrdOssWrapDF::wrapDF.

+ Here is the call graph for this function:

◆ Write() [1/2]

ssize_t StatsFile::Write ( const void *  buffer,
off_t  offset,
size_t  size 
)
inlineoverridevirtual

Write file bytes from a buffer.

Parameters
buffer- pointer to buffer where the bytes reside.
offset- The offset where the write is to start.
size- The number of bytes to write.
Returns
>= 0 The number of bytes that were written.
< 0 -errno or -osserr upon failure (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 139 of file XrdStatsFile.hh.

140  {
141  StatsFileSystem::OpTimer op(m_oss.m_ops.m_write_ops, m_oss.m_slow_ops.m_write_ops, m_oss.m_times.m_write, m_oss.m_slow_times.m_write, m_oss.m_slow_duration);
142  return wrapDF.Write(buffer, offset, size);
143  }
virtual ssize_t Write(const void *buffer, off_t offset, size_t size)
Definition: XrdOss.hh:345

References XrdOssWrapDF::wrapDF, and XrdOssDF::Write().

+ Here is the call graph for this function:

◆ Write() [2/2]

int StatsFile::Write ( XrdSfsAio aiop)
inlineoverridevirtual

Write file bytes using asynchronous I/O.

Parameters
aiop- Pointer to async I/O object controlling the I/O.
Returns
0 upon if request started success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 145 of file XrdStatsFile.hh.

146  {
147  StatsFileSystem::OpTimer op(m_oss.m_ops.m_write_ops, m_oss.m_slow_ops.m_write_ops, m_oss.m_times.m_write, m_oss.m_slow_times.m_write, m_oss.m_slow_duration);
148  return wrapDF.Write(aiop);
149  }

References XrdOssWrapDF::wrapDF, and XrdOssDF::Write().

+ Here is the call graph for this function:

◆ WriteV()

ssize_t StatsFile::WriteV ( XrdOucIOVec writeV,
int  wrvcnt 
)
inlineoverridevirtual

Write file bytes as directed by the write vector.

Parameters
writeVpointer to the array of write requests.
wrvcntthe number of elements in writeV.
Returns
>=0 The numbe of bytes read.
< 0 -errno or -osserr upon failure (see XrdOssError.hh).

Reimplemented from XrdOssWrapDF.

Definition at line 151 of file XrdStatsFile.hh.

152  {
153  StatsFileSystem::OpTimer op(m_oss.m_ops.m_write_ops, m_oss.m_slow_ops.m_write_ops, m_oss.m_times.m_write, m_oss.m_slow_times.m_write, m_oss.m_slow_duration);
154  return wrapDF.WriteV(writeV, wrvcnt);
155  }
virtual ssize_t WriteV(XrdOucIOVec *writeV, int wrvcnt)
Definition: XrdOss.cc:257

References XrdOssWrapDF::wrapDF, and XrdOssDF::WriteV().

+ Here is the call graph for this function:

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