![]() |
XRootD
|
Interface to a holder of the main logic decisions of the buffering algortithm, decoupled from the buffer resource itself. Main work of the buffering is done in the classes that inherit from the interace, of how and when and why to buffer and flush the data The physical representation of the buffer is not written here to allow for some flexibility of changing the internals of the buffer if needed. Anticipate that a non-async and async will be the main distinct use cases. More...
#include <IXrdCephBufferAlg.hh>
Public Member Functions | |
virtual | ~IXrdCephBufferAlg () |
virtual ssize_t | flushWriteCache ()=0 |
remember to flush the cache on final writes More... | |
virtual ssize_t | read (volatile void *buff, off_t offset, size_t blen)=0 |
read data through the buffer More... | |
virtual ssize_t | read_aio (XrdSfsAio *aoip)=0 |
possible aio based code More... | |
virtual ssize_t | write (const void *buff, off_t offset, size_t blen)=0 |
write data through the buffer More... | |
virtual ssize_t | write_aio (XrdSfsAio *aoip)=0 |
possible aio based code More... | |
Interface to a holder of the main logic decisions of the buffering algortithm, decoupled from the buffer resource itself. Main work of the buffering is done in the classes that inherit from the interace, of how and when and why to buffer and flush the data The physical representation of the buffer is not written here to allow for some flexibility of changing the internals of the buffer if needed. Anticipate that a non-async and async will be the main distinct use cases.
Definition at line 26 of file IXrdCephBufferAlg.hh.
|
inlinevirtual |
Definition at line 28 of file IXrdCephBufferAlg.hh.
|
pure virtual |
remember to flush the cache on final writes
Implemented in XrdCephBuffer::XrdCephBufferAlgSimple.
|
pure virtual |
read data through the buffer
Implemented in XrdCephBuffer::XrdCephBufferAlgSimple.
|
pure virtual |
possible aio based code
Implemented in XrdCephBuffer::XrdCephBufferAlgSimple.
|
pure virtual |
write data through the buffer
Implemented in XrdCephBuffer::XrdCephBufferAlgSimple.
|
pure virtual |
possible aio based code
Implemented in XrdCephBuffer::XrdCephBufferAlgSimple.