xrootd
Public Member Functions | Private Attributes | List of all members
XrdPosixCacheBCIO Class Reference

#include <XrdPosixCacheBC.hh>

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

Public Member Functions

virtual XrdOucCacheIO2Base ()
 
virtual XrdOucCacheIO2Detach ()
 
virtual long long FSize ()
 
virtual int Fstat (struct stat &buf)
 
virtual const char * Location ()
 
virtual const char * Path ()
 
virtual int Read (char *Buffer, long long Offset, int Length)
 
virtual int ReadV (const XrdOucIOVec *readV, int n)
 
virtual int Sync ()
 
virtual int Trunc (long long Offset)
 
virtual int Write (char *Buffer, long long Offset, int Length)
 
virtual bool ioActive ()
 
virtual void Preread (long long Offset, int Length, int Opts=0)
 
virtual void Preread (aprParms &Parms)
 
 XrdPosixCacheBCIO (XrdOucCacheIO *urCIO, XrdOucCacheIO2 *myCIO)
 
virtual ~XrdPosixCacheBCIO ()
 
virtual void Read (XrdOucCacheIOCB &iocb, char *buff, long long offs, int rlen)
 
virtual int Read (char *Buffer, long long Offset, int Length)=0
 
virtual void ReadV (XrdOucCacheIOCB &iocb, const XrdOucIOVec *readV, int rnum)
 
virtual int ReadV (const XrdOucIOVec *readV, int n)
 
virtual void Sync (XrdOucCacheIOCB &iocb)
 
virtual int Sync ()=0
 
virtual void Write (XrdOucCacheIOCB &iocb, char *buff, long long offs, int wlen)
 
virtual int Write (char *Buffer, long long Offset, int Length)=0
 
- Public Member Functions inherited from XrdOucCacheIO2
virtual void Read (XrdOucCacheIOCB &iocb, char *buff, long long offs, int rlen)
 
virtual void ReadV (XrdOucCacheIOCB &iocb, const XrdOucIOVec *readV, int rnum)
 
virtual void Sync (XrdOucCacheIOCB &iocb)
 
virtual void Update (XrdOucCacheIO2 &iocp)
 
virtual void Write (XrdOucCacheIOCB &iocb, char *buff, long long offs, int wlen)
 
virtual ~XrdOucCacheIO2 ()
 
virtual int Read (char *Buffer, long long Offset, int Length)=0
 
virtual int ReadV (const XrdOucIOVec *readV, int n)
 
virtual int Write (char *Buffer, long long Offset, int Length)=0
 
- Public Member Functions inherited from XrdOucCacheIO
virtual ~XrdOucCacheIO ()
 

Private Attributes

XrdOucCacheIOcacheIO1
 
XrdOucCacheIO2cacheIO2
 

Additional Inherited Members

- Public Attributes inherited from XrdOucCacheIO
XrdOucCacheStats Statistics
 
- Static Public Attributes inherited from XrdOucCacheIO
static const int SingleUse = 0x0001
 

Constructor & Destructor Documentation

◆ XrdPosixCacheBCIO()

XrdPosixCacheBCIO::XrdPosixCacheBCIO ( XrdOucCacheIO urCIO,
XrdOucCacheIO2 myCIO 
)
inline

◆ ~XrdPosixCacheBCIO()

virtual XrdPosixCacheBCIO::~XrdPosixCacheBCIO ( )
inlinevirtual

Member Function Documentation

◆ Base()

virtual XrdOucCacheIO2* XrdPosixCacheBCIO::Base ( )
inlinevirtual

Reimplemented from XrdOucCacheIO.

References cacheIO2.

◆ Detach()

virtual XrdOucCacheIO2* XrdPosixCacheBCIO::Detach ( )
inlinevirtual

Reimplemented from XrdOucCacheIO.

References cacheIO1, cacheIO2, and XrdOucCacheIO::Detach().

◆ FSize()

virtual long long XrdPosixCacheBCIO::FSize ( )
inlinevirtual

Implements XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::FSize().

◆ Fstat()

virtual int XrdPosixCacheBCIO::Fstat ( struct stat sbuff)
inlinevirtual

Perform an fstat() operation (defaults to passthrough).

Parameters
sbuffreference to the stat buffer to be filled in. Only fields st_size, st_blocks, st_mtime (st_atime and st_ctime may be set to st_mtime), st_ino, and st_mode need to be set. All other fields are preset and should not be changed.
Returns
<0 - fstat failed, value is -errno. =0 - fstat succeeded, sbuff holds stat information. >0 - fstat could not be done, forward operation to next level.

Reimplemented from XrdOucCacheIO2.

References cacheIO2, and XrdOucCacheIO2::Fstat().

◆ ioActive()

virtual bool XrdPosixCacheBCIO::ioActive ( )
inlinevirtual

Reimplemented from XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::ioActive().

◆ Location()

virtual const char* XrdPosixCacheBCIO::Location ( )
inlinevirtual

Get the file's location (i.e. endpoint hostname and port)

Returns
A pointer to the file's location. It remains valid until the file is closed. A null string means the file is not open or is unknown.

Reimplemented from XrdOucCacheIO2.

References cacheIO2, and XrdOucCacheIO2::Location().

◆ Path()

virtual const char* XrdPosixCacheBCIO::Path ( )
inlinevirtual

Implements XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::Path().

◆ Preread() [1/2]

virtual void XrdPosixCacheBCIO::Preread ( aprParms Parms)
inlinevirtual

Reimplemented from XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::Preread().

◆ Preread() [2/2]

virtual void XrdPosixCacheBCIO::Preread ( long long  Offset,
int  Length,
int  Opts = 0 
)
inlinevirtual

Reimplemented from XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::Preread().

◆ Read() [1/3]

virtual int XrdPosixCacheBCIO::Read ( char *  Buffer,
long long  Offset,
int  Length 
)
inlinevirtual

Implements XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::Read().

◆ Read() [2/3]

virtual int XrdOucCacheIO::Read

Perform an asynchronous read (defaults to synchrnous).

Parameters
iocbreference to the callback object that receives the result. All results are returned via this object's Done() method. If the caller holds any locks they must be recursive locks as the callback may occur on the calling thread. Done() is passed < 0 - Read failed, value is -errno. >=0 - Read succeeded, value is number of bytes read.
buffpointer to the buffer to receive the results. The buffer must remain valid until the callback is invoked.
offsthe offset into the file.
rlenthe number of bytes to read.

◆ Read() [3/3]

virtual void XrdOucCacheIO2::Read
inline

◆ ReadV() [1/3]

virtual int XrdOucCacheIO::ReadV
inline

Perform an asynchronous vector read (defaults to synchrnous).

Parameters
iocbreference to the callback object that receives the result. All results are returned via this object's Done() method. If the caller holds any locks they must be recursive locks as the callback may occur on the calling thread. Done() is passed < 0 - ReadV failed, value is -errno. >=0 - ReadV succeeded, value is number of bytes read.
readVpointer to a vector of read requests.
rnumthe number of elements in the vector.

◆ ReadV() [2/3]

virtual int XrdPosixCacheBCIO::ReadV ( const XrdOucIOVec readV,
int  n 
)
inlinevirtual

Reimplemented from XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::ReadV().

◆ ReadV() [3/3]

virtual void XrdOucCacheIO2::ReadV
inline

◆ Sync() [1/3]

virtual int XrdPosixCacheBCIO::Sync ( )
inlinevirtual

Implements XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::Sync().

◆ Sync() [2/3]

virtual int XrdOucCacheIO::Sync
virtual

Perform an asynchronous fsync() operation (defaults to synchronous).

Parameters
iocbreference to the callback object that receives the result. All results are returned via this object's Done() method. If the caller holds any locks they must be recursive locks as the callback may occur on the calling thread. Done() is passed <0 - Sync failed, value is -errno. =0 - Sync succeeded.

Reimplemented from XrdOucCacheIO2.

◆ Sync() [3/3]

virtual void XrdOucCacheIO2::Sync
inlinevirtual

Perform an asynchronous fsync() operation (defaults to synchronous).

Parameters
iocbreference to the callback object that receives the result. All results are returned via this object's Done() method. If the caller holds any locks they must be recursive locks as the callback may occur on the calling thread. Done() is passed <0 - Sync failed, value is -errno. =0 - Sync succeeded.

Reimplemented from XrdOucCacheIO2.

References XrdOucCacheIOCB::Done(), and XrdOucCacheIO2::Sync().

◆ Trunc()

virtual int XrdPosixCacheBCIO::Trunc ( long long  Offset)
inlinevirtual

Implements XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::Trunc().

◆ Write() [1/3]

virtual int XrdPosixCacheBCIO::Write ( char *  Buffer,
long long  Offset,
int  Length 
)
inlinevirtual

Implements XrdOucCacheIO.

References cacheIO1, and XrdOucCacheIO::Write().

◆ Write() [2/3]

virtual int XrdOucCacheIO::Write

Perform an asynchronous write (defaults to synchronous).

Parameters
iocbreference to the callback object that receives the result. All results are returned via this object's Done() method. If the caller holds any locks they must be recursive locks as the callback may occur on the calling thread. < 0 - Write failed, value is -errno. >=0 - Write succeeded, value is number of bytes written.
buffpointer to the buffer holding the contents. The buffer must remain valid until the callback is invoked.
offsthe offset into the file.
wlenthe number of bytes to write

◆ Write() [3/3]

virtual void XrdOucCacheIO2::Write
inline

Member Data Documentation

◆ cacheIO1

XrdOucCacheIO* XrdPosixCacheBCIO::cacheIO1
private

◆ cacheIO2

XrdOucCacheIO2* XrdPosixCacheBCIO::cacheIO2
private

Referenced by Base(), Detach(), Fstat(), and Location().


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