#include <XrdXrootdAio.hh>
Public Member Functions | |
void | DoIt () |
XrdXrootdAio * | getAio () |
XrdXrootdAio * | Pop () |
void | Push (XrdXrootdAio *newp) |
int | Read () |
void | Recycle (int deref=1, XrdXrootdAio *aiop=0) |
int | Write (XrdXrootdAio *aiop) |
XrdXrootdAioReq () | |
~XrdXrootdAioReq () | |
Static Public Member Functions | |
static XrdXrootdAioReq * | Alloc (XrdXrootdProtocol *p, char iot, int numaio=0) |
static void | Init (int iosize, int maxaiopr, int maxaio=-80) |
Private Member Functions | |
void | Clear (XrdLink *lnkp) |
void | endRead () |
void | endWrite () |
void | Lock () |
void | Scuttle (const char *opname) |
void | sendError (char *tident) |
void | UnLock () |
Static Private Member Functions | |
static XrdXrootdAioReq * | addBlock () |
Private Attributes | |
XrdSysMutex | aioMutex |
XrdXrootdAioReq * | Next |
off_t | myOffset |
int | myIOLen |
unsigned int | Instance |
XrdLink * | Link |
XrdXrootdFile * | myFile |
XrdXrootdAio * | aioDone |
XrdXrootdAio * | aioFree |
int | numActive |
int | aioTotal |
int | aioError |
char | aioType |
char | respDone |
char | isLocked |
char | reDrive |
XrdXrootdResponse | Response |
Static Private Attributes | |
static const char * | TraceID |
static XrdSysError * | eDest |
static XrdSysMutex | rqMutex |
static XrdXrootdAioReq * | rqFirst |
static int | QuantumMin |
static int | Quantum |
static int | QuantumMax |
static int | maxAioPR |
static int | maxAioPR2 |
Friends | |
class | XrdXrootdAio |
XrdXrootdAioReq::XrdXrootdAioReq | ( | ) | [inline] |
XrdXrootdAioReq::~XrdXrootdAioReq | ( | ) | [inline] |
static XrdXrootdAioReq* XrdXrootdAioReq::addBlock | ( | ) | [static, private] |
static XrdXrootdAioReq* XrdXrootdAioReq::Alloc | ( | XrdXrootdProtocol * | p, | |
char | iot, | |||
int | numaio = 0 | |||
) | [static] |
void XrdXrootdAioReq::Clear | ( | XrdLink * | lnkp | ) | [private] |
void XrdXrootdAioReq::DoIt | ( | ) | [inline, virtual] |
Implements XrdJob.
References aioType, endRead(), and endWrite().
void XrdXrootdAioReq::endRead | ( | ) | [private] |
Referenced by DoIt().
void XrdXrootdAioReq::endWrite | ( | ) | [private] |
Referenced by DoIt().
XrdXrootdAio* XrdXrootdAioReq::getAio | ( | ) |
static void XrdXrootdAioReq::Init | ( | int | iosize, | |
int | maxaiopr, | |||
int | maxaio = -80 | |||
) | [static] |
void XrdXrootdAioReq::Lock | ( | ) | [inline, private] |
References aioMutex, isLocked, and XrdSysMutex::Lock().
XrdXrootdAio* XrdXrootdAioReq::Pop | ( | ) | [inline] |
References aioDone, and XrdXrootdAio::Next.
void XrdXrootdAioReq::Push | ( | XrdXrootdAio * | newp | ) | [inline] |
References aioDone, and XrdXrootdAio::Next.
int XrdXrootdAioReq::Read | ( | ) |
void XrdXrootdAioReq::Recycle | ( | int | deref = 1 , |
|
XrdXrootdAio * | aiop = 0 | |||
) |
void XrdXrootdAioReq::Scuttle | ( | const char * | opname | ) | [private] |
void XrdXrootdAioReq::sendError | ( | char * | tident | ) | [private] |
void XrdXrootdAioReq::UnLock | ( | ) | [inline, private] |
References aioMutex, isLocked, and XrdSysMutex::UnLock().
int XrdXrootdAioReq::Write | ( | XrdXrootdAio * | aiop | ) |
friend class XrdXrootdAio [friend] |
XrdXrootdAio* XrdXrootdAioReq::aioDone [private] |
int XrdXrootdAioReq::aioError [private] |
XrdXrootdAio* XrdXrootdAioReq::aioFree [private] |
XrdSysMutex XrdXrootdAioReq::aioMutex [private] |
int XrdXrootdAioReq::aioTotal [private] |
char XrdXrootdAioReq::aioType [private] |
Referenced by DoIt().
XrdSysError* XrdXrootdAioReq::eDest [static, private] |
unsigned int XrdXrootdAioReq::Instance [private] |
char XrdXrootdAioReq::isLocked [private] |
XrdLink* XrdXrootdAioReq::Link [private] |
int XrdXrootdAioReq::maxAioPR [static, private] |
int XrdXrootdAioReq::maxAioPR2 [static, private] |
XrdXrootdFile* XrdXrootdAioReq::myFile [private] |
int XrdXrootdAioReq::myIOLen [private] |
off_t XrdXrootdAioReq::myOffset [private] |
XrdXrootdAioReq* XrdXrootdAioReq::Next [private] |
int XrdXrootdAioReq::numActive [private] |
int XrdXrootdAioReq::Quantum [static, private] |
int XrdXrootdAioReq::QuantumMax [static, private] |
int XrdXrootdAioReq::QuantumMin [static, private] |
char XrdXrootdAioReq::reDrive [private] |
char XrdXrootdAioReq::respDone [private] |
XrdXrootdResponse XrdXrootdAioReq::Response [private] |
XrdXrootdAioReq* XrdXrootdAioReq::rqFirst [static, private] |
XrdSysMutex XrdXrootdAioReq::rqMutex [static, private] |
const char* XrdXrootdAioReq::TraceID [static, private] |