138 while ((
a = (
TPair *)next()))
139 if (
a->Key() &&
a->Key()->IsOnHeap())
155 while ((
a = (
TPair *)next()))
156 if (
a->Value() &&
a->Value()->IsOnHeap())
172 while ((
a = (
TPair *)next())) {
173 if (
a->Key() &&
a->Key()->IsOnHeap())
175 if (
a->Value() &&
a->Value()->IsOnHeap())
196 if (
IsOwner() &&
a->Key() &&
a->Key()->IsOnHeap())
227 if (
IsArgNull(
"FindObject", key))
return 0;
238 if (
a)
return a->Value();
247 if (
IsArgNull(
"GetValue", key))
return 0;
250 if (
a)
return a->Value();
276 coll->
Print(option, recurse);
371 TObject::Streamer(
b);
375 for (
Int_t i = 0; i < nobjects; i++) {
378 if (obj)
Add(obj, value);
380 b.CheckByteCount(R__s, R__c,TMap::IsA());
382 R__c =
b.WriteVersion(TMap::IsA(),
kTRUE);
383 TObject::Streamer(
b);
388 while ((
a = (
TPair*) next())) {
392 b.SetByteCount(R__c,
kTRUE);
413 while ((
a = (
TPair*) next())) {
415 nbytes +=
a->Key()->Write(
name, option, bsize);
417 nbytes +=
a->Value()->Write(
name, option, bsize);
433 return ((
const TMap*)
this)->Write(
name,option,bsize);
547 if (
a)
return a->Key();
565 const TMapIter &iter(dynamic_cast<const TMapIter &>(aIter));
Int_t Capacity() const
Return number of slots in the hashtable.
virtual Int_t Write(const char *name=0, Int_t option=0, Int_t bufsize=0)
Write this object to the current directory.
TPair * RemoveEntry(TObject *key)
Remove (key,value) pair with key from the map.
void CallRecursiveRemoveIfNeeded(TObject &obj)
call RecursiveRemove for obj if gROOT is valid and obj.TestBit(kMustCleanup) is true.
virtual void SetOwner(Bool_t enable=kTRUE)
Set whether this collection is the owner (enable==true) of its content.
Bool_t IsArgNull(const char *where, const TObject *obj) const
Returns true if object is a null pointer.
virtual ~TPair()
TPair destructor.
Buffer base class used for serializing objects.
void Rehash(Int_t newCapacity, Bool_t checkObjValidity=kTRUE)
Rehash the hashtable.
Float_t AverageCollisions() const
void Add(TObject *obj)
This function may not be used (but we need to provide it since it is a pure virtual in TCollection)...
virtual void Browse(TBrowser *b)
Browse object. May be overridden for another default action.
virtual void Print(Option_t *option="") const
This method must be overridden when a class wants to print itself.
virtual Int_t Write(const char *name=0, Int_t option=0, Int_t bufsize=0)
Write all objects in this map.
virtual ~TMap()
TMap dtor.
Iterator abstract base class.
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
TObject * operator*() const
Return pointer to current object (a TPair) or nullptr.
THashTable implements a hash table to store TObject's.
Bool_t IsOwnerValue() const
void DeleteAll()
Remove all (key,value) pairs from the map AND delete the keys AND values when they are allocated on t...
Float_t AverageCollisions() const
Return the ratio of entries vs occupied slots.
void MayNotUse(const char *method) const
Use this method to signal that a method (defined in a base class) may not be called in a derived clas...
TIterator * MakeIterator(Bool_t dir=kIterForward) const
Create an iterator for TMap.
virtual void SetOwnerValue(Bool_t enable=kTRUE)
Set whether this map is the owner (enable==true) of its values.
Using a TBrowser one can browse all ROOT objects.
virtual void SetOwnerKeyValue(Bool_t ownkeys=kTRUE, Bool_t ownvals=kTRUE)
Set ownership for keys and values.
void Delete(Option_t *option="")
Remove all (key,value) pairs from the map AND delete the keys when they are allocated on the heap...
write collection with single key
TObject * Remove(TObject *key)
Remove the (key,value) pair with key from the map.
virtual TIterator * MakeIterator(Bool_t dir=kIterForward) const =0
Bool_t DeleteEntry(TObject *key)
Remove (key,value) pair with key from the map.
Collection abstract base class.
~TMapIter()
Map iterator dtor.
static void IndentLevel()
Functions used by ls() to indent an object hierarchy.
void DeleteValues()
Remove all (key,value) pairs from the map AND delete the values when they are allocated on the heap...
void Rehash(Int_t newCapacity, Bool_t checkObjValidity=kTRUE)
Rehash the underlaying THashTable (see THashTable::Rehash()).
static void GarbageCollect(TObject *obj)
Add to the list of things to be cleaned up.
Int_t Collisions(const char *name) const
Returns the number of collisions for an object with a certain name (i.e.
Class used by TMap to store (key,value) pairs.
TObject * FindObject(const char *name) const
Find object using its name.
TMap implements an associative array of (key,value) pairs using a THashTable for efficient retrieval ...
const TCollection * GetCollection() const
void Add(TObject *obj)
Add object to the hash table.
Int_t Collisions(const char *keyname) const
Returns the number of collisions for a key with a certain name (i.e.
TIterator & operator=(const TIterator &rhs)
Overridden assignment operator.
Mother of all ROOT objects.
void Delete(Option_t *option="")
Remove all objects from the table AND delete all heap based objects.
TObject * FindObject(const char *keyname) const
Check if a (key,value) pair exists with keyname as name of the key.
Bool_t operator!=(const TIterator &aIter) const
This operator compares two TIterator objects.
TObject * Next()
Returns the next key from a map.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
TObject * Next()
Return next object in hashtable. Returns 0 when no more objects in table.
virtual void Browse(TBrowser *b)
Browse the pair.
TObject * GetValue(const char *keyname) const
Returns a pointer to the value associated with keyname as name of the key.
virtual void Print(Option_t *option="") const
Default print for collections, calls Print(option, 1).
virtual Int_t GetSize() const
void Reset()
Reset the map iterator.
virtual void PrintCollectionEntry(TObject *entry, Option_t *option, Int_t recurse) const
Print the collection entry.
void Clear(Option_t *option="")
Remove all (key,value) pairs from the map.
TObject * Remove(TObject *obj)
Remove object from the hashtable.