XRootD
Loading...
Searching...
No Matches
XrdCephBuffer::IXrdCephBufferData Class Referenceabstract

Interface to the Buffer's physical representation. Allow an interface to encapsulate the requirements of a buffer's memory, without worrying about the details. Various options exist for the specific buffer implemented, and are left to the sub-classes. More...

#include <IXrdCephBufferData.hh>

Inheritance diagram for XrdCephBuffer::IXrdCephBufferData:
Collaboration diagram for XrdCephBuffer::IXrdCephBufferData:

Public Member Functions

virtual ~IXrdCephBufferData ()
virtual size_t capacity () const =0
virtual ssize_t invalidate ()=0
virtual bool isValid () const =0
 Currently occupied and valid space, which may be less than capacity.
virtual size_t length () const =0
 total available space
virtual const void * raw () const =0
 write data into the buffer, store the external offset
virtual void * raw ()=0
virtual ssize_t readBuffer (void *buf, off_t offset, size_t blen) const =0
 set cache into an invalid state
virtual void setLength (size_t len)=0
 Currently occupied and valid space, which may be less than capacity.
virtual off_t setStartingOffset (off_t offset)=0
virtual void setValid (bool isValid)=0
virtual off_t startingOffset () const =0
virtual ssize_t writeBuffer (const void *buf, off_t offset, size_t blen, off_t externalOffset)=0
 copy data from the internal buffer to buf

Detailed Description

Interface to the Buffer's physical representation. Allow an interface to encapsulate the requirements of a buffer's memory, without worrying about the details. Various options exist for the specific buffer implemented, and are left to the sub-classes.

Definition at line 18 of file IXrdCephBufferData.hh.

Constructor & Destructor Documentation

◆ ~IXrdCephBufferData()

virtual XrdCephBuffer::IXrdCephBufferData::~IXrdCephBufferData ( )
inlinevirtual

Definition at line 20 of file IXrdCephBufferData.hh.

20{}

Member Function Documentation

◆ capacity()

virtual size_t XrdCephBuffer::IXrdCephBufferData::capacity ( ) const
pure virtual

◆ invalidate()

virtual ssize_t XrdCephBuffer::IXrdCephBufferData::invalidate ( )
pure virtual

◆ isValid()

virtual bool XrdCephBuffer::IXrdCephBufferData::isValid ( ) const
pure virtual

Currently occupied and valid space, which may be less than capacity.

Implemented in XrdCephBuffer::XrdCephBufferDataSimple.

Referenced by setValid().

Here is the caller graph for this function:

◆ length()

virtual size_t XrdCephBuffer::IXrdCephBufferData::length ( ) const
pure virtual

total available space

Implemented in XrdCephBuffer::XrdCephBufferDataSimple.

◆ raw() [1/2]

virtual const void * XrdCephBuffer::IXrdCephBufferData::raw ( ) const
pure virtual

write data into the buffer, store the external offset

Implemented in XrdCephBuffer::XrdCephBufferDataSimple.

◆ raw() [2/2]

virtual void * XrdCephBuffer::IXrdCephBufferData::raw ( )
pure virtual

◆ readBuffer()

virtual ssize_t XrdCephBuffer::IXrdCephBufferData::readBuffer ( void * buf,
off_t offset,
size_t blen ) const
pure virtual

set cache into an invalid state

Implemented in XrdCephBuffer::XrdCephBufferDataSimple.

◆ setLength()

virtual void XrdCephBuffer::IXrdCephBufferData::setLength ( size_t len)
pure virtual

Currently occupied and valid space, which may be less than capacity.

Implemented in XrdCephBuffer::XrdCephBufferDataSimple.

◆ setStartingOffset()

virtual off_t XrdCephBuffer::IXrdCephBufferData::setStartingOffset ( off_t offset)
pure virtual

◆ setValid()

virtual void XrdCephBuffer::IXrdCephBufferData::setValid ( bool isValid)
pure virtual

Implemented in XrdCephBuffer::XrdCephBufferDataSimple.

References isValid().

Here is the call graph for this function:

◆ startingOffset()

virtual off_t XrdCephBuffer::IXrdCephBufferData::startingOffset ( ) const
pure virtual

◆ writeBuffer()

virtual ssize_t XrdCephBuffer::IXrdCephBufferData::writeBuffer ( const void * buf,
off_t offset,
size_t blen,
off_t externalOffset )
pure virtual

copy data from the internal buffer to buf

Implemented in XrdCephBuffer::XrdCephBufferDataSimple.


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