RooHashTable Class Reference

#include <RooHashTable.h>

Inheritance diagram for RooHashTable:

TObject TObject List of all members.

Public Types

enum  HashMethod
enum  HashMethod

Public Member Functions

 RooHashTable (Int_t initSize=17, HashMethod hashMethod=Name)
 RooHashTable (const RooHashTable &other)
virtual ~RooHashTable ()
void add (TObject *arg, TObject *hashArg=0)
Bool_t remove (TObject *arg, TObject *hashArg=0)
TObjectfind (const char *name) const
TObjectfind (const TObject *arg) const
RooLinkedListElemfindLinkTo (const TObject *arg) const
RooSetPairfindSetPair (const RooArgSet *set1, const RooArgSet *set2) const
Bool_t replace (const TObject *oldArg, const TObject *newArg, const TObject *oldHashArg=0)
Int_t size () const
Double_t avgCollisions () const
 RooHashTable (Int_t initSize=17, HashMethod hashMethod=Name)
 RooHashTable (const RooHashTable &other)
virtual ~RooHashTable ()
void add (TObject *arg, TObject *hashArg=0)
Bool_t remove (TObject *arg, TObject *hashArg=0)
TObjectfind (const char *name) const
TObjectfind (const TObject *arg) const
RooLinkedListElemfindLinkTo (const TObject *arg) const
RooSetPairfindSetPair (const RooArgSet *set1, const RooArgSet *set2) const
Bool_t replace (const TObject *oldArg, const TObject *newArg, const TObject *oldHashArg=0)
Int_t size () const
Double_t avgCollisions () const

Protected Member Functions

ULong_t hash (const TObject *arg) const
ULong_t hash (const TObject *arg) const

Protected Attributes

HashMethod _hashMethod
Int_t _usedSlots
Int_t _entries
Int_t _size
RooLinkedList ** _arr
RooLinkedList ** _arr

Detailed Description

Definition at line 28 of file RooHashTable.h.


Member Enumeration Documentation

enum RooHashTable::HashMethod

Definition at line 31 of file RooHashTable.h.

enum RooHashTable::HashMethod

Definition at line 31 of file RooHashTable.h.


Constructor & Destructor Documentation

RooHashTable::RooHashTable ( Int_t  initSize = 17,
HashMethod  hashMethod = Name 
)

Definition at line 41 of file RooHashTable.cxx.

References _arr, _entries, _size, _usedSlots, TCollection::kInitHashTableCapacity, TMath::Max(), and TMath::NextPrime().

RooHashTable::RooHashTable ( const RooHashTable other  ) 

Definition at line 60 of file RooHashTable.cxx.

References _arr, _size, and i.

RooHashTable::~RooHashTable (  )  [virtual]

Definition at line 235 of file RooHashTable.cxx.

References _arr, _size, and i.

RooHashTable::RooHashTable ( Int_t  initSize = 17,
HashMethod  hashMethod = Name 
)

RooHashTable::RooHashTable ( const RooHashTable other  ) 

virtual RooHashTable::~RooHashTable (  )  [virtual]


Member Function Documentation

void RooHashTable::add ( TObject arg,
TObject hashArg = 0 
)

Definition at line 82 of file RooHashTable.cxx.

References _arr, _entries, _size, _usedSlots, RooLinkedList::Add(), and hash().

Referenced by RooLinkedList::Add(), RooNameReg::constPtr(), RooNormSetCache::expand(), RooLinkedList::Replace(), and RooLinkedList::setHashTableSize().

Bool_t RooHashTable::remove ( TObject arg,
TObject hashArg = 0 
)

Definition at line 99 of file RooHashTable.cxx.

References _arr, _entries, _size, _usedSlots, hash(), kFALSE, and kTRUE.

Referenced by RooLinkedList::Remove(), and RooLinkedList::Replace().

TObject * RooHashTable::find ( const char *  name  )  const

Definition at line 163 of file RooHashTable.cxx.

References _arr, _hashMethod, _size, RooLinkedList::find(), and TMath::Hash().

Referenced by RooNameReg::constPtr(), and RooLinkedList::find().

TObject * RooHashTable::find ( const TObject arg  )  const

Definition at line 177 of file RooHashTable.cxx.

References _arr, _hashMethod, _size, RooLinkedList::FindObject(), hash(), and Pointer.

RooLinkedListElem * RooHashTable::findLinkTo ( const TObject arg  )  const

Definition at line 191 of file RooHashTable.cxx.

References _arr, _hashMethod, _size, RooLinkedList::At(), RooLinkedList::GetSize(), hash(), i, and Pointer.

Referenced by RooLinkedList::findLink().

RooSetPair * RooHashTable::findSetPair ( const RooArgSet set1,
const RooArgSet set2 
) const

Definition at line 211 of file RooHashTable.cxx.

References _arr, _hashMethod, _size, RooLinkedList::At(), RooLinkedList::GetSize(), i, and Intrinsic.

Referenced by RooNormSetCache::contains().

Bool_t RooHashTable::replace ( const TObject oldArg,
const TObject newArg,
const TObject oldHashArg = 0 
)

Definition at line 148 of file RooHashTable.cxx.

References _arr, _size, hash(), kFALSE, and RooLinkedList::Replace().

Referenced by RooLinkedList::Replace().

Int_t RooHashTable::size (  )  const [inline]

Definition at line 47 of file RooHashTable.h.

References _size.

Referenced by RooLinkedList::Add(), RooLinkedList::Clear(), RooLinkedList::Delete(), RooLinkedList::getHashTableSize(), and RooLinkedList::RooLinkedList().

Double_t RooHashTable::avgCollisions (  )  const

Definition at line 122 of file RooHashTable.cxx.

References _arr, _size, h, and i.

ULong_t RooHashTable::hash ( const TObject arg  )  const [inline, protected]

Definition at line 51 of file RooHashTable.h.

References _hashMethod, TString::Hash(), Intrinsic, and Pointer.

Referenced by add(), find(), findLinkTo(), remove(), and replace().

void RooHashTable::add ( TObject arg,
TObject hashArg = 0 
)

Bool_t RooHashTable::remove ( TObject arg,
TObject hashArg = 0 
)

TObject* RooHashTable::find ( const char *  name  )  const

TObject* RooHashTable::find ( const TObject arg  )  const

RooLinkedListElem* RooHashTable::findLinkTo ( const TObject arg  )  const

RooSetPair* RooHashTable::findSetPair ( const RooArgSet set1,
const RooArgSet set2 
) const

Bool_t RooHashTable::replace ( const TObject oldArg,
const TObject newArg,
const TObject oldHashArg = 0 
)

Int_t RooHashTable::size (  )  const [inline]

Definition at line 47 of file RooHashTable.h.

References _size.

Double_t RooHashTable::avgCollisions (  )  const

ULong_t RooHashTable::hash ( const TObject arg  )  const [inline, protected]

Definition at line 51 of file RooHashTable.h.

References _hashMethod, TString::Hash(), Intrinsic, and Pointer.


Member Data Documentation

HashMethod RooHashTable::_hashMethod [protected]

Definition at line 61 of file RooHashTable.h.

Referenced by find(), findLinkTo(), findSetPair(), and hash().

Int_t RooHashTable::_usedSlots [protected]

Definition at line 62 of file RooHashTable.h.

Referenced by add(), remove(), and RooHashTable().

Int_t RooHashTable::_entries [protected]

Definition at line 63 of file RooHashTable.h.

Referenced by add(), remove(), and RooHashTable().

Int_t RooHashTable::_size [protected]

Definition at line 64 of file RooHashTable.h.

Referenced by add(), avgCollisions(), find(), findLinkTo(), findSetPair(), remove(), replace(), RooHashTable(), size(), and ~RooHashTable().

RooLinkedList** RooHashTable::_arr [protected]

Definition at line 65 of file RooHashTable.h.

Referenced by add(), avgCollisions(), find(), findLinkTo(), findSetPair(), remove(), replace(), RooHashTable(), and ~RooHashTable().

RooLinkedList** RooHashTable::_arr [protected]

Definition at line 65 of file RooHashTable.h.


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