XrdCmsKeyItem Class Reference

#include <XrdCmsKey.hh>

List of all members.

Public Member Functions

void Recycle ()
void Reload ()
 XrdCmsKeyItem ()
 ~XrdCmsKeyItem ()

Static Public Member Functions

static XrdCmsKeyItemAlloc (unsigned int theTock)
static int Replenish ()
static void Stats (int &isAlloc, int &isFree, int &wasEmpty)
static XrdCmsKeyItemUnload (unsigned int theTock)
static XrdCmsKeyItemUnload (XrdCmsKeyItem *theItem)

Public Attributes

XrdCmsKeyLoc Loc
XrdCmsKey Key
XrdCmsKeyItemNext

Static Public Attributes

static const unsigned int TickRate = 64
static const unsigned int TickMask = 63
static const int minAlloc = 4096
static const int minFree = 1024

Static Private Attributes

static XrdCmsKeyItemTockTable [TickRate]
static XrdCmsKeyItemFree
static int numFree
static int numHave
static int numNull


Detailed Description

Definition at line 106 of file XrdCmsKey.hh.


Constructor & Destructor Documentation

XrdCmsKeyItem::XrdCmsKeyItem (  )  [inline]

Definition at line 128 of file XrdCmsKey.hh.

XrdCmsKeyItem::~XrdCmsKeyItem (  )  [inline]

Definition at line 129 of file XrdCmsKey.hh.


Member Function Documentation

XrdCmsKeyItem * XrdCmsKeyItem::Alloc ( unsigned int  theTock  )  [static]

Definition at line 55 of file XrdCmsKey.cc.

References XrdSysError::Emsg(), Free, Key, Loc, Next, numFree, numNull, XrdCmsKey::Ref, Replenish(), XrdCmsKeyLoc::roPend, XrdCmsKeyLoc::rwPend, XrdFrm::Say(), TickMask, TockTable, XrdCmsKey::TOD, and XrdCmsKey::TODRef.

Referenced by XrdCmsNash::Add(), and XrdCmsCache::Init().

void XrdCmsKeyItem::Recycle (  ) 

Definition at line 85 of file XrdCmsKey.cc.

References Free, free(), XrdCmsKey::Hash, Key, Next, numFree, XrdCmsKey::Ref, and XrdCmsKey::Val.

Referenced by XrdCmsCache::Init(), and XrdCmsNash::Recycle().

void XrdCmsKeyItem::Reload (  ) 

Definition at line 104 of file XrdCmsKey.cc.

References Key, TickMask, TockTable, XrdCmsKey::TOD, and XrdCmsKey::TODRef.

int XrdCmsKeyItem::Replenish (  )  [static]

Definition at line 115 of file XrdCmsKey.cc.

References DEBUG, EPNAME, Free, i, minAlloc, Next, numFree, and numHave.

Referenced by Alloc(), and XrdCmsCache::Recycle().

void XrdCmsKeyItem::Stats ( int &  isAlloc,
int &  isFree,
int &  wasEmpty 
) [static]

Definition at line 143 of file XrdCmsKey.cc.

References numFree, numHave, and numNull.

Referenced by XrdCmsCache::Recycle().

XrdCmsKeyItem * XrdCmsKeyItem::Unload ( unsigned int  theTock  )  [static]

Definition at line 156 of file XrdCmsKey.cc.

References XrdCmsKey::Hash, XrdCmsKeyLoc::HashSave, Key, Loc, TickMask, TockTable, XrdCmsKey::TOD, and XrdCmsKey::TODRef.

Referenced by XrdCmsCache::DelFile(), XrdCmsCache::Init(), and XrdCmsCache::TickTock().

XrdCmsKeyItem * XrdCmsKeyItem::Unload ( XrdCmsKeyItem theItem  )  [static]

Definition at line 179 of file XrdCmsKey.cc.

References XrdCmsKey::Hash, XrdCmsKeyLoc::HashSave, Key, Loc, TickMask, TockTable, XrdCmsKey::TOD, and XrdCmsKey::TODRef.


Member Data Documentation

XrdCmsKeyLoc XrdCmsKeyItem::Loc

Definition at line 110 of file XrdCmsKey.hh.

Referenced by XrdCmsCache::Add2Q(), XrdCmsCache::AddFile(), Alloc(), XrdCmsCache::DelFile(), XrdCmsCache::Dispatch(), XrdCmsCache::GetFile(), XrdCmsNash::Recycle(), XrdCmsCache::Recycle(), XrdCmsCache::UnkFile(), Unload(), and XrdCmsCache::WT4File().

XrdCmsKey XrdCmsKeyItem::Key

Definition at line 111 of file XrdCmsKey.hh.

Referenced by XrdCmsNash::Add(), XrdCmsCache::AddFile(), Alloc(), XrdCmsCache::DelFile(), XrdCmsNash::Expand(), XrdCmsNash::Find(), XrdCmsCache::GetFile(), Recycle(), XrdCmsCache::Recycle(), Reload(), XrdCmsCache::UnkFile(), Unload(), and XrdCmsCache::WT4File().

XrdCmsKeyItem* XrdCmsKeyItem::Next

Definition at line 112 of file XrdCmsKey.hh.

Referenced by XrdCmsNash::Add(), Alloc(), XrdCmsNash::Expand(), XrdCmsNash::Find(), XrdCmsNash::Recycle(), Recycle(), and Replenish().

const unsigned int XrdCmsKeyItem::TickRate = 64 [static]

Definition at line 131 of file XrdCmsKey.hh.

Referenced by XrdCmsCache::Init().

const unsigned int XrdCmsKeyItem::TickMask = 63 [static]

Definition at line 132 of file XrdCmsKey.hh.

Referenced by Alloc(), Reload(), XrdCmsCache::TickTock(), and Unload().

const int XrdCmsKeyItem::minAlloc = 4096 [static]

Definition at line 133 of file XrdCmsKey.hh.

Referenced by XrdCmsCache::Recycle(), and Replenish().

const int XrdCmsKeyItem::minFree = 1024 [static]

Definition at line 134 of file XrdCmsKey.hh.

Referenced by XrdCmsCache::Recycle().

XrdCmsKeyItem * XrdCmsKeyItem::TockTable [static, private]

Definition at line 138 of file XrdCmsKey.hh.

Referenced by Alloc(), Reload(), and Unload().

XrdCmsKeyItem * XrdCmsKeyItem::Free [static, private]

Definition at line 139 of file XrdCmsKey.hh.

Referenced by Alloc(), Recycle(), and Replenish().

int XrdCmsKeyItem::numFree [static, private]

Definition at line 140 of file XrdCmsKey.hh.

Referenced by Alloc(), Recycle(), Replenish(), and Stats().

int XrdCmsKeyItem::numHave [static, private]

Definition at line 141 of file XrdCmsKey.hh.

Referenced by Replenish(), and Stats().

int XrdCmsKeyItem::numNull [static, private]

Definition at line 142 of file XrdCmsKey.hh.

Referenced by Alloc(), and Stats().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:20 2011 for ROOT_528-00b_version by  doxygen 1.5.1