|
xrootd
|
#include <XrdOucCacheData.hh>


Classes | |
| class | MrSw |
Public Member Functions | |
| XrdOucCacheIO * | Base () |
| XrdOucCacheIO * | Detach () |
| const char * | Path () |
| void | Preread () |
| void | Preread (aprParms &Parms) |
| void | Preread (long long Offs, int rLen, int Opts=0) |
| int | Read (char *Buffer, long long Offset, int Length) |
| int | Sync () |
| int | Trunc (long long Offset) |
| int | Write (char *Buffer, long long Offset, int Length) |
| XrdOucCacheData (XrdOucCacheReal *cP, XrdOucCacheIO *ioP, long long vn, int opts) | |
Static Public Member Functions | |
| static int | setAPR (aprParms &Dest, aprParms &Src, int pSize) |
Private Member Functions | |
| ~XrdOucCacheData () | |
| void | QueuePR (long long SegOffs, int rLen, int prHow, int isAuto=0) |
| int | Read (XrdOucCacheStats &Now, char *Buffer, long long Offs, int Length) |
Private Attributes | |
| XrdSysXSLock | rwLock |
| XrdSysXSLock * | pPLock |
| XrdSysXSLock * | rPLock |
| XrdSysXSLock * | wPLock |
| XrdSysXS_Type | pPLopt |
| XrdSysXS_Type | rPLopt |
| XrdSysMutex | DMutex |
| XrdOucCacheReal * | Cache |
| XrdOucCacheIO * | ioObj |
| long long | VNum |
| long long | SegSize |
| long long | OffMask |
| long long | SegShft |
| int | maxCache |
| char | isFIS |
| char | isRW |
| char | isADB |
| char | Debug |
| XrdOucCacheReal::prTask | prReq |
| XrdSysSemaphore * | prStop |
| long long | prNSS |
| long long | prRR [prRRMax] |
| int | prRRNow |
| aprParms | Apr |
| long long | prCalc |
| long long | prBeg [prMax] |
| long long | prEnd [prMax] |
| int | prNext |
| int | prFree |
| int | prPerf |
| char | prOpt [prMax] |
| char | prOK |
| char | prActive |
| char | prAuto |
Static Private Attributes | |
| static const int | okRW = 1 |
| static const int | xqRW = 2 |
| static const int | prRRMax = 5 |
| static const int | prMax = 8 |
| static const int | prRun = 1 |
| static const int | prWait = 2 |
| static const int | prLRU = 1 |
| static const int | prSUSE = 2 |
| static const int | prSKIP = 3 |
| XrdOucCacheData::XrdOucCacheData | ( | XrdOucCacheReal * | cP, |
| XrdOucCacheIO * | ioP, | ||
| long long | vn, | ||
| int | opts | ||
| ) |
References Apr, XrdOucCacheReal::aprDefault, Cache, XrdOucCacheReal::prTask::Data, XrdOucCacheReal::Dbg, Debug, XrdOucCache::ioMTSafe, isADB, isFIS, isRW, XrdOucCacheReal::maxCache, maxCache, XrdOucCacheReal::OffMask, OffMask, okRW, XrdOucCache::optADB, XrdOucCache::optFIS, XrdOucCacheReal::Options, XrdOucCache::optRW, pPLock, pPLopt, prActive, prAuto, prBeg, prCalc, prEnd, prFree, prNext, prNSS, XrdOucCacheReal::prNum, prOK, prOpt, prPerf, XrdOucCacheIO::aprParms::prRecalc, prReq, prRR, prRRNow, prStop, rPLock, rPLopt, rwLock, XrdOucCacheReal::SegShft, SegShft, XrdOucCacheReal::SegSize, SegSize, XrdOucCache::Serialized, setAPR(), wPLock, xs_Exclusive, and xs_Shared.
| XrdOucCacheData::~XrdOucCacheData | ( | ) | [inline, private] |
| XrdOucCacheIO* XrdOucCacheData::Base | ( | ) | [inline, virtual] |
Reimplemented from XrdOucCacheIO.
References ioObj.
| XrdOucCacheIO * XrdOucCacheData::Detach | ( | ) | [virtual] |
Reimplemented from XrdOucCacheIO.
References XrdOucCacheStats::Add(), XrdOucCacheStats::BytesGet, XrdOucCacheStats::BytesPass, XrdOucCacheStats::BytesPead, XrdOucCacheStats::BytesPut, XrdOucCacheStats::BytesRead, XrdOucCacheStats::BytesWrite, Cache, XrdOucCacheReal::Detach(), DMutex, XrdOucCacheStats::Hits, XrdOucCacheStats::HitsPR, ioObj, isADB, XrdOucCacheReal::Lgs, XrdSysXSLock::Lock(), XrdSysMutex::Lock(), XrdOucCacheStats::Miss, XrdOucCacheStats::MissPR, XrdOucCacheIO::Path(), prActive, prStop, rwLock, XrdOucCacheIO::Statistics, XrdOucCache::Stats, XrdSysXSLock::UnLock(), XrdSysMutex::UnLock(), XrdSysSemaphore::Wait(), and xs_Exclusive.
| const char* XrdOucCacheData::Path | ( | ) | [inline, virtual] |
Implements XrdOucCacheIO.
References ioObj, and XrdOucCacheIO::Path().
| void XrdOucCacheData::Preread | ( | ) |
References XrdOucCacheStats::BytesPead, Cache, Debug, DMutex, XrdOucCacheReal::Get(), ioObj, XrdOucCacheSlot::isNew, XrdOucCacheSlot::isSUSE, XrdOucCacheStats::Lock(), XrdSysMutex::Lock(), XrdOucCacheStats::MissPR, XrdOucCacheIO::Path(), XrdSysSemaphore::Post(), pPLock, pPLopt, prActive, prBeg, prEnd, XrdOucCacheReal::PreRead(), prMax, prNext, prOpt, prReq, prRun, prSKIP, prStop, prSUSE, prWait, XrdOucCacheReal::Ref(), SegSize, XrdOucCacheReal::Shift, XrdOucCacheIO::Statistics, XrdOucCacheStats::UnLock(), XrdSysMutex::UnLock(), and VNum.
Referenced by XrdOucCacheReal::PreRead().
| void XrdOucCacheData::Preread | ( | aprParms & | Parms | ) |
| void XrdOucCacheData::Preread | ( | long long | Offs, |
| int | rLen, | ||
| int | Opts = 0 |
||
| ) | [virtual] |
Reimplemented from XrdOucCacheIO.
References XrdOucCacheReal::MaxFO, prLRU, prOK, prSUSE, QueuePR(), SegShft, and XrdOucCacheIO::SingleUse.
| void XrdOucCacheData::QueuePR | ( | long long | SegOffs, |
| int | rLen, | ||
| int | prHow, | ||
| int | isAuto = 0 |
||
| ) | [private] |
References Apr, XrdOucCacheStats::BytesPead, Cache, Debug, DMutex, XrdOucCacheStats::HitsPR, ioObj, XrdOucCacheStats::Lock(), XrdOucCacheIO::aprParms::minPages, XrdOucCacheIO::aprParms::minPerf, XrdOucCacheStats::MissPR, OffMask, XrdOucCacheIO::Path(), prActive, prAuto, prBeg, prCalc, prEnd, XrdOucCacheReal::PreRead(), prFree, prLRU, prMax, prNext, prOpt, prPerf, XrdOucCacheIO::aprParms::prRecalc, prReq, prRR, prRRMax, prSKIP, prStop, prWait, SegSize, XrdOucCacheIO::Statistics, and XrdOucCacheStats::UnLock().
| int XrdOucCacheData::Read | ( | char * | Buffer, |
| long long | Offset, | ||
| int | Length | ||
| ) | [virtual] |
Implements XrdOucCacheIO.
References XrdOucCacheStats::Add(), Apr, XrdOucCacheStats::BytesGet, XrdOucCacheStats::BytesRead, Cache, Debug, DMutex, XrdOucCacheReal::Get(), XrdOucCacheStats::Hits, XrdOucCacheStats::HitsPR, ioObj, isFIS, XrdSysMutex::Lock(), maxCache, XrdOucCacheReal::MaxFO, XrdOucCacheStats::Miss, OffMask, prAuto, prLRU, prRR, prRRMax, prRRNow, prSUSE, QueuePR(), XrdOucCacheReal::Ref(), rPLock, rPLopt, SegShft, SegSize, XrdOucCacheIO::Statistics, XrdOucCacheIO::aprParms::Trigger, XrdOucCacheData::MrSw::UnLock(), XrdSysMutex::UnLock(), and VNum.
| int XrdOucCacheData::Read | ( | XrdOucCacheStats & | Now, |
| char * | Buffer, | ||
| long long | Offs, | ||
| int | Length | ||
| ) | [private] |
References XrdOucCacheStats::Add(), XrdOucCacheStats::BytesGet, XrdOucCacheStats::BytesPass, Cache, Debug, XrdOucCacheReal::Get(), XrdOucCacheStats::Hits, XrdOucCacheStats::HitsPR, ioObj, isFIS, isRW, OffMask, prOK, prSKIP, QueuePR(), XrdOucCacheIO::Read(), XrdOucCacheReal::Ref(), SegShft, SegSize, XrdOucCacheIO::Statistics, and VNum.
| int XrdOucCacheData::setAPR | ( | aprParms & | Dest, |
| aprParms & | Src, | ||
| int | pSize | ||
| ) | [static] |
| int XrdOucCacheData::Sync | ( | ) | [inline, virtual] |
Implements XrdOucCacheIO.
| int XrdOucCacheData::Trunc | ( | long long | Offset | ) | [virtual] |
Implements XrdOucCacheIO.
References Cache, ioObj, isRW, XrdOucCacheReal::MaxFO, SegShft, XrdOucCacheReal::Trunc(), XrdOucCacheIO::Trunc(), VNum, wPLock, and xs_Exclusive.
| int XrdOucCacheData::Write | ( | char * | Buffer, |
| long long | Offset, | ||
| int | Length | ||
| ) | [virtual] |
Implements XrdOucCacheIO.
References XrdOucCacheStats::Add(), XrdOucCacheStats::BytesPut, XrdOucCacheStats::BytesWrite, Cache, XrdOucCacheReal::Get(), XrdOucCacheStats::Hits, XrdOucCacheStats::HitsPR, ioObj, isRW, XrdOucCacheReal::MaxFO, XrdOucCacheStats::Miss, OffMask, SegShft, SegSize, XrdOucCacheIO::Statistics, XrdOucCacheReal::Upd(), VNum, wPLock, XrdOucCacheIO::Write(), and xs_Exclusive.
aprParms XrdOucCacheData::Apr [private] |
Referenced by QueuePR(), Read(), and XrdOucCacheData().
XrdOucCacheReal* XrdOucCacheData::Cache [private] |
char XrdOucCacheData::Debug [private] |
Referenced by Preread(), QueuePR(), Read(), and XrdOucCacheData().
XrdSysMutex XrdOucCacheData::DMutex [private] |
XrdOucCacheIO* XrdOucCacheData::ioObj [private] |
char XrdOucCacheData::isADB [private] |
Referenced by Detach(), and XrdOucCacheData().
char XrdOucCacheData::isFIS [private] |
Referenced by Read(), and XrdOucCacheData().
char XrdOucCacheData::isRW [private] |
Referenced by Read(), Trunc(), Write(), and XrdOucCacheData().
int XrdOucCacheData::maxCache [private] |
Referenced by Read(), and XrdOucCacheData().
long long XrdOucCacheData::OffMask [private] |
Referenced by QueuePR(), Read(), Write(), and XrdOucCacheData().
const int XrdOucCacheData::okRW = 1 [static, private] |
Referenced by XrdOucCacheData().
XrdSysXSLock* XrdOucCacheData::pPLock [private] |
Referenced by Preread(), and XrdOucCacheData().
XrdSysXS_Type XrdOucCacheData::pPLopt [private] |
Referenced by Preread(), and XrdOucCacheData().
char XrdOucCacheData::prActive [private] |
Referenced by Detach(), Preread(), QueuePR(), and XrdOucCacheData().
char XrdOucCacheData::prAuto [private] |
Referenced by QueuePR(), Read(), and XrdOucCacheData().
long long XrdOucCacheData::prBeg[prMax] [private] |
Referenced by Preread(), QueuePR(), and XrdOucCacheData().
long long XrdOucCacheData::prCalc [private] |
Referenced by QueuePR(), and XrdOucCacheData().
long long XrdOucCacheData::prEnd[prMax] [private] |
Referenced by Preread(), QueuePR(), and XrdOucCacheData().
int XrdOucCacheData::prFree [private] |
Referenced by QueuePR(), and XrdOucCacheData().
const int XrdOucCacheData::prLRU = 1 [static, private] |
const int XrdOucCacheData::prMax = 8 [static, private] |
int XrdOucCacheData::prNext [private] |
Referenced by Preread(), QueuePR(), and XrdOucCacheData().
long long XrdOucCacheData::prNSS [private] |
Referenced by XrdOucCacheData().
char XrdOucCacheData::prOK [private] |
Referenced by Preread(), Read(), and XrdOucCacheData().
char XrdOucCacheData::prOpt[prMax] [private] |
Referenced by Preread(), QueuePR(), and XrdOucCacheData().
int XrdOucCacheData::prPerf [private] |
Referenced by QueuePR(), and XrdOucCacheData().
Referenced by Preread(), QueuePR(), and XrdOucCacheData().
long long XrdOucCacheData::prRR[prRRMax] [private] |
Referenced by QueuePR(), Read(), and XrdOucCacheData().
const int XrdOucCacheData::prRRMax = 5 [static, private] |
int XrdOucCacheData::prRRNow [private] |
Referenced by Read(), and XrdOucCacheData().
const int XrdOucCacheData::prRun = 1 [static, private] |
Referenced by Preread().
const int XrdOucCacheData::prSKIP = 3 [static, private] |
XrdSysSemaphore* XrdOucCacheData::prStop [private] |
Referenced by Detach(), Preread(), QueuePR(), and XrdOucCacheData().
const int XrdOucCacheData::prSUSE = 2 [static, private] |
const int XrdOucCacheData::prWait = 2 [static, private] |
XrdSysXSLock* XrdOucCacheData::rPLock [private] |
Referenced by Read(), and XrdOucCacheData().
XrdSysXS_Type XrdOucCacheData::rPLopt [private] |
Referenced by Read(), and XrdOucCacheData().
XrdSysXSLock XrdOucCacheData::rwLock [private] |
Referenced by Detach(), and XrdOucCacheData().
long long XrdOucCacheData::SegShft [private] |
Referenced by Preread(), Read(), Trunc(), Write(), and XrdOucCacheData().
long long XrdOucCacheData::SegSize [private] |
Referenced by Preread(), QueuePR(), Read(), Write(), and XrdOucCacheData().
long long XrdOucCacheData::VNum [private] |
XrdSysXSLock* XrdOucCacheData::wPLock [private] |
Referenced by Trunc(), Write(), and XrdOucCacheData().
const int XrdOucCacheData::xqRW = 2 [static, private] |
1.8.0