24 Stream(std::unique_ptr<XrdSfsFile> fh,
size_t max_blocks,
size_t buffer_size,
XrdSysError &log)
32 for (
size_t idx=0; idx < max_blocks; idx++) {
42 int Read(off_t offset,
char *buffer,
size_t size);
44 int Write(off_t offset,
const char *buffer,
size_t size);
80 if (retval != size_desired) {
86 bool Accept(off_t offset,
const char *buf,
size_t size) {
97 if (new_bytes_needed > 0) {
112 #if __cplusplus > 199711L
143 std::unique_ptr<XrdSfsFile>
m_fh;
#define stat(a, b)
Definition: XrdPosix.hh:96
Definition: XrdTpcStream.hh:63
void Move(Entry &other)
Definition: XrdTpcStream.hh:117
size_t m_size
Definition: XrdTpcStream.hh:137
int Write(Stream &stream)
Definition: XrdTpcStream.hh:73
off_t m_offset
Definition: XrdTpcStream.hh:135
Entry(size_t capacity)
Definition: XrdTpcStream.hh:65
off_t GetOffset() const
Definition: XrdTpcStream.hh:123
std::vector< char > m_buffer
Definition: XrdTpcStream.hh:138
bool Accept(off_t offset, const char *buf, size_t size)
Definition: XrdTpcStream.hh:86
bool CanWrite(Stream &stream) const
Definition: XrdTpcStream.hh:131
Entry(const Entry &)=delete
bool Available() const
Definition: XrdTpcStream.hh:71
size_t GetSize() const
Definition: XrdTpcStream.hh:125
size_t GetCapacity() const
Definition: XrdTpcStream.hh:124
void ShrinkIfUnused()
Definition: XrdTpcStream.hh:110
size_t m_capacity
Definition: XrdTpcStream.hh:136
Definition: XrdTpcStream.hh:22
std::unique_ptr< XrdSfsFile > m_fh
Definition: XrdTpcStream.hh:143
bool m_open_for_write
Definition: XrdTpcStream.hh:141
off_t m_offset
Definition: XrdTpcStream.hh:144
int Write(off_t offset, const char *buffer, size_t size)
size_t m_avail_count
Definition: XrdTpcStream.hh:142
XrdSysError & m_log
Definition: XrdTpcStream.hh:146
std::vector< Entry * > m_buffers
Definition: XrdTpcStream.hh:145
int Read(off_t offset, char *buffer, size_t size)
Stream(std::unique_ptr< XrdSfsFile > fh, size_t max_blocks, size_t buffer_size, XrdSysError &log)
Definition: XrdTpcStream.hh:24
std::string GetErrorMessage() const
Definition: XrdTpcStream.hh:59
size_t AvailableBuffers() const
Definition: XrdTpcStream.hh:46
std::string m_error_buf
Definition: XrdTpcStream.hh:147
Definition: XrdSfsInterface.hh:362
Definition: XrdSysError.hh:90
Definition: XrdTpcState.hh:16