TExMap Class Reference

#include <TExMap.h>

Inheritance diagram for TExMap:

TObject TObject List of all members.

Public Member Functions

 TExMap (Int_t mapSize=100)
 TExMap (const TExMap &map)
TExMapoperator= (const TExMap &)
 ~TExMap ()
void Add (ULong64_t hash, Long64_t key, Long64_t value)
void Add (Long64_t key, Long64_t value)
void AddAt (UInt_t slot, ULong64_t hash, Long64_t key, Long64_t value)
void Delete (Option_t *opt="")
Int_t Capacity () const
void Expand (Int_t newsize)
Int_t GetSize () const
Long64_t GetValue (ULong64_t hash, Long64_t key)
Long64_t GetValue (Long64_t key)
Long64_t GetValue (ULong64_t hash, Long64_t key, UInt_t &slot)
void Remove (ULong64_t hash, Long64_t key)
void Remove (Long64_t key)
Long64_toperator() (ULong64_t hash, Long64_t key)
Long64_toperator() (Long64_t key)
 TExMap (Int_t mapSize=100)
 TExMap (const TExMap &map)
TExMapoperator= (const TExMap &)
 ~TExMap ()
void Add (ULong64_t hash, Long64_t key, Long64_t value)
void Add (Long64_t key, Long64_t value)
void AddAt (UInt_t slot, ULong64_t hash, Long64_t key, Long64_t value)
void Delete (Option_t *opt="")
Int_t Capacity () const
void Expand (Int_t newsize)
Int_t GetSize () const
Long64_t GetValue (ULong64_t hash, Long64_t key)
Long64_t GetValue (Long64_t key)
Long64_t GetValue (ULong64_t hash, Long64_t key, UInt_t &slot)
void Remove (ULong64_t hash, Long64_t key)
void Remove (Long64_t key)
Long64_toperator() (ULong64_t hash, Long64_t key)
Long64_toperator() (Long64_t key)

Private Member Functions

Bool_t HighWaterMark ()
Int_t FindElement (ULong64_t hash, Long64_t key)
void FixCollisions (Int_t index)
Bool_t HighWaterMark ()
Int_t FindElement (ULong64_t hash, Long64_t key)
void FixCollisions (Int_t index)

Private Attributes

Assoc_tfTable
Int_t fSize
Int_t fTally
Assoc_tfTable

Friends

class TExMapIter

Classes

struct  Assoc_t

Detailed Description

Definition at line 35 of file TExMap.h.


Constructor & Destructor Documentation

TExMap::TExMap ( Int_t  mapSize = 100  ) 

TExMap::TExMap ( const TExMap map  ) 

Definition at line 53 of file TExMap.cxx.

References fSize, fTable, and fTally.

TExMap::~TExMap (  ) 

Definition at line 79 of file TExMap.cxx.

References fTable.

TExMap::TExMap ( Int_t  mapSize = 100  ) 

TExMap::TExMap ( const TExMap map  ) 

TExMap::~TExMap (  ) 


Member Function Documentation

Bool_t TExMap::HighWaterMark (  )  [inline, private]

Definition at line 56 of file TExMap.h.

References fSize, and fTally.

Referenced by Add(), AddAt(), and operator()().

Int_t TExMap::FindElement ( ULong64_t  hash,
Long64_t  key 
) [private]

Definition at line 233 of file TExMap.cxx.

References TObject::Error(), fSize, and fTable.

Referenced by Add(), Expand(), FixCollisions(), operator()(), and Remove().

void TExMap::FixCollisions ( Int_t  index  )  [private]

Definition at line 254 of file TExMap.cxx.

References TExMap::Assoc_t::Clear(), FindElement(), TExMap::Assoc_t::fKey, fSize, fTable, TExMap::Assoc_t::GetHash(), and TExMap::Assoc_t::InUse().

Referenced by Remove().

TExMap & TExMap::operator= ( const TExMap  ) 

Definition at line 64 of file TExMap.cxx.

References fSize, fTable, fTally, and TObject::operator=().

void TExMap::Add ( ULong64_t  hash,
Long64_t  key,
Long64_t  value 
)

Definition at line 87 of file TExMap.cxx.

References TObject::Error(), Expand(), FindElement(), TExMap::Assoc_t::fKey, fSize, fTable, fTally, TExMap::Assoc_t::fValue, HighWaterMark(), and TExMap::Assoc_t::SetHash().

Referenced by Add(), AddAt(), TDatabasePDG::AddParticle(), TDatabasePDG::BuildPdgMap(), TBufferFile::CheckObject(), ClassImp(), TStructViewer::CountMembers(), TStructViewerGUI::DrawNode(), TBufferXML::ExtractReference(), THtml::TFileSysDB::Fill(), THnSparse::FillExMap(), THnSparse::GetBinIndexForCurrentBin(), TGWin32::GetColor(), TGX11::GetColor(), TBufferFile::InitMap(), TBufferFile::MapObject(), THtml::TFileSysDir::Recurse(), TBufferXML::RegisterPointer(), TBufferSQL2::SqlReadObjectDirect(), TBufferSQL2::SqlWriteObject(), TGX11::TGX11(), and TBufferFile::WriteObjectClass().

void TExMap::Add ( Long64_t  key,
Long64_t  value 
) [inline]

Definition at line 68 of file TExMap.h.

References Add().

void TExMap::AddAt ( UInt_t  slot,
ULong64_t  hash,
Long64_t  key,
Long64_t  value 
)

Definition at line 106 of file TExMap.cxx.

References Add(), Expand(), TExMap::Assoc_t::fKey, fSize, fTable, fTally, TExMap::Assoc_t::fValue, HighWaterMark(), and TExMap::Assoc_t::SetHash().

Referenced by TEveManager::ElementStamped(), TBufferFile::WriteClass(), and TBufferFile::WriteObjectClass().

void TExMap::Delete ( Option_t opt = ""  )  [virtual]

Reimplemented from TObject.

Definition at line 161 of file TExMap.cxx.

References fSize, fTable, and fTally.

Referenced by TEveManager::DoRedraw3D(), THnSparse::Reset(), and TBufferFile::ResetMap().

Int_t TExMap::Capacity (  )  const [inline]

Definition at line 71 of file TExMap.h.

References fSize.

Referenced by THnSparse::AddInternal(), THnSparse::FillExMap(), THnSparse::GetBinIndexForCurrentBin(), THnSparse::Merge(), and TBufferFile::WriteObjectClass().

void TExMap::Expand ( Int_t  newsize  ) 

Definition at line 276 of file TExMap.cxx.

References TObject::Clear(), TObject::Error(), FindElement(), fSize, fTable, i, and TMath::NextPrime().

Referenced by Add(), AddAt(), THnSparse::AddInternal(), THnSparse::FillExMap(), THnSparse::GetBinIndexForCurrentBin(), THnSparse::Merge(), and operator()().

Int_t TExMap::GetSize (  )  const [inline]

Definition at line 73 of file TExMap.h.

References fTally.

Referenced by THnSparse::AddInternal(), THnSparse::GetBinIndexForCurrentBin(), TBufferFile::GetMappedObject(), THnSparse::GetSparseFractionMem(), THnSparse::Merge(), TBufferFile::ReadClass(), and TBufferFile::ReadObjectAny().

Long64_t TExMap::GetValue ( ULong64_t  hash,
Long64_t  key 
)

Definition at line 170 of file TExMap.cxx.

References TObject::Error(), fSize, fTable, and TExMap::Assoc_t::fValue.

Referenced by TBufferFile::CheckObject(), ClassImp(), TStructViewer::CountMembers(), TEveManager::ElementStamped(), TBufferXML::ExtractPointer(), THtml::TFileSysDB::Fill(), THnSparse::FillExMap(), THnSparse::GetBinIndexForCurrentBin(), TGWin32::GetColor(), TGX11::GetColor(), TBufferFile::GetMappedObject(), TDatabasePDG::GetParticle(), TProcessID::GetProcessWithUID(), GetValue(), TStructViewerGUI::MouseOverSlot(), TEveManager::PreDeleteElement(), TBufferXML::ProcessPointer(), TBufferFile::ReadClass(), TBufferFile::ReadObjectAny(), THtml::TFileSysDir::Recurse(), TBufferXML::RegisterPointer(), TBufferSQL2::SqlReadObject(), TBufferSQL2::SqlWriteObject(), TBufferFile::WriteClass(), and TBufferFile::WriteObjectClass().

Long64_t TExMap::GetValue ( Long64_t  key  )  [inline]

Definition at line 75 of file TExMap.h.

References GetValue().

Long64_t TExMap::GetValue ( ULong64_t  hash,
Long64_t  key,
UInt_t slot 
)

Definition at line 191 of file TExMap.cxx.

References TObject::Error(), fSize, fTable, and TExMap::Assoc_t::fValue.

void TExMap::Remove ( ULong64_t  hash,
Long64_t  key 
)

Definition at line 214 of file TExMap.cxx.

References TExMap::Assoc_t::Clear(), TObject::Error(), FindElement(), FixCollisions(), fTable, fTally, and i.

Referenced by TBufferFile::CheckObject(), ClassImp(), TEveManager::PreDeleteElement(), and Remove().

void TExMap::Remove ( Long64_t  key  )  [inline]

Definition at line 78 of file TExMap.h.

References Remove().

Long64_t & TExMap::operator() ( ULong64_t  hash,
Long64_t  key 
)

Definition at line 133 of file TExMap.cxx.

References TObject::Error(), Expand(), FindElement(), TExMap::Assoc_t::fKey, fSize, fTable, fTally, TExMap::Assoc_t::fValue, HighWaterMark(), Long64_t, and TExMap::Assoc_t::SetHash().

Referenced by operator()().

Long64_t& TExMap::operator() ( Long64_t  key  )  [inline]

Definition at line 81 of file TExMap.h.

References operator()().

Bool_t TExMap::HighWaterMark (  )  [inline, private]

Definition at line 56 of file TExMap.h.

References fSize, and fTally.

Int_t TExMap::FindElement ( ULong64_t  hash,
Long64_t  key 
) [private]

void TExMap::FixCollisions ( Int_t  index  )  [private]

TExMap& TExMap::operator= ( const TExMap  ) 

void TExMap::Add ( ULong64_t  hash,
Long64_t  key,
Long64_t  value 
)

void TExMap::Add ( Long64_t  key,
Long64_t  value 
) [inline]

Definition at line 68 of file TExMap.h.

References Add().

void TExMap::AddAt ( UInt_t  slot,
ULong64_t  hash,
Long64_t  key,
Long64_t  value 
)

void TExMap::Delete ( Option_t opt = ""  )  [virtual]

Reimplemented from TObject.

Int_t TExMap::Capacity (  )  const [inline]

Definition at line 71 of file TExMap.h.

References fSize.

void TExMap::Expand ( Int_t  newsize  ) 

Int_t TExMap::GetSize (  )  const [inline]

Definition at line 73 of file TExMap.h.

References fTally.

Long64_t TExMap::GetValue ( ULong64_t  hash,
Long64_t  key 
)

Long64_t TExMap::GetValue ( Long64_t  key  )  [inline]

Definition at line 75 of file TExMap.h.

References GetValue().

Long64_t TExMap::GetValue ( ULong64_t  hash,
Long64_t  key,
UInt_t slot 
)

void TExMap::Remove ( ULong64_t  hash,
Long64_t  key 
)

void TExMap::Remove ( Long64_t  key  )  [inline]

Definition at line 78 of file TExMap.h.

References Remove().

Long64_t& TExMap::operator() ( ULong64_t  hash,
Long64_t  key 
)

Long64_t& TExMap::operator() ( Long64_t  key  )  [inline]

Definition at line 81 of file TExMap.h.

References operator()().


Friends And Related Function Documentation

TExMapIter [friend]

Definition at line 37 of file TExMap.h.


Member Data Documentation

Assoc_t* TExMap::fTable [private]

Definition at line 52 of file TExMap.h.

Referenced by Add(), AddAt(), Delete(), Expand(), FindElement(), FixCollisions(), GetValue(), TExMapIter::Next(), operator()(), operator=(), Remove(), TExMap(), and ~TExMap().

Int_t TExMap::fSize [private]

Definition at line 53 of file TExMap.h.

Referenced by Add(), AddAt(), Capacity(), Delete(), Expand(), FindElement(), FixCollisions(), GetValue(), HighWaterMark(), TExMapIter::Next(), operator()(), operator=(), and TExMap().

Int_t TExMap::fTally [private]

Definition at line 54 of file TExMap.h.

Referenced by Add(), AddAt(), Delete(), GetSize(), HighWaterMark(), operator()(), operator=(), Remove(), and TExMap().

Assoc_t* TExMap::fTable [private]

Definition at line 52 of file TExMap.h.


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