xrootd
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
XrdXrootdNormAio Class Reference

#include <XrdXrootdNormAio.hh>

Inheritance diagram for XrdXrootdNormAio:
Inheritance graph
[legend]
Collaboration diagram for XrdXrootdNormAio:
Collaboration graph
[legend]

Public Member Functions

void DoIt () override
 
void Read (long long offs, int dlen) override
 
void Recycle (bool release) override
 
int Write (long long offs, int dlen) override
 
- Public Member Functions inherited from XrdXrootdAioTask
void Completed (XrdXrootdAioBuff *aioP)
 
const char * ID ()
 
void Init (XrdXrootdProtocol *protP, XrdXrootdResponse &resp, XrdXrootdFile *fP)
 
XrdXrootdProtocolurProtocol ()
 
- Public Member Functions inherited from XrdJob
 XrdJob (const char *desc="")
 
virtual ~XrdJob ()
 

Static Public Member Functions

static XrdXrootdNormAioAlloc (XrdXrootdProtocol *protP, XrdXrootdResponse &resp, XrdXrootdFile *fP)
 

Private Member Functions

 XrdXrootdNormAio ()
 
virtual ~XrdXrootdNormAio ()
 
bool CopyF2L_Add2Q (XrdXrootdAioBuff *aioP=0)
 
void CopyF2L () override
 
int CopyL2F () override
 
bool CopyL2F (XrdXrootdAioBuff *aioP) override
 
bool Send (XrdXrootdAioBuff *aioP, bool final=false)
 

Private Attributes

XrdXrootdAioBuffsendQ
 
off_t sendOffset
 
int reorders
 
bool didSched
 

Static Private Attributes

static const char * TraceID
 

Additional Inherited Members

- Public Attributes inherited from XrdJob
XrdJobNextJob
 
const char * Comment
 
- Protected Member Functions inherited from XrdXrootdAioTask
 XrdXrootdAioTask (const char *what="aio request")
 
virtual ~XrdXrootdAioTask ()
 
bool Drain ()
 
int gdDone () override
 
void gdFail () override
 
XrdXrootdAioBuffgetBuff (bool wait)
 
void SendError (int rc, const char *eText)
 
void SendFSError (int rc)
 
bool Validate (XrdXrootdAioBuff *aioP)
 
- Protected Attributes inherited from XrdXrootdAioTask
XrdSysMutex aioMutex
 
XrdSysCondVar2 aioReady
 
XrdXrootdAioBuffpendQ
 
XrdXrootdAioBuffpendQEnd
 
union { 
 
   XrdXrootdNormAio *   nextNorm 
 
   XrdXrootdPgrwAio *   nextPgrw 
 
   XrdXrootdAioTask *   nextTask 
 
};  
 
XrdXrootdProtocolProtocol
 
XrdLinkdataLink
 
XrdXrootdFiledataFile
 
union { 
 
   XrdXrootdAioBuff *   finalRead 
 
   XrdXrootdAioBuff *   pendWrite 
 
};  
 
off_t highOffset
 
off_t dataOffset
 
int dataLen
 
char aioState
 
RAtomic_uchar inFlight
 
RAtomic_bool isDone
 
char Status
 
XrdXrootdResponse Response
 
- Static Protected Attributes inherited from XrdXrootdAioTask
static const char * TraceID
 
static const int aioDead = 0x01
 
static const int aioHeld = 0x02
 
static const int aioPage = 0x04
 
static const int aioRead = 0x08
 
static const int aioSchd = 0x10
 
static const int Offline = 0
 
static const int Running = 1
 
static const int Waiting = 2
 

Constructor & Destructor Documentation

◆ XrdXrootdNormAio()

XrdXrootdNormAio::XrdXrootdNormAio ( )
inlineprivate

◆ ~XrdXrootdNormAio()

virtual XrdXrootdNormAio::~XrdXrootdNormAio ( )
inlineprivatevirtual

Member Function Documentation

◆ Alloc()

static XrdXrootdNormAio * XrdXrootdNormAio::Alloc ( XrdXrootdProtocol protP,
XrdXrootdResponse resp,
XrdXrootdFile fP 
)
static

◆ CopyF2L()

void XrdXrootdNormAio::CopyF2L ( )
overrideprivatevirtual

Implements XrdXrootdAioTask.

◆ CopyF2L_Add2Q()

bool XrdXrootdNormAio::CopyF2L_Add2Q ( XrdXrootdAioBuff aioP = 0)
private

◆ CopyL2F() [1/2]

int XrdXrootdNormAio::CopyL2F ( )
overrideprivatevirtual

Implements XrdXrootdAioTask.

◆ CopyL2F() [2/2]

bool XrdXrootdNormAio::CopyL2F ( XrdXrootdAioBuff aioP)
overrideprivatevirtual

Implements XrdXrootdAioTask.

◆ DoIt()

void XrdXrootdNormAio::DoIt ( )
overridevirtual

Implements XrdJob.

◆ Read()

void XrdXrootdNormAio::Read ( long long  offs,
int  dlen 
)
overridevirtual

Implements XrdXrootdAioTask.

◆ Recycle()

void XrdXrootdNormAio::Recycle ( bool  release)
overridevirtual

Implements XrdXrootdAioTask.

◆ Send()

bool XrdXrootdNormAio::Send ( XrdXrootdAioBuff aioP,
bool  final = false 
)
private

◆ Write()

int XrdXrootdNormAio::Write ( long long  offs,
int  dlen 
)
overridevirtual

Implements XrdXrootdAioTask.

Member Data Documentation

◆ didSched

bool XrdXrootdNormAio::didSched
private

◆ reorders

int XrdXrootdNormAio::reorders
private

◆ sendOffset

off_t XrdXrootdNormAio::sendOffset
private

◆ sendQ

XrdXrootdAioBuff* XrdXrootdNormAio::sendQ
private

◆ TraceID

const char* XrdXrootdNormAio::TraceID
staticprivate

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