127      Warning(
"TRefArray", 
"size (%d) < 0", s);
 
 
  145      Warning(
"TRefArray", 
"size (%d) < 0", s);
 
 
  163   Init(
a.fSize, 
a.fLowerBound);
 
 
  183      Init(
a.fSize, 
a.fLowerBound);
 
 
  250            Error(
TString::Format(
"TRefArray::%s",
methodname),
"The object at %p can not be registered in the process the TRefArray points to (pid = %s/%s) because the ProcessID has too many objects and the TRefArray already contains other objects.",obj,
fPID->
GetName(),
fPID->
GetTitle());
 
  258              "The object at %p is not registered in the process the TRefArray points to (pid = %s/%s)",obj,
fPID->
GetName(),
fPID->
GetTitle());
 
 
  302         Error(
"AddBefore", 
"before not found, object not added");
 
 
  326         Error(
"AddAfter", 
"after not found, object not added");
 
 
  341      Error(
"AddAt", 
"out of bounds at %d in %zx", idx, (
size_t)
this);
 
 
  363   if (!
BoundsOk(
"AddAt", idx)) 
return;
 
 
  383      for (i = 0; i < 
fSize; i++)
 
 
  404   if (!obj || !
fPID) 
return nullptr;
 
  407   if (idx == -1 || idx == 
fSize-1) 
return nullptr;
 
 
  417   if (!obj || !
fPID) 
return nullptr;
 
  420   if (idx == -1 || idx == 0) 
return nullptr;
 
 
  478      Error (
"Expand", 
"newSize must be positive (%d)", 
newSize);
 
  496   if (temp) 
delete [] temp;
 
 
  522   if (
R__b.IsReading()) {
 
 
  670      for (i = 0; i < 
fSize; i++)
 
  674      for (i = 0; i < 
fSize; i++)
 
 
  696         for (
Int_t i=0;i<s;i++)
 
 
  719   Error(
where, 
"index %d out of bounds (size: %d, this: 0x%zx)", i, 
fSize, (
size_t)
this);
 
 
  728   if (!
BoundsOk(
"RemoveAt", idx)) 
return nullptr;
 
 
  753   if (!obj) 
return nullptr;
 
  757   if (idx == -1) 
return nullptr;
 
 
  791   Error(
"Sort",
"Function not yet implemented");
 
 
  815   Error(
"BinarySearch",
"Function not yet implemented");
 
 
const Bool_t kIterForward
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Buffer base class used for serializing objects.
 
virtual Int_t GrowBy(Int_t delta) const
Increase the collection's capacity by delta slots.
 
Iterator abstract base class.
 
const char * GetName() const override
Returns name of object.
 
const char * GetTitle() const override
Returns title of object.
 
Mother of all ROOT objects.
 
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
 
virtual UInt_t GetUniqueID() const
Return the unique object id.
 
virtual void Streamer(TBuffer &)
Stream an object of class TObject.
 
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
 
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
 
@ kHasUUID
if object has a TUUID (its fUniqueID=UUIDNumber)
 
@ kIsReferenced
if object is referenced by a TRef or TRefArray
 
A TProcessID identifies a ROOT job in a unique way in time and space.
 
static Bool_t IsValid(TProcessID *pid)
static function. return kTRUE if pid is a valid TProcessID
 
static UInt_t AssignID(TObject *obj)
static function returning the ID assigned to obj If the object is not yet referenced,...
 
static TProcessID * GetSessionProcessID()
static function returning the pointer to the session TProcessID
 
static TProcessID * GetProcessWithUID(const TObject *obj)
static function returning a pointer to TProcessID with its pid encoded in the highest byte of obj->Ge...
 
TObject * GetObjectWithID(UInt_t uid)
returns the TObject with unique identifier uid in the table of objects
 
static UInt_t GetObjectCount()
Return the current referenced object count fgNumber is incremented every time a new object is referen...
 
Iterator of object array.
 
TObject * Next() override
Return next object in array. Returns 0 when no more objects in array.
 
void Reset() override
Reset array iterator.
 
TIterator & operator=(const TIterator &rhs) override
Overridden assignment operator.
 
Bool_t operator!=(const TIterator &aIter) const override
This operator compares two TIterator objects.
 
TObject * operator*() const override
Return current object or nullptr.
 
An array of references to TObjects.
 
void AddAt(TObject *obj, Int_t idx) override
Add object at position ids.
 
void SetLast(Int_t last)
Set index of last object in array, effectively truncating the array.
 
TRefArray(TProcessID *pid=nullptr)
default constructor
 
TObject * RemoveAt(Int_t idx) override
Remove object at index idx.
 
void Init(Int_t s, Int_t lowerBound)
Initialize a TRefArray.
 
virtual Int_t AddAtFree(TObject *obj)
Return the position of the new object.
 
TObject * GetFromTable(Int_t idx) const
the reference may be in the TRefTable
 
void AddFirst(TObject *obj) override
Add object in the first slot of the array.
 
UInt_t GetUID(Int_t at) const
Return UID of element at.
 
TClass * IsA() const override
 
virtual ~TRefArray()
Usual destructor (The object pointed to by the array are never deleted).
 
virtual void Expand(Int_t newSize)
Expand or shrink the array to newSize elements.
 
void Delete(Option_t *option="") override
Remove all objects from the array and free the internal memory.
 
Bool_t BoundsOk(const char *where, Int_t at) const
 
Bool_t OutOfBoundsError(const char *where, Int_t i) const
Generate an out-of-bounds error. Always returns false.
 
Int_t GetLast() const override
Return index of last object in array.
 
TIterator * MakeIterator(Bool_t dir=kIterForward) const override
Returns an array iterator.
 
void AddLast(TObject *obj) override
Add object in the next empty slot in the array.
 
virtual Int_t BinarySearch(TObject *obj, Int_t upto=kMaxInt)
Find object using a binary search.
 
TObject * After(const TObject *obj) const override
Return the object after obj. Returns 0 if obj is last object.
 
void AddAfter(const TObject *after, TObject *obj) override
Add object in the slot after object after.
 
friend class TRefArrayIter
 
void AddBefore(const TObject *before, TObject *obj) override
Add object in the slot before object before.
 
void Clear(Option_t *option="") override
Remove all objects from the array.
 
virtual void AddAtAndExpand(TObject *obj, Int_t idx)
Add object at position idx.
 
Int_t GetAbsLast() const
Return absolute index to last object in array.
 
TObject * Remove(TObject *obj) override
Remove object from array.
 
Int_t IndexOf(const TObject *obj) const override
 
void Streamer(TBuffer &) override
Stream all objects in the array to or from the I/O buffer.
 
TRefArray & operator=(const TRefArray &a)
Assignment operator.
 
virtual void Sort(Int_t upto=kMaxInt)
If objects in array are sortable (i.e.
 
TObject * First() const override
Return the object in the first slot.
 
TObject ** GetObjectRef(const TObject *obj) const override
Return address of pointer obj.
 
Bool_t GetObjectUID(Int_t &uid, TObject *obj, const char *methodname)
Private/static function, check for validity of pid.
 
Int_t GetEntries() const override
Return the number of objects in array (i.e.
 
virtual void Compress()
Remove empty slots from array.
 
TObject * Before(const TObject *obj) const override
Return the object before obj. Returns 0 if obj is first object.
 
TObject * Last() const override
Return the object in the last filled slot. Returns 0 if no entries.
 
A TRefTable maintains the association between a referenced object and the parent object supporting th...
 
virtual void SetUID(UInt_t uid, TProcessID *context=nullptr)
 
static TRefTable * GetRefTable()
Static function returning the current TRefTable.
 
Bool_t Notify() override
This function is called by TRef::Streamer or TStreamerInfo::ReadBuffer when reading a reference.
 
Sequenceable collection abstract base class.
 
virtual void Streamer(TBuffer &)
Stream a string object.
 
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
 
Short_t Max(Short_t a, Short_t b)
Returns the largest of a and b.