12#ifndef ROOT_TOrdCollection 
   13#define ROOT_TOrdCollection 
  122   void               Reset() 
override;
 
 
#define ClassDefOverride(name, id)
 
const Bool_t kIterForward
 
Collection abstract base class.
 
Iterator abstract base class.
 
Mother of all ROOT objects.
 
Iterator of ordered collection.
 
TIterator & operator=(const TIterator &rhs) override
Overridden assignment operator.
 
TObject * operator*() const override
Return current object or nullptr.
 
void Reset() override
Reset collection iterator.
 
const TOrdCollection * fCol
 
std::ptrdiff_t difference_type
 
TObject * Next() override
Return next object in collection.
 
const TCollection * GetCollection() const override
 
std::bidirectional_iterator_tag iterator_category
 
Bool_t operator!=(const TIterator &aIter) const override
This operator compares two TIterator objects.
 
void AddFirst(TObject *obj) override
Insert object at beginning of collection.
 
TObject * After(const TObject *obj) const override
Return the object after object obj.
 
TObject * First() const override
Return the first object in the collection.
 
Bool_t LowWaterMark() const
 
TOrdCollection(const TOrdCollection &)=delete
 
TOrdCollection & operator=(const TOrdCollection &)=delete
 
void PutAt(TObject *obj, Int_t idx)
Put object at index idx. Overwrites what was at idx before.
 
void AddBefore(const TObject *before, TObject *obj) override
Insert object before object before in the collection.
 
void AddLast(TObject *obj) override
Add object at the end of the collection.
 
void Clear(Option_t *option="") override
Remove all objects from the collection.
 
void AddAfter(const TObject *after, TObject *obj) override
Insert object after object after in the collection.
 
~TOrdCollection()
Delete the collection.
 
Int_t PhysIndex(Int_t idx) const
 
void Sort()
If objects in collection are sortable (i.e.
 
Int_t IndexOf(const TObject *obj) const override
Return index of object in collection.
 
TObject * Last() const override
Return the last object in the collection.
 
Int_t LogIndex(Int_t idx) const
 
TObject * Remove(TObject *obj) override
Remove object from collection.
 
TObject * Before(const TObject *obj) const override
Returns the object before object obj.
 
TOrdCollectionIter Iterator_t
 
void AddAt(TObject *obj, Int_t idx) override
Insert object at position idx in the collection.
 
TObject * RemoveAt(Int_t idx) override
Remove object at index idx.
 
void Init(Int_t capacity)
Initialize ordered collection.
 
void Delete(Option_t *option="") override
Remove all objects from the collection AND delete all heap based objects.
 
Bool_t IllegalIndex(const char *method, Int_t idx) const
Return true when index out of bounds and print error.
 
TObject * At(Int_t idx) const override
Returns the object at position idx. Returns 0 if idx is out of range.
 
TObject ** GetObjectRef(const TObject *obj) const override
return address of pointer obj
 
void MoveGapTo(Int_t newGapStart)
Move gap to new position.
 
TIterator * MakeIterator(Bool_t dir=kIterForward) const override
Return an ordered collection iterator.
 
Int_t BinarySearch(TObject *obj)
Find object using a binary search.
 
void SetCapacity(Int_t newCapacity)
Set/change ordered collection capacity.
 
Sequenceable collection abstract base class.