xrootd
Classes | Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends
XrdOucCacheReal Class Reference

#include <XrdOucCacheReal.hh>

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

List of all members.

Classes

struct  prTask

Public Member Functions

XrdOucCacheIOAttach (XrdOucCacheIO *ioP, int Options=0)
int isAttached ()
 XrdOucCacheReal (int &rc, Parms &Parms, XrdOucCacheIO::aprParms *aprP=0)
 ~XrdOucCacheReal ()
void PreRead ()

Private Member Functions

void eMsg (const char *Path, const char *What, long long xOff, int xLen, int ec)
int Detach (XrdOucCacheIO *ioP)
char * Get (XrdOucCacheIO *ioP, long long lAddr, int &rGot, int &bIO)
int ioAdd (XrdOucCacheIO *KeyVal, int &iNum)
int ioDel (XrdOucCacheIO *KeyVal, int &iNum)
int ioEnt (XrdOucCacheIO *kVal)
int ioLookup (int &pip, int hip, void *kval)
int Ref (char *Addr, int rAmt, int sFlags=0)
void Trunc (XrdOucCacheIO *ioP, long long lAddr)
void Upd (char *Addr, int wAmt, int wOff)
void PreRead (XrdOucCacheReal::prTask *prReq)

Private Attributes

XrdOucCacheIO::aprParms aprDefault
XrdSysMutex CMutex
XrdOucCacheSlotSlots
int * Slash
char * Base
long long HNum
long long SegCnt
long long SegSize
long long OffMask
long long SegShft
int SegFull
int maxCache
int maxFiles
int Options
int * hTab
int hMax
int sFree
int sBeg
int sEnd
char Dbg
char Lgs
XrdSysSemaphoreAZero
int Attached
prTaskprFirst
prTaskprLast
XrdSysMutex prMutex
XrdSysSemaphore prReady
XrdSysSemaphoreprStop
int prNum

Static Private Attributes

static const long long Shift = 48
static const long long Strip = 0x00000000ffffffffLL
static const long long MaxFO = 0x000007ffffffffffLL

Friends

class XrdOucCacheData

Constructor & Destructor Documentation

XrdOucCacheReal::XrdOucCacheReal ( int &  rc,
XrdOucCache::Parms ParmV,
XrdOucCacheIO::aprParms aprP = 0 
)
XrdOucCacheReal::~XrdOucCacheReal ( )

Member Function Documentation

XrdOucCacheIO * XrdOucCacheReal::Attach ( XrdOucCacheIO ioP,
int  Options = 0 
) [virtual]
int XrdOucCacheReal::Detach ( XrdOucCacheIO ioP) [private]
void XrdOucCacheReal::eMsg ( const char *  Path,
const char *  What,
long long  xOff,
int  xLen,
int  ec 
) [private]

References Dbg.

Referenced by Get().

char * XrdOucCacheReal::Get ( XrdOucCacheIO ioP,
long long  lAddr,
int &  rGot,
int &  bIO 
) [private]
int XrdOucCacheReal::ioAdd ( XrdOucCacheIO KeyVal,
int &  iNum 
) [private]
int XrdOucCacheReal::ioDel ( XrdOucCacheIO KeyVal,
int &  iNum 
) [private]
int XrdOucCacheReal::ioEnt ( XrdOucCacheIO kVal) [inline, private]

References hMax.

Referenced by ioAdd(), and ioDel().

int XrdOucCacheReal::ioLookup ( int &  pip,
int  hip,
void *  kval 
) [inline, private]

References Slots, and XrdOucCacheSlot::HLink.

Referenced by ioAdd(), and ioDel().

int XrdOucCacheReal::isAttached ( ) [inline, virtual]

Reimplemented from XrdOucCache.

References CMutex, XrdSysMutex::Lock(), Attached, and XrdSysMutex::UnLock().

void XrdOucCacheReal::PreRead ( )
void XrdOucCacheReal::PreRead ( XrdOucCacheReal::prTask prReq) [private]
int XrdOucCacheReal::Ref ( char *  Addr,
int  rAmt,
int  sFlags = 0 
) [private]
void XrdOucCacheReal::Trunc ( XrdOucCacheIO ioP,
long long  lAddr 
) [private]
void XrdOucCacheReal::Upd ( char *  Addr,
int  wAmt,
int  wOff 
) [private]

Friends And Related Function Documentation

friend class XrdOucCacheData [friend]

Referenced by Attach().


Member Data Documentation

Referenced by ~XrdOucCacheReal(), Attach(), and Detach().

char* XrdOucCacheReal::Base [private]
char XrdOucCacheReal::Dbg [private]
int XrdOucCacheReal::hMax [private]

Referenced by XrdOucCacheReal(), and ioEnt().

long long XrdOucCacheReal::HNum [private]

Referenced by XrdOucCacheReal(), Detach(), Get(), and Trunc().

int* XrdOucCacheReal::hTab [private]

Referenced by XrdOucCacheReal(), ioAdd(), and ioDel().

char XrdOucCacheReal::Lgs [private]

Referenced by XrdOucCacheReal().

const long long XrdOucCacheReal::MaxFO = 0x000007ffffffffffLL [static, private]
long long XrdOucCacheReal::OffMask [private]
int XrdOucCacheReal::Options [private]

Referenced by PreRead().

Referenced by PreRead().

Referenced by ~XrdOucCacheReal(), and PreRead().

int XrdOucCacheReal::prNum [private]

Referenced by ~XrdOucCacheReal(), and PreRead().

Referenced by ~XrdOucCacheReal(), and PreRead().

int XrdOucCacheReal::sBeg [private]

Referenced by XrdOucCacheReal().

long long XrdOucCacheReal::SegCnt [private]
int XrdOucCacheReal::SegFull [private]

Referenced by XrdOucCacheReal(), and Get().

long long XrdOucCacheReal::SegShft [private]
long long XrdOucCacheReal::SegSize [private]
int XrdOucCacheReal::sEnd [private]

Referenced by XrdOucCacheReal().

int XrdOucCacheReal::sFree [private]

Referenced by XrdOucCacheReal(), ioAdd(), and ioDel().

const long long XrdOucCacheReal::Shift = 48 [static, private]

Referenced by Attach(), Get(), and Trunc().

int* XrdOucCacheReal::Slash [private]

Referenced by XrdOucCacheReal(), Detach(), Get(), and Trunc().

const long long XrdOucCacheReal::Strip = 0x00000000ffffffffLL [static, private]

Referenced by Get().


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