XRootD
XrdOfsHanOssErr Class Reference
+ Inheritance diagram for XrdOfsHanOssErr:
+ Collaboration diagram for XrdOfsHanOssErr:

Public Member Functions

 XrdOfsHanOssErr (XrdOssDF *ossp, int rrc=-EBADF, int wrc=-EBADF)
 
 ~XrdOfsHanOssErr ()
 
int Close (long long *retsz=0)
 
int Fstat (struct stat *Stat)
 
ssize_t pgRead (void *buffer, off_t offset, size_t rdlen, uint32_t *csvec, uint64_t opts)
 
int pgRead (XrdSfsAio *aioparm, uint64_t opts)
 
ssize_t Read (off_t offset, size_t rlen)
 
ssize_t Read (void *buff, off_t offset, size_t rlen)
 
int Read (XrdSfsAio *aiop)
 
int Readdir (char *buff, int blen)
 
ssize_t ReadRaw (void *buff, off_t offset, size_t rlen)
 
ssize_t ReadV (XrdOucIOVec *readV, int rdvcnt)
 
- Public Member Functions inherited from XrdOfsHanOss
 XrdOfsHanOss (int rrc=-EBADF, int wrc=-EBADF)
 
 ~XrdOfsHanOss ()
 
int Fchmod (mode_t mode)
 
int Fsync ()
 
int Fsync (XrdSfsAio *aiop)
 
int Ftruncate (unsigned long long)
 
off_t getMmap (void **addr)
 
int isCompressed (char *cxidp=0)
 
int Open (const char *, int, mode_t, XrdOucEnv &)
 
int Opendir (const char *, XrdOucEnv &)
 
ssize_t pgWrite (void *buffer, off_t offset, size_t wrlen, uint32_t *csvec, uint64_t opts)
 
int pgWrite (XrdSfsAio *aioparm, uint64_t opts)
 
ssize_t Write (const void *, off_t, size_t)
 
int Write (XrdSfsAio *aiop)
 
ssize_t WriteV (XrdOucIOVec *writeV, int wrvcnt)
 
- Public Member Functions inherited from XrdOssDF
 XrdOssDF (const char *tid="", uint16_t dftype=0, int fdnum=-1)
 
virtual ~XrdOssDF ()
 
uint16_t DFType ()
 
virtual int Fctl (int cmd, int alen, const char *args, char **resp=0)
 
virtual void Flush ()
 Flush filesystem cached pages for this file (used for checksums). More...
 
virtual int getFD ()
 
virtual const char * getTID ()
 
virtual int StatRet (struct stat *buff)
 

Protected Attributes

XrdOssDFossP
 
- Protected Attributes inherited from XrdOfsHanOss
int rRC
 
int wRC
 
- Protected Attributes inherited from XrdOssDF
uint16_t dfType
 
int fd
 
off_t pgwEOF
 
short rsvd
 
const char * tident
 

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...
 

Detailed Description

Definition at line 97 of file XrdOfsHandle.cc.

Constructor & Destructor Documentation

◆ XrdOfsHanOssErr()

XrdOfsHanOssErr::XrdOfsHanOssErr ( XrdOssDF ossp,
int  rrc = -EBADF,
int  wrc = -EBADF 
)
inline

Definition at line 143 of file XrdOfsHandle.cc.

144  : XrdOfsHanOss(rrc, wrc), ossP(ossp)
145  {tident = ossp->getTID();
146  fd = ossp->getFD();
147  dfType = ossp->DFType();
148  }
XrdOssDF * ossP
XrdOfsHanOss(int rrc=-EBADF, int wrc=-EBADF)
Definition: XrdOfsHandle.cc:84
uint16_t dfType
Definition: XrdOss.hh:456
const char * tident
Definition: XrdOss.hh:453
virtual const char * getTID()
Definition: XrdOss.hh:434
int fd
Definition: XrdOss.hh:455
virtual int getFD()
Definition: XrdOss.hh:426
uint16_t DFType()
Definition: XrdOss.hh:396

References XrdOssDF::DFType(), XrdOssDF::dfType, XrdOssDF::fd, XrdOssDF::getFD(), XrdOssDF::getTID(), and XrdOssDF::tident.

+ Here is the call graph for this function:

◆ ~XrdOfsHanOssErr()

XrdOfsHanOssErr::~XrdOfsHanOssErr ( )
inline

Definition at line 150 of file XrdOfsHandle.cc.

150 {delete ossP;}

References ossP.

Member Function Documentation

◆ Close()

int XrdOfsHanOssErr::Close ( long long *  retsz = 0)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 141 of file XrdOfsHandle.cc.

141 {return ossP->Close(retsz);}
virtual int Close(long long *retsz=0)=0

References XrdOssDF::Close(), and ossP.

+ Here is the call graph for this function:

◆ Fstat()

int XrdOfsHanOssErr::Fstat ( struct stat buf)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 103 of file XrdOfsHandle.cc.

103 {return ossP->Fstat(Stat);}
struct stat Stat
Definition: XrdCks.cc:49
virtual int Fstat(struct stat *buf)
Definition: XrdOss.hh:136

References XrdOssDF::Fstat(), ossP, and Stat.

+ Here is the call graph for this function:

◆ pgRead() [1/2]

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

Reimplemented from XrdOfsHanOss.

Definition at line 105 of file XrdOfsHandle.cc.

107  {if (rRC) return rRC;
108  return ossP->pgRead(buffer,offset,rdlen,csvec,opts);
109  }
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, ossP, XrdOssDF::pgRead(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

◆ pgRead() [2/2]

int XrdOfsHanOssErr::pgRead ( XrdSfsAio aioparm,
uint64_t  opts 
)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 111 of file XrdOfsHandle.cc.

112  {if (rRC) return rRC;
113  return ossP->pgRead(aioparm, opts);
114  }

References opts, ossP, XrdOssDF::pgRead(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

◆ Read() [1/3]

ssize_t XrdOfsHanOssErr::Read ( off_t  offset,
size_t  size 
)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 116 of file XrdOfsHandle.cc.

117  {if (rRC) return rRC;
118  return ossP->Read(offset, rlen);
119  }
virtual ssize_t Read(off_t offset, size_t size)
Definition: XrdOss.hh:281

References ossP, XrdOssDF::Read(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

◆ Read() [2/3]

ssize_t XrdOfsHanOssErr::Read ( void *  buffer,
off_t  offset,
size_t  size 
)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 121 of file XrdOfsHandle.cc.

122  {if (rRC) return rRC;
123  return ossP->Read(buff, offset, rlen);
124  }

References ossP, XrdOssDF::Read(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

◆ Read() [3/3]

int XrdOfsHanOssErr::Read ( XrdSfsAio aiop)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 126 of file XrdOfsHandle.cc.

127  {if (rRC) return rRC;
128  return ossP->Read(aiop);
129  }

References ossP, XrdOssDF::Read(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

◆ Readdir()

int XrdOfsHanOssErr::Readdir ( char *  buff,
int  blen 
)
inlinevirtual

Get the next directory entry.

Parameters
buff- Pointer to buffer where a null terminated string of the entry name is to be returned. If no more entries exist, a null string is returned.
blen- Length of the buffer.
Returns
0 upon success or -errno or -osserr (see XrdOssError.hh).

Reimplemented from XrdOfsHanOss.

Definition at line 100 of file XrdOfsHandle.cc.

101  {return (rRC ? rRC : ossP->Readdir(buff, blen));}
virtual int Readdir(char *buff, int blen)
Definition: XrdOss.hh:92

References ossP, XrdOssDF::Readdir(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

◆ ReadRaw()

ssize_t XrdOfsHanOssErr::ReadRaw ( void *  buffer,
off_t  offset,
size_t  size 
)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 136 of file XrdOfsHandle.cc.

137  {if (rRC) return rRC;
138  return ossP->ReadRaw(buff, offset, rlen);
139  }
virtual ssize_t ReadRaw(void *buffer, off_t offset, size_t size)
Definition: XrdOss.hh:319

References ossP, XrdOssDF::ReadRaw(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

◆ ReadV()

ssize_t XrdOfsHanOssErr::ReadV ( XrdOucIOVec readV,
int  rdvcnt 
)
inlinevirtual

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 XrdOfsHanOss.

Definition at line 131 of file XrdOfsHandle.cc.

132  {if (rRC) return rRC;
133  return ossP->ReadV(readV, rdvcnt);
134  }
virtual ssize_t ReadV(XrdOucIOVec *readV, int rdvcnt)
Definition: XrdOss.cc:236

References ossP, XrdOssDF::ReadV(), and XrdOfsHanOss::rRC.

+ Here is the call graph for this function:

Member Data Documentation

◆ ossP

XrdOssDF* XrdOfsHanOssErr::ossP
protected

Definition at line 154 of file XrdOfsHandle.cc.

Referenced by ~XrdOfsHanOssErr(), Close(), Fstat(), pgRead(), Read(), Readdir(), ReadRaw(), and ReadV().


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