1 #ifndef __IXRD_CEPH_BUFFER_DATA_HH__
2 #define __IXRD_CEPH_BUFFER_DATA_HH__
32 virtual ssize_t
readBuffer(
void* buf, off_t offset,
size_t blen)
const = 0;
34 virtual ssize_t
writeBuffer(
const void* buf, off_t offset,
size_t blen,off_t externalOffset) = 0;
36 virtual const void*
raw()
const = 0;
37 virtual void*
raw() = 0;
Interface to the Buffer's physical representation. Allow an interface to encapsulate the requirements...
virtual ~IXrdCephBufferData()
virtual ssize_t readBuffer(void *buf, off_t offset, size_t blen) const =0
set cache into an invalid state
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
virtual size_t capacity() const =0
virtual off_t startingOffset() const =0
virtual size_t length() const =0
total available space
virtual off_t setStartingOffset(off_t offset)=0
virtual ssize_t invalidate()=0
virtual void setLength(size_t len)=0
Currently occupied and valid space, which may be less than capacity.
virtual bool isValid() const =0
Currently occupied and valid space, which may be less than capacity.
virtual void setValid(bool isValid)=0
virtual const void * raw() const =0
write data into the buffer, store the external offset
is a simple implementation of IXrdCephBufferData using std::vector<char> representation for the buffe...