|
xrootd
|
#include <XrdOssApi.hh>


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_FS * | cacheP |
| XrdOssMioFile * | mmFile |
| const char * | tident |
| long long | FSize |
| int | rawio |
| int | cxpgsz |
| char | cxid [4] |
Static Private Attributes | |
| static int | AioFailure = 0 |
| XrdOssFile::XrdOssFile | ( | const char * | tid | ) | [inline] |
| virtual XrdOssFile::~XrdOssFile | ( | ) | [inline, virtual] |
References XrdOssDF::fd, and Close().
| int XrdOssFile::Close | ( | long long * | retsz = 0 | ) | [virtual] |
Implements XrdOssDF.
References XrdOssDF::fd, XRDOSS_E8004, cacheP, stat(), fstat(), FSize, XrdOssCache::Adjust(), close, mmFile, XrdOssMio::Recycle(), cxobj, and XrdOssOK.
Referenced by ~XrdOssFile().
| int XrdOssFile::Fchmod | ( | mode_t | mode | ) | [virtual] |
Reimplemented from XrdOssDF.
References XrdOssDF::fd, and XrdOssOK.
| int XrdOssFile::Fstat | ( | struct stat * | buff | ) | [virtual] |
Reimplemented from XrdOssDF.
References fstat(), XrdOssDF::fd, and XrdOssOK.
| int XrdOssFile::Fsync | ( | void | ) | [virtual] |
| int XrdOssFile::Fsync | ( | XrdSfsAio * | aiop | ) | [virtual] |
Reimplemented from XrdOssDF.
References XrdOssSys::AioAllOk, XrdSfsAio::sfsAio, aiocb::aio_fildes, XrdOssDF::fd, aiocb::aio_sigevent, XrdSfsAio::TIdent, tident, AioFailure, XrdSysError::Emsg(), XrdSfsAio::Result, Fsync(), and XrdSfsAio::doneWrite().
| int XrdOssFile::Ftruncate | ( | unsigned long long | flen | ) | [virtual] |
Reimplemented from XrdOssDF.
References XRDOSS_E8008, ftruncate(), XrdOssDF::fd, and XrdOssOK.
| int XrdOssFile::getFD | ( | ) | [inline, virtual] |
Reimplemented from XrdOssDF.
References XrdOssDF::fd.
| off_t XrdOssFile::getMmap | ( | void ** | addr | ) | [virtual] |
Reimplemented from XrdOssDF.
References mmFile, and XrdOssMioFile::Export().
| int XrdOssFile::isCompressed | ( | char * | cxidp = 0 | ) | [virtual] |
Reimplemented from XrdOssDF.
References stat(), XrdOssDF::fd, XRDOSS_E8003, cxobj, XrdOssSys::PathOpts(), XRDEXP_STAGE, XrdOucEnv::Get(), XrdOssSys::lcl_N2N, XrdOucName2Name::lfn2pfn(), XRDEXP_NOTRW, XRDEXP_FORCERO, OssEroute, XrdSysError::Emsg(), XRDOSS_E8005, Open_ufs(), XRDEXP_REMOTE, XRDOSS_E8006, XrdOssSys::Stage(), tident, fstat(), close, FSize, cacheP, XrdOssCache::Find(), ETXTBSY, XrdOssSys::tryMmap, Info, XRDEXP_NOXATTR, XrdOssSys::chkMmap, XrdOucXAttr::Get(), XRDEXP_MKEEP, XrdOucXAttr::Attr, XrdFrcXAttrMem::memKeep, OSSMIO_MPRM, XRDEXP_MLOK, XrdFrcXAttrMem::memLock, OSSMIO_MLOK, XRDEXP_MMAP, XrdFrcXAttrMem::memMap, OSSMIO_MMAP, mmFile, XrdOssMio::Map(), and XrdOssOK.
Referenced by Open_ufs().
| int XrdOssFile::Open_ufs | ( | const char * | path, |
| int | Oflag, | ||
| int | Mode, | ||
| unsigned long long | popts | ||
| ) | [private] |
References EPNAME, open(), XRDEXP_PURGE, XRDEXP_MIG, FLOCK_t, fcntl(), cxid, cxpgsz, close, XRDOSS_E8022, XrdOssSys::FDFence, OssEroute, XrdSysError::Emsg(), F_SETFD, FD_CLOEXEC, cxobj, TRACE, and Open().
Referenced by Open().
| ssize_t XrdOssFile::Read | ( | off_t | offset, |
| size_t | blen | ||
| ) | [virtual] |
Reimplemented from XrdOssDF.
References XrdOssDF::fd, ssize_t, and XRDOSS_E8004.
Referenced by Read().
| ssize_t XrdOssFile::Read | ( | void * | buff, |
| off_t | offset, | ||
| size_t | blen | ||
| ) | [virtual] |
Reimplemented from XrdOssDF.
References ssize_t, XrdOssDF::fd, XRDOSS_E8004, cxobj, XrdOssSys::DirFlags, XRDOSS_E8021, and pread().
| int XrdOssFile::Read | ( | XrdSfsAio * | aiop | ) | [virtual] |
Reimplemented from XrdOssDF.
References EPNAME, XrdOssSys::AioAllOk, XrdSfsAio::sfsAio, aiocb::aio_fildes, XrdOssDF::fd, aiocb::aio_sigevent, XrdSfsAio::TIdent, tident, TRACE, Debug, aiocb::aio_nbytes, aiocb::aio_offset, AioFailure, XrdSysError::Emsg(), XrdSfsAio::Result, Read(), aiocb::aio_buf, and XrdSfsAio::doneRead().
| ssize_t XrdOssFile::ReadRaw | ( | void * | buff, |
| off_t | offset, | ||
| size_t | blen | ||
| ) | [virtual] |
Reimplemented from XrdOssDF.
References ssize_t, XrdOssDF::fd, XRDOSS_E8004, cxobj, and pread().
| ssize_t XrdOssFile::Write | ( | const void * | buff, |
| off_t | offset, | ||
| size_t | blen | ||
| ) | [virtual] |
Reimplemented from XrdOssDF.
References ssize_t, XrdOssDF::fd, XRDOSS_E8004, XrdOssSys::MaxSize, XRDOSS_E8007, pwrite(), cxobj, and XRDOSS_E8022.
Referenced by Write().
| int XrdOssFile::Write | ( | XrdSfsAio * | aiop | ) | [virtual] |
Reimplemented from XrdOssDF.
References EPNAME, XrdOssSys::AioAllOk, XrdSfsAio::sfsAio, aiocb::aio_fildes, XrdOssDF::fd, aiocb::aio_sigevent, XrdSfsAio::TIdent, tident, TRACE, Debug, aiocb::aio_nbytes, aiocb::aio_offset, AioFailure, XrdSysError::Emsg(), XrdSfsAio::Result, Write(), aiocb::aio_buf, and XrdSfsAio::doneWrite().
int XrdOssFile::AioFailure = 0 [static, private] |
XrdOssCache_FS* XrdOssFile::cacheP [private] |
char XrdOssFile::cxid[4] [private] |
Referenced by isCompressed(), Open_ufs(), and XrdOssFile().
oocx_CXFile* XrdOssFile::cxobj [private] |
Referenced by Open(), Close(), Read(), ReadRaw(), Write(), Open_ufs(), and XrdOssFile().
int XrdOssFile::cxpgsz [private] |
Referenced by isCompressed(), Open_ufs(), and XrdOssFile().
long long XrdOssFile::FSize [private] |
XrdOssMioFile* XrdOssFile::mmFile [private] |
Referenced by Open(), Close(), getMmap(), and XrdOssFile().
int XrdOssFile::rawio [private] |
Referenced by XrdOssFile().
const char* XrdOssFile::tident [private] |
Referenced by Fsync(), Read(), Write(), Open(), and XrdOssFile().
1.7.5