XrdOssFile Class Reference

#include <XrdOssApi.hh>

Inheritance diagram for XrdOssFile:

XrdOssDF List of all members.

Public Member Functions

virtual int Close (long long *retsz=0)
virtual int Open (const char *, int, mode_t, XrdOucEnv &)
int Fchmod (mode_t mode)
int Fstat (struct stat *)
int Fsync ()
int Fsync (XrdSfsAio *aiop)
int Ftruncate (unsigned long long)
int getFD ()
off_t getMmap (void **addr)
int isCompressed (char *cxidp=0)
ssize_t Read (off_t, size_t)
ssize_t Read (void *, off_t, size_t)
int Read (XrdSfsAio *aiop)
ssize_t ReadRaw (void *, off_t, size_t)
ssize_t Write (const void *, off_t, size_t)
int Write (XrdSfsAio *aiop)
 XrdOssFile (const char *tid)
virtual ~XrdOssFile ()

Private Member Functions

int Open_ufs (const char *, int, int, unsigned long long)

Private Attributes

oocx_CXFile * cxobj
XrdOssCache_FScacheP
XrdOssMioFilemmFile
const char * tident
long long FSize
int rawio
int cxpgsz
char cxid [4]

Static Private Attributes

static int AioFailure

Detailed Description

Definition at line 61 of file XrdOssApi.hh.


Constructor & Destructor Documentation

XrdOssFile::XrdOssFile ( const char *  tid  )  [inline]

Definition at line 87 of file XrdOssApi.hh.

References cxid, cxobj, cxpgsz, mmFile, rawio, and tident.

virtual XrdOssFile::~XrdOssFile (  )  [inline, virtual]

Definition at line 92 of file XrdOssApi.hh.

References Close(), and XrdOssDF::fd.


Member Function Documentation

int XrdOssFile::Close ( long long retsz = 0  )  [virtual]

Implements XrdOssDF.

Definition at line 660 of file XrdOssApi.cc.

References XrdOssCache::Adjust(), cacheP, close, cxobj, XrdOssDF::fd, FSize, fstat, mmFile, XrdOssMio::Recycle(), stat, XRDOSS_E8004, and XrdOssOK.

Referenced by ~XrdOssFile().

int XrdOssFile::Open ( const char *  ,
int  ,
mode_t  ,
XrdOucEnv  
) [virtual]

Reimplemented from XrdOssDF.

Definition at line 574 of file XrdOssApi.cc.

References cacheP, XrdOssSys::chkMmap, close, cxobj, XrdSysError::Emsg(), ETXTBSY, XrdOssDF::fd, XrdOssCache::Find(), FSize, fstat, XrdOssMio::getOpts(), int, XrdOssSys::lcl_N2N, XrdOucName2Name::lfn2pfn(), XrdOssMio::Map(), mmFile, Open_ufs(), OssEroute, OSSMIO_MLOK, OSSMIO_MMAP, OSSMIO_MPRM, XrdOssSys::PathOpts(), XrdOssSys::Stage(), stat, tident, XrdOssSys::tryMmap, XRDEXP_FORCERO, XRDEXP_MKEEP, XRDEXP_MLOK, XRDEXP_MMAP, XRDEXP_NOTRW, XRDEXP_REMOTE, XRDEXP_STAGE, XRDOSS_E8003, XRDOSS_E8005, XRDOSS_E8006, XrdOssOK, and XrdOssSS.

Referenced by Open_ufs().

int XrdOssFile::Fchmod ( mode_t  mode  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 811 of file XrdOssApi.cc.

References fchmod(), XrdOssDF::fd, and XrdOssOK.

int XrdOssFile::Fstat ( struct stat *   )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 828 of file XrdOssApi.cc.

References XrdOssDF::fd, fstat, and XrdOssOK.

int XrdOssFile::Fsync (  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 844 of file XrdOssApi.cc.

References XrdOssDF::fd, fsync, and XrdOssOK.

Referenced by Fsync().

int XrdOssFile::Fsync ( XrdSfsAio aiop  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 79 of file XrdOssAio.cc.

References aiocb::aio_fildes, aiocb::aio_sigevent, XrdOssSys::AioAllOk, AioFailure, XrdSfsAio::doneWrite(), XrdSysError::Emsg(), ENOSYS, fcnt, XrdOssDF::fd, Fsync(), XrdSfsAio::Result, XrdSfsAio::sfsAio, tident, and XrdSfsAio::TIdent.

int XrdOssFile::Ftruncate ( unsigned long  long  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 915 of file XrdOssApi.cc.

References XrdOssDF::fd, ftruncate, XRDOSS_E8008, and XrdOssOK.

int XrdOssFile::getFD (  )  [inline, virtual]

Reimplemented from XrdOssDF.

Definition at line 76 of file XrdOssApi.hh.

References XrdOssDF::fd.

off_t XrdOssFile::getMmap ( void **  addr  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 863 of file XrdOssApi.cc.

References XrdOssMioFile::Export(), and mmFile.

int XrdOssFile::isCompressed ( char *  cxidp = 0  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 884 of file XrdOssApi.cc.

References cxid, and cxpgsz.

ssize_t XrdOssFile::Read ( off_t  ,
size_t   
) [virtual]

Reimplemented from XrdOssDF.

Definition at line 693 of file XrdOssApi.cc.

References XrdOssDF::fd, ssize_t, and XRDOSS_E8004.

Referenced by Read().

ssize_t XrdOssFile::Read ( void *  ,
off_t  ,
size_t   
) [virtual]

Reimplemented from XrdOssDF.

Definition at line 718 of file XrdOssApi.cc.

References cxobj, XrdOssSys::DirFlags, XrdOssDF::fd, pread, retval, ssize_t, XRDOSS_E8004, XRDOSS_E8021, and XrdOssSS.

int XrdOssFile::Read ( XrdSfsAio aiop  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 131 of file XrdOssAio.cc.

References aiocb::aio_buf, aiocb::aio_fildes, aiocb::aio_nbytes, aiocb::aio_offset, aiocb::aio_sigevent, XrdOssSys::AioAllOk, AioFailure, Debug, XrdSfsAio::doneRead(), XrdSysError::Emsg(), ENOSYS, EPNAME, fcnt, XrdOssDF::fd, Read(), XrdSfsAio::Result, XrdSfsAio::sfsAio, size_t, tident, XrdSfsAio::TIdent, and TRACE.

ssize_t XrdOssFile::ReadRaw ( void *  ,
off_t  ,
size_t   
) [virtual]

Reimplemented from XrdOssDF.

Definition at line 752 of file XrdOssApi.cc.

References cxobj, XrdOssDF::fd, pread, retval, ssize_t, and XRDOSS_E8004.

ssize_t XrdOssFile::Write ( const void *  ,
off_t  ,
size_t   
) [virtual]

Reimplemented from XrdOssDF.

Definition at line 783 of file XrdOssApi.cc.

References cxobj, XrdOssDF::fd, XrdOssSys::MaxSize, pwrite, retval, ssize_t, XRDOSS_E8004, XRDOSS_E8007, XRDOSS_E8022, and XrdOssSS.

Referenced by Write().

int XrdOssFile::Write ( XrdSfsAio aiop  )  [virtual]

Reimplemented from XrdOssDF.

Definition at line 189 of file XrdOssAio.cc.

References aiocb::aio_buf, aiocb::aio_fildes, aiocb::aio_nbytes, aiocb::aio_offset, aiocb::aio_sigevent, XrdOssSys::AioAllOk, AioFailure, Debug, XrdSfsAio::doneWrite(), XrdSysError::Emsg(), ENOSYS, EPNAME, fcnt, XrdOssDF::fd, XrdSfsAio::Result, XrdSfsAio::sfsAio, size_t, tident, XrdSfsAio::TIdent, TRACE, and Write().

int XrdOssFile::Open_ufs ( const char *  ,
int  ,
int  ,
unsigned long  long 
) [private]

Definition at line 932 of file XrdOssApi.cc.

References close, cxid, cxobj, cxpgsz, XrdSysError::Emsg(), EPNAME, F_SETFD, fcntl(), FD_CLOEXEC, XrdOssSys::FDFence, open, Open(), OssEroute, XrdOssLock::Serialize(), TRACE, XrdOssLock::UnSerialize(), XRDEXP_COMPCHK, XRDEXP_MIG, XRDEXP_PURGE, XRDEXP_REMOTE, XRDOSS_E8022, XrdOssDIR, XrdOssEXC, XrdOssSHR, and XrdOssSS.

Referenced by Open().


Member Data Documentation

int XrdOssFile::AioFailure [static, private]

Definition at line 97 of file XrdOssApi.hh.

Referenced by Fsync(), Read(), and Write().

oocx_CXFile* XrdOssFile::cxobj [private]

Definition at line 98 of file XrdOssApi.hh.

Referenced by Close(), Open(), Open_ufs(), Read(), ReadRaw(), Write(), and XrdOssFile().

XrdOssCache_FS* XrdOssFile::cacheP [private]

Definition at line 99 of file XrdOssApi.hh.

Referenced by Close(), and Open().

XrdOssMioFile* XrdOssFile::mmFile [private]

Definition at line 100 of file XrdOssApi.hh.

Referenced by Close(), getMmap(), Open(), and XrdOssFile().

const char* XrdOssFile::tident [private]

Definition at line 101 of file XrdOssApi.hh.

Referenced by Fsync(), Open(), Read(), Write(), and XrdOssFile().

long long XrdOssFile::FSize [private]

Definition at line 102 of file XrdOssApi.hh.

Referenced by Close(), and Open().

int XrdOssFile::rawio [private]

Definition at line 103 of file XrdOssApi.hh.

Referenced by XrdOssFile().

int XrdOssFile::cxpgsz [private]

Definition at line 104 of file XrdOssApi.hh.

Referenced by isCompressed(), Open_ufs(), and XrdOssFile().

char XrdOssFile::cxid[4] [private]

Definition at line 105 of file XrdOssApi.hh.

Referenced by isCompressed(), Open_ufs(), and XrdOssFile().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:36 2011 for ROOT_528-00b_version by  doxygen 1.5.1