|
xrootd
|
#include <XrdBwmPolicy1.hh>


Classes | |
| struct | refReq |
| class | refSch |
Public Types | |
| enum | Flow { In = 0, Out = 1, Xeq = 2, IOX = 3 } |
Public Member Functions | |
| int | Dispatch (char *RespBuff, int RespSize) |
| int | Done (int rHandle) |
| int | Schedule (char *RespBuff, int RespSize, SchedParms &Parms) |
| void | Status (int &numqIn, int &numqOut, int &numXeq) |
| XrdBwmPolicy1 (int inslots, int outslots) | |
| ~XrdBwmPolicy1 () | |
Private Attributes | |
| class XrdBwmPolicy1::refSch | theQ [IOX] |
| XrdSysSemaphore | pSem |
| XrdSysMutex | pMutex |
| int | refID |
| enum XrdBwmPolicy1::Flow |
Reimplemented from XrdBwmPolicy.
| XrdBwmPolicy1::XrdBwmPolicy1 | ( | int | inslots, |
| int | outslots | ||
| ) |
References theQ, In, XrdBwmPolicy1::refSch::maxSlots, XrdBwmPolicy1::refSch::curSlots, Out, Xeq, and refID.
| XrdBwmPolicy1::~XrdBwmPolicy1 | ( | ) | [inline] |
| int XrdBwmPolicy1::Dispatch | ( | char * | RespBuff, |
| int | RespSize | ||
| ) | [virtual] |
Implements XrdBwmPolicy.
References pMutex, XrdSysMutex::Lock(), theQ, In, Out, Xeq, XrdBwmPolicy1::refSch::Add(), XrdBwmPolicy1::refReq::refID, XrdSysMutex::UnLock(), refID, pSem, and XrdSysSemaphore::Wait().
| int XrdBwmPolicy1::Done | ( | int | rHandle | ) | [virtual] |
Implements XrdBwmPolicy.
References pMutex, XrdSysMutex::Lock(), theQ, Xeq, XrdBwmPolicy1::refReq::Way, XrdBwmPolicy1::refSch::curSlots, pSem, XrdSysSemaphore::Post(), In, Out, and XrdSysMutex::UnLock().
| int XrdBwmPolicy1::Schedule | ( | char * | RespBuff, |
| int | RespSize, | ||
| SchedParms & | Parms | ||
| ) | [virtual] |
| void XrdBwmPolicy1::Status | ( | int & | numqIn, |
| int & | numqOut, | ||
| int & | numXeq | ||
| ) | [virtual] |
Implements XrdBwmPolicy.
References pMutex, XrdSysMutex::Lock(), theQ, In, XrdBwmPolicy1::refSch::Num, Out, Xeq, and XrdSysMutex::UnLock().
XrdSysMutex XrdBwmPolicy1::pMutex [private] |
Referenced by Dispatch(), Done(), Schedule(), and Status().
XrdSysSemaphore XrdBwmPolicy1::pSem [private] |
Referenced by Dispatch(), and Done().
int XrdBwmPolicy1::refID [private] |
Referenced by XrdBwmPolicy1(), Dispatch(), and Schedule().
class XrdBwmPolicy1::refSch XrdBwmPolicy1::theQ[IOX] [private] |
Referenced by XrdBwmPolicy1(), Dispatch(), Done(), Schedule(), and Status().
1.7.5