ROOT » CORE » META » TListOfDataMembers

class TListOfDataMembers: public THashList


TListOfDataMembers

A collection of TDataMember objects designed for fast access given a
DeclId_t and for keep track of TDataMember that were described
unloaded data member.


Function Members (Methods)

public:
virtual~TListOfDataMembers()
voidTObject::AbstractMethod(const char* method) const
virtual voidTList::Add(TObject* obj)
virtual voidTList::Add(TObject* obj, Option_t* opt)
virtual voidAddAfter(const TObject* after, TObject* obj)
virtual voidAddAfter(TObjLink* after, TObject* obj)
virtual voidTCollection::AddAll(const TCollection* col)
virtual voidAddAt(TObject* obj, Int_t idx)
virtual voidAddBefore(const TObject* before, TObject* obj)
virtual voidAddBefore(TObjLink* before, TObject* obj)
virtual voidAddFirst(TObject* obj)
virtual voidAddFirst(TObject* obj, Option_t* opt)
virtual voidAddLast(TObject* obj)
virtual voidAddLast(TObject* obj, Option_t* opt)
voidTCollection::AddVector(TObject* obj1)
virtual TObject*TList::After(const TObject* obj) const
virtual voidTObject::AppendPad(Option_t* option = "")
Bool_tTCollection::AssertClass(TClass* cl) const
virtual TObject*TList::At(Int_t idx) const
Float_tTHashList::AverageCollisions() const
virtual TObject*TList::Before(const TObject* obj) const
TIterTCollection::begin() const
virtual voidTCollection::Browse(TBrowser* b)
Int_tTCollection::Capacity() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t* option)
virtual TObject*TCollection::Clone(const char* newname = "") const
virtual Int_tTCollection::Compare(const TObject* obj) const
Bool_tTCollection::Contains(const char* name) const
Bool_tTCollection::Contains(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidDelete(Option_t* option = "")
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTCollection::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTCollection::Dump() const
static voidTCollection::EmptyGarbageCollection()
TIterTCollection::end() const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
TDictionary*Find(TListOfDataMembers::DeclId_t id) const
virtual TObject*FindObject(const char* name) const
virtual TObject*TList::First() const
virtual TObjLink*TList::FirstLink() const
static voidTCollection::GarbageCollect(TObject* obj)
TDictionary*Get(TListOfDataMembers::DeclId_t id)
TDictionary*Get(DataMemberInfo_t* info, bool skipChecks = kFALSE)
TClass*GetClass() const
static TCollection*TCollection::GetCurrentCollection()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Int_tTCollection::GetEntries() const
virtual const char*TObject::GetIconName() const
virtual Int_tTSeqCollection::GetLast() const
TList*THashList::GetListForObject(const char* name) const
TList*THashList::GetListForObject(const TObject* obj) const
virtual const char*TCollection::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
virtual TObject**TList::GetObjectRef(const TObject* obj) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Int_tTCollection::GetSize() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Int_tTCollection::GrowBy(Int_t delta) const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTCollection::Hash() const
virtual Int_tTSeqCollection::IndexOf(const TObject* obj) const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tTCollection::IsArgNull(const char* where, const TObject* obj) const
Bool_tTList::IsAscending()
virtual Bool_tTCollection::IsEmpty() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTCollection::IsFolder() const
Bool_tIsLoaded() const
Bool_tTObject::IsOnHeap() const
Bool_tTCollection::IsOwner() const
virtual Bool_tTCollection::IsSortable() const
virtual Bool_tTSeqCollection::IsSorted() const
Bool_tTObject::IsZombie() const
virtual TObject*TList::Last() const
Int_tTSeqCollection::LastIndex() const
virtual TObjLink*TList::LastLink() const
voidLoad()
virtual voidTCollection::ls(Option_t* option = "") const
virtual TIterator*TList::MakeIterator(Bool_t dir = kIterForward) const
virtual TIterator*TCollection::MakeReverseIterator() const
voidTObject::MayNotUse(const char* method) const
Long64_tTSeqCollection::Merge(TCollection* list)
virtual Bool_tTObject::Notify()
static Int_tTSeqCollection::ObjCompare(TObject* a, TObject* b)
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TObject*TCollection::operator()(const char* name) const
virtual voidTCollection::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTCollection::Print(Option_t* option = "") const
virtual voidTCollection::Print(Option_t* option, Int_t recurse) const
virtual voidTCollection::Print(Option_t* option, const char* wildcard, Int_t recurse = 1) const
virtual voidTCollection::Print(Option_t* option, TPRegexp& regexp, Int_t recurse = 1) const
static voidTSeqCollection::QSort(TObject** a, Int_t first, Int_t last)
static voidTSeqCollection::QSort(TObject** a, TObject** b, Int_t first, Int_t last)
static voidTSeqCollection::QSort(TObject** a, Int_t nBs, TObject*** b, Int_t first, Int_t last)
virtual Int_tTObject::Read(const char* name)
virtual voidRecursiveRemove(TObject* obj)
voidTHashList::Rehash(Int_t newCapacity)
virtual TObject*Remove(TObject* obj)
virtual TObject*Remove(TObjLink* lnk)
virtual voidTSeqCollection::RemoveAfter(TObject* after)
voidTCollection::RemoveAll()
virtual voidTCollection::RemoveAll(TCollection* col)
virtual TObject*TSeqCollection::RemoveAt(Int_t idx)
virtual voidTSeqCollection::RemoveBefore(TObject* before)
virtual voidTSeqCollection::RemoveFirst()
virtual voidTList::RemoveLast()
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetClass(TClass* cl)
voidTCollection::SetCurrentCollection()
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidTCollection::SetName(const char* name)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTCollection::SetOwner(Bool_t enable = kTRUE)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidTList::Sort(Bool_t order = kSortAscending)
static voidTCollection::StartGarbageCollection()
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
TListOfDataMembers(TClass* cl = 0)
voidUnload()
voidUnload(TDictionary* member)
voidTSeqCollection::UnSort()
voidUpdate(TDictionary* member)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTCollection::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTCollection::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTSeqCollection::Changed()
virtual voidTList::DeleteLink(TObjLink* lnk)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
TObjLink**TList::DoSort(TObjLink** head, Int_t n)
TObjLink*TList::FindLink(const TObject* obj, Int_t& idx) const
virtual const char*TCollection::GetCollectionEntryName(TObject* entry) const
TObjLink*TList::LinkAt(Int_t idx) const
Bool_tTList::LnkCompare(TObjLink* l1, TObjLink* l2)
voidTObject::MakeZombie()
virtual TObjLink*TList::NewLink(TObject* obj, TObjLink* prev = __null)
virtual TObjLink*TList::NewOptLink(TObject* obj, Option_t* opt, TObjLink* prev = __null)
virtual voidTCollection::PrintCollectionEntry(TObject* entry, Option_t* option, Int_t recurse) const
virtual voidTCollection::PrintCollectionHeader(Option_t* option) const

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TCollection::(anonymous)TCollection::kInitCapacity
static TCollection::(anonymous)TCollection::kInitHashTableCapacity
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
protected:
Bool_tTList::fAscending! sorting order (when calling Sort() or for TSortedList)
TObjLink*TList::fCache! cache to speedup sequential calling of Before() and After() functions
TObjLink*TList::fFirst! pointer to first entry in linked list
TObjLink*TList::fLast! pointer to last entry in linked list
TStringTCollection::fNamename of the collection
Int_tTCollection::fSizenumber of elements in collection
Bool_tTSeqCollection::fSortedtrue if collection has been sorted
THashTable*THashList::fTableHashtable used for quick lookup of objects
static TCollection::(anonymous)TCollection::kIsOwner
private:
TClass*fClass! Context of this list. Not owned.
TExMap*fIds! Map from DeclId_t to TDataMember*
Bool_tfIsLoaded! Mark whether Load was executed.
ULong64_tfLastLoadMarker! Represent interpreter state when we last did a full load.
THashList*fUnloaded! Holder of TDataMember for unloaded DataMembers.

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TListOfDataMembers(TClass* cl = 0)
 Constructor.
~TListOfDataMembers()
 Destructor.
void MapObject(TObject* obj)
 Add a pair<id, object> to the map of data members and their ids.
void AddFirst(TObject* obj)
 Add object at the beginning of the list.
void AddFirst(TObject* obj, Option_t* opt)
 Add object at the beginning of the list and also store option.
 Storing an option is useful when one wants to change the behaviour
 of an object a little without having to create a complete new
 copy of the object. This feature is used, for example, by the Draw()
 method. It allows the same object to be drawn in different ways.
void AddLast(TObject* obj)
 Add object at the end of the list.
void AddLast(TObject* obj, Option_t* opt)
 Add object at the end of the list and also store option.
 Storing an option is useful when one wants to change the behaviour
 of an object a little without having to create a complete new
 copy of the object. This feature is used, for example, by the Draw()
 method. It allows the same object to be drawn in different ways.
void AddAt(TObject* obj, Int_t idx)
 Insert object at location idx in the list.
void AddAfter(const TObject* after, TObject* obj)
 Insert object after object after in the list.
void AddAfter(TObjLink* after, TObject* obj)
 Insert object after object after in the list.
void AddBefore(const TObject* before, TObject* obj)
 Insert object before object before in the list.
void AddBefore(TObjLink* before, TObject* obj)
 Insert object before object before in the list.
void Clear(Option_t* option)
 Remove all objects from the list. Does not delete the objects unless
 the THashList is the owner (set via SetOwner()).
void Delete(Option_t* option = "")
 Delete all TDataMember object files.
TObject * FindObject(const char* name) const
 Specialize FindObject to do search for the
 a data member just by name or create it if its not already in the list
TDictionary * Find(TListOfDataMembers::DeclId_t id) const
 Return (after creating it if necessary) the TDataMember
 describing the data member corresponding to the Decl 'id'.
TDictionary * Get(TListOfDataMembers::DeclId_t id)
 Return (after creating it if necessary) the TDataMember
 describing the data member corresponding to the Decl 'id'.
TDictionary * Get(DataMemberInfo_t* info, bool skipChecks = kFALSE)
 Return (after creating it if necessary) the TDataMember
 describing the data member corresponding to the Decl 'id'.
 The skipChecks flag controls the consistency checks performed inspecting
 the AST. In some cases, we explicitely alter the datamembers in the
 typesystem with respect to the AST and therefore we must not enforce
 consistency.
void UnmapObject(TObject* obj)
 Remove a pair<id, object> from the map of data members and their ids.
void RecursiveRemove(TObject* obj)
 Remove object from this collection and recursively remove the object
 from all other objects (and collections).
 This function overrides TCollection::RecursiveRemove that calls
 the Remove function. THashList::Remove cannot be called because
 it uses the hash value of the hash table. This hash value
 is not available anymore when RecursiveRemove is called from
 the TObject destructor.
TObject* Remove(TObject* obj)
 Remove object from the list.
TObject* Remove(TObjLink* lnk)
 Remove object via its objlink from the list.
void Load()
 Load all the DataMembers known to the intepreter for the scope 'fClass'
 into this collection.
void Streamer(TBuffer& )
 Stream an object of class TListOfDataMembers.
void Update(TDictionary* member)
 Move the member or data member to the expect set of list.
void Unload()
 Mark 'all func' as being unloaded.
 After the unload, the data member can no longer be found directly,
 until the decl can be found again in the interpreter (in which
 the func object will be reused.
void Unload(TDictionary* member)
 Mark 'func' as being unloaded.
 After the unload, the data member can no longer be found directly,
 until the decl can be found again in the interpreter (in which
 the func object will be reused.
TListOfDataMembers(const TListOfDataMembers& )
TListOfDataMembers& operator=(const TListOfDataMembers& )
Bool_t IsLoaded() const
{ return fIsLoaded; }
TClass * GetClass() const
{ return fClass; }
void SetClass(TClass* cl)
{ fClass = cl; }