1#ifndef __XRDXROOTDAIOTASK_H__
2#define __XRDXROOTDAIOTASK_H__
59virtual void Read(
long long offs,
int dlen) = 0;
65virtual int Write(
long long offs,
int dlen) = 0;
Definition: XrdLink.hh:52
Definition: XrdSysPthread.hh:300
Definition: XrdSysPthread.hh:165
Definition: XrdSysRAtomic.hh:258
Definition: XrdXrootdAioBuff.hh:41
Definition: XrdXrootdAioFob.hh:38
Definition: XrdXrootdAioTask.hh:47
XrdXrootdAioTask * nextTask
Definition: XrdXrootdAioTask.hh:93
virtual void Read(long long offs, int dlen)=0
int dataLen
Definition: XrdXrootdAioTask.hh:104
XrdXrootdAioBuff * pendWrite
Definition: XrdXrootdAioTask.hh:100
XrdSysCondVar2 aioReady
Definition: XrdXrootdAioTask.hh:87
XrdXrootdAioBuff * finalRead
Definition: XrdXrootdAioTask.hh:99
static const char * TraceID
Definition: XrdXrootdAioTask.hh:84
static const int aioPage
Definition: XrdXrootdAioTask.hh:117
static const int Offline
Definition: XrdXrootdAioTask.hh:123
static const int Waiting
Definition: XrdXrootdAioTask.hh:125
virtual void Recycle(bool release)=0
XrdLink * dataLink
Definition: XrdXrootdAioTask.hh:97
RAtomic_bool isDone
Definition: XrdXrootdAioTask.hh:108
XrdXrootdFile * dataFile
Definition: XrdXrootdAioTask.hh:98
virtual ~XrdXrootdAioTask()
Definition: XrdXrootdAioTask.hh:71
char Status
Definition: XrdXrootdAioTask.hh:109
bool Validate(XrdXrootdAioBuff *aioP)
XrdSysMutex aioMutex
Definition: XrdXrootdAioTask.hh:86
virtual int Write(long long offs, int dlen)=0
XrdXrootdPgrwAio * nextPgrw
Definition: XrdXrootdAioTask.hh:92
XrdXrootdAioBuff * pendQ
Definition: XrdXrootdAioTask.hh:88
XrdXrootdAioBuff * getBuff(bool wait)
bool Wait4Buff(int maxWait=0)
char aioState
Definition: XrdXrootdAioTask.hh:106
void SendError(int rc, const char *eText)
void Completed(XrdXrootdAioBuff *aioP)
XrdXrootdResponse Response
Definition: XrdXrootdAioTask.hh:111
static const int Running
Definition: XrdXrootdAioTask.hh:124
void Init(XrdXrootdProtocol *protP, XrdXrootdResponse &resp, XrdXrootdFile *fP)
virtual bool CopyL2F(XrdXrootdAioBuff *aioP)=0
XrdXrootdAioBuff * pendQEnd
Definition: XrdXrootdAioTask.hh:89
off_t highOffset
Definition: XrdXrootdAioTask.hh:102
static const int aioRead
Definition: XrdXrootdAioTask.hh:118
XrdXrootdAioTask(const char *what="aio request")
Definition: XrdXrootdAioTask.hh:69
static const int aioSchd
Definition: XrdXrootdAioTask.hh:119
off_t dataOffset
Definition: XrdXrootdAioTask.hh:103
XrdXrootdNormAio * nextNorm
Definition: XrdXrootdAioTask.hh:91
static const int aioHeld
Definition: XrdXrootdAioTask.hh:116
RAtomic_uchar inFlight
Definition: XrdXrootdAioTask.hh:107
XrdXrootdProtocol * urProtocol()
Definition: XrdXrootdAioTask.hh:63
static const int aioDead
Definition: XrdXrootdAioTask.hh:115
XrdXrootdProtocol * Protocol
Definition: XrdXrootdAioTask.hh:96
Definition: XrdXrootdFile.hh:101
Definition: XrdXrootdNormAio.hh:39
Definition: XrdXrootdPgrwAio.hh:39
Definition: XrdXrootdProtocol.hh:156
Definition: XrdXrootdResponse.hh:49
Definition: XrdClPollerBuiltIn.hh:28