#include <XrdOucHash.hh>
Public Member Functions | |
| T * | Add (const char *KeyVal, T *KeyData, const int LifeTime=0, XrdOucHash_Options opt=Hash_default) |
| int | Del (const char *KeyVal, XrdOucHash_Options opt=Hash_default) |
| T * | Find (const char *KeyVal, time_t *KeyTime=0) |
| int | Num () |
| void | Purge () |
| T * | Rep (const char *KeyVal, T *KeyData, const int LifeTime=0, XrdOucHash_Options opt=Hash_default) |
| T * | Apply (int(*func)(const char *, T *, void *), void *Arg) |
| XrdOucHash (int psize=89, int size=144, int load=80) | |
| ~XrdOucHash () | |
Private Member Functions | |
| void | Remove (int kent, XrdOucHash_Item< T > *hip, XrdOucHash_Item< T > *phip) |
| XrdOucHash_Item< T > * | Search (XrdOucHash_Item< T > *hip, const unsigned long khash, const char *kval, XrdOucHash_Item< T > **phip=0) |
| unsigned long | HashVal (const char *KeyVal) |
| void | Expand () |
Private Attributes | |
| XrdOucHash_Item< T > ** | hashtable |
| int | prevtablesize |
| int | hashtablesize |
| int | hashnum |
| int | hashmax |
| int | hashload |
| XrdOucHash< T >::XrdOucHash | ( | int | psize = 89, |
|
| int | size = 144, |
|||
| int | load = 80 | |||
| ) |
| XrdOucHash< T >::~XrdOucHash | ( | ) | [inline] |
| T * XrdOucHash< T >::Add | ( | const char * | KeyVal, | |
| T * | KeyData, | |||
| const int | LifeTime = 0, |
|||
| XrdOucHash_Options | opt = Hash_default | |||
| ) |
References XrdOucHash_Item< T >::Count(), XrdOucHash_Item< T >::Data(), XrdOucHash< T >::Expand(), Hash_count, Hash_replace, XrdOucHash< T >::hashmax, XrdOucHash< T >::hashnum, XrdOucHash< T >::hashtable, XrdOucHash< T >::hashtablesize, XrdOucHash< T >::Remove(), XrdOucHash< T >::Search(), XrdOucHash_Item< T >::Time(), XrdOucHash_Item< T >::Update(), and XrdOucHashVal().
Referenced by XrdOlbPrepare::Add(), XrdCnsXref::Add(), XrdCmsPrepare::Add(), XrdCnsSsi::AddDel(), XrdOlbCache::AddFile(), XrdCnsSsi::AddFile(), XrdNetSecurity::AddHost(), XrdAccGroups::AddName(), XrdClientConn::CheckHostDomain(), XrdAccConfig::ConfigDBrec(), XrdOfsEvr::eventStage(), XrdAccGroups::Groups(), XrdNetSecurity::hostOK(), XrdXrootdFileLock1::Lock(), XrdOssMio::Map(), XrdAccGroups::NetGroups(), XrdFrmFiles::Process(), XrdFrmPstgXfr::Queue(), XrdSecsssID::Register(), XrdSutCache::Rehash(), XrdSecProtocolssl::ReloadGridMapFile(), XrdSecProtocolssl::ReloadVomsMapFile(), XrdOucHash< XrdCnsSsiFRec >::Rep(), XrdOlbPrepare::Reset(), XrdCmsPrepare::Reset(), XrdFrmPurge::Screen(), XrdOssSys::Stage_QT(), STRINGSTORE(), XrdSutPFile::UpdateHashTable(), XrdOfsEvr::Work4Event(), and XrdOlbExtractFN().
| T * XrdOucHash< T >::Apply | ( | int(*)(const char *, T *, void *) | func, | |
| void * | Arg | |||
| ) |
References XrdOucHash_Item< T >::Data(), XrdOucHash< T >::hashnum, XrdOucHash< T >::hashtable, XrdOucHash< T >::hashtablesize, XrdOucHash_Item< T >::Key(), XrdOucHash_Item< T >::Next(), XrdOucHash_Item< T >::SetNext(), and XrdOucHash_Item< T >::Time().
Referenced by XrdOlbCache::Apply(), XrdCnsXref::Apply(), XrdOlbCache::Bounce(), XrdClientConnectionMgr::Connect(), XrdOlbCache::Extract(), XrdOfsEvr::flushEvents(), XrdClientConnectionMgr::GarbageCollect(), XrdAccGroups::NetGroups(), XrdOlbCache::Reset(), XrdOlbPrepare::Scrub(), XrdOlbCache::Scrub(), XrdCmsPrepare::Scrub(), XrdOssSys::Stage_QT(), XrdCnsSsi::Updt(), XrdCnsSsiApplyD(), XrdClientConnectionMgr::~XrdClientConnectionMgr(), and XrdClientInputBuffer::~XrdClientInputBuffer().
| int XrdOucHash< T >::Del | ( | const char * | KeyVal, | |
| XrdOucHash_Options | opt = Hash_default | |||
| ) |
References XrdOucHash_Item< T >::Count(), XrdOucHash< T >::hashtable, XrdOucHash< T >::hashtablesize, XrdOucHash< T >::Remove(), XrdOucHash< T >::Search(), XrdOucHash_Item< T >::Update(), and XrdOucHashVal().
Referenced by XrdCnsXref::Add(), XrdCnsSsi::AddDel(), XrdCnsSsi::ApplyLogRec(), XrdClientConnectionMgr::Connect(), XrdOlbCache::DelCache(), XrdOlbCache::DelFile(), XrdOfsEvr::flushEvents(), XrdOlbPrepare::Gone(), XrdCmsPrepare::Gone(), XrdOssMio::Reclaim(), XrdSecsssID::Register(), XrdFrmPstgXfr::Start(), and XrdXrootdFileLock1::Unlock().
| void XrdOucHash< T >::Expand | ( | ) | [private] |
| T * XrdOucHash< T >::Find | ( | const char * | KeyVal, | |
| time_t * | KeyTime = 0 | |||
| ) |
References XrdOucHash_Item< T >::Data(), XrdOucHash< T >::hashtable, XrdOucHash< T >::hashtablesize, XrdOucHash< T >::Remove(), XrdOucHash< T >::Search(), XrdOucHash_Item< T >::Time(), and XrdOucHashVal().
Referenced by XrdAccAccess::Access(), XrdCnsXref::Add(), XrdCnsSsi::AddDel(), XrdOlbCache::AddFile(), XrdCnsSsi::AddFile(), XrdAccGroups::addGroup(), XrdAccGroups::AddName(), XrdCnsSsi::AddSize(), XrdNetSecurity::Authorize(), XrdClientConn::CheckHostDomain(), XrdAccConfig::ConfigDBrec(), XrdClientConnectionMgr::Connect(), XrdOlbCache::DelFile(), XrdClientConn::DoLogin(), XrdOfsEvr::eventStage(), XrdOlbPrepare::Exists(), XrdCmsPrepare::Exists(), XrdSecsssID::Find(), XrdCnsXref::Find(), XrdAccGroups::FindName(), XrdSutCache::Get(), XrdOucEnv::Get(), XrdOlbCache::GetFile(), XrdOucEnv::GetInt(), XrdClientConnectionMgr::GetPhyConnection(), XrdClientConn::GetSessionID(), XrdClientInputBuffer::GetSyncObjOrMakeOne(), XrdAccGroups::Groups(), XrdXrootdFileLock1::Lock(), XrdOssMio::Map(), XrdAccGroups::NetGroups(), XrdXrootdFileLock1::numLocks(), XrdFrmFiles::Process(), XrdFrmPstgXfr::Queue(), XrdSutPFile::ReadEntry(), XrdSecProtocolssl::ReloadGridMapFile(), XrdSecProtocolssl::ReloadVomsMapFile(), XrdSutCache::Remove(), XrdSutPFile::RemoveEntry(), XrdSecProtocolssl::secServer(), XrdXrootdFileLock1::Unlock(), XrdSutPFile::UpdateCount(), and XrdOfsEvr::Work4Event().
| unsigned long XrdOucHash< T >::HashVal | ( | const char * | KeyVal | ) | [private] |
| int XrdOucHash< T >::Num | ( | ) | [inline] |
| void XrdOucHash< T >::Purge | ( | ) |
References XrdOucHash< T >::hashnum, XrdOucHash< T >::hashtable, XrdOucHash< T >::hashtablesize, and XrdOucHash_Item< T >::Next().
Referenced by XrdFrmFiles::Get(), XrdAccGroups::PurgeCache(), XrdSutCache::Rehash(), XrdSecProtocolssl::ReloadGridMapFile(), XrdSecProtocolssl::ReloadVomsMapFile(), XrdOlbPrepare::Reset(), XrdCmsPrepare::Reset(), XrdFrmPurge::Scan(), XrdSutPFile::UpdateHashTable(), and XrdOucHash< XrdCnsSsiFRec >::~XrdOucHash().
| void XrdOucHash< T >::Remove | ( | int | kent, | |
| XrdOucHash_Item< T > * | hip, | |||
| XrdOucHash_Item< T > * | phip | |||
| ) | [private] |
References XrdOucHash< T >::hashnum, XrdOucHash< T >::hashtable, XrdOucHash_Item< T >::Next(), and XrdOucHash_Item< T >::SetNext().
Referenced by XrdOucHash< T >::Add(), XrdOucHash< T >::Del(), and XrdOucHash< T >::Find().
| T* XrdOucHash< T >::Rep | ( | const char * | KeyVal, | |
| T * | KeyData, | |||
| const int | LifeTime = 0, |
|||
| XrdOucHash_Options | opt = Hash_default | |||
| ) | [inline] |
| XrdOucHash_Item< T > * XrdOucHash< T >::Search | ( | XrdOucHash_Item< T > * | hip, | |
| const unsigned long | khash, | |||
| const char * | kval, | |||
| XrdOucHash_Item< T > ** | phip = 0 | |||
| ) | [private] |
References XrdOucHash_Item< T >::Next(), and XrdOucHash_Item< T >::Same().
Referenced by XrdOucHash< T >::Add(), XrdOucHash< T >::Del(), and XrdOucHash< T >::Find().
int XrdOucHash< T >::hashload [private] |
Referenced by XrdOucHash< T >::Expand(), and XrdOucHash< T >::XrdOucHash().
int XrdOucHash< T >::hashmax [private] |
Referenced by XrdOucHash< T >::Add(), XrdOucHash< T >::Expand(), and XrdOucHash< T >::XrdOucHash().
int XrdOucHash< T >::hashnum [private] |
XrdOucHash_Item<T>** XrdOucHash< T >::hashtable [private] |
int XrdOucHash< T >::hashtablesize [private] |
int XrdOucHash< T >::prevtablesize [private] |
Referenced by XrdOucHash< T >::Expand(), and XrdOucHash< T >::XrdOucHash().
1.7.1