29 #include "TClassEdit.h" 41 fClass(cl),fIds(0),fUnloaded(0),fIsLoaded(
kFALSE), fLastLoadMarker(0)
258 ((
TGlobal*)update)->Update(info);
288 R__ASSERT(
id != 0 &&
"DeclId should not be null");
302 if (!skipChecks && !
gInterpreter->ClassInfo_Contains(0,
id))
return 0;
307 DataMemberInfo_t *dm_info =
gInterpreter->DataMemberInfo_FactoryCopy(info);
318 else dm =
new TGlobal(dm_info);
385 if (found)
return obj;
443 bool skipChecks =
false;
445 auto complexType = TClassEdit::GetComplexType(
fClass->
GetName());
446 switch(complexType) {
451 case TClassEdit::EComplexType::kFloat:
457 case TClassEdit::EComplexType::kDouble:
463 case TClassEdit::EComplexType::kInt:
469 case TClassEdit::EComplexType::kLong:
479 DataMemberInfo_t *t =
gInterpreter->DataMemberInfo_Factory(info);
494 void TListOfDataMembers::Streamer(
TBuffer &R__b)
virtual void Clear(Option_t *="")
virtual const char * GetName() const
Returns name of object.
Bool_t HasInterpreterInfoInMemory() const
void Add(ULong64_t hash, Long64_t key, Long64_t value)
Add an (key,value) pair to the table. The key should be unique.
void AddFirst(TObject *obj)
Add object at the beginning of the list.
void RecursiveRemove(TObject *obj)
Remove object from this collection and recursively remove the object from all other objects (and coll...
A collection of TDataMember objects designed for fast access given a DeclId_t and for keep track of T...
void Remove(ULong64_t hash, Long64_t key)
Remove entry with specified key from the TExMap.
virtual DeclId_t GetDeclId() const
void AddAt(TObject *obj, Int_t idx)
Insert object at location idx in the list.
virtual Int_t WriteClassBuffer(const TClass *cl, void *pointer)=0
void AddLast(TObject *obj)
Add object at the end of the list.
TDictionary::DeclId_t DeclId_t
All ROOT classes may have RTTI (run time type identification) support added.
THashList * fUnloaded
Map from DeclId_t to TDataMember*.
R__EXTERN TVirtualMutex * gInterpreterMutex
ULong64_t fLastLoadMarker
Mark whether Load was executed.
Buffer base class used for serializing objects.
const unsigned int idsSize
void Delete(Option_t *option="")
Remove all objects from the list AND delete all heap based objects.
virtual void Clear(Option_t *option)
Remove all objects from the list.
void Load()
Load all the DataMembers known to the interpreter for the scope 'fClass' into this collection...
void AddLast(TObject *obj)
Add object at the end of the list.
TObject * FindObject(const char *name) const
Find object using its name.
void RecursiveRemove(TObject *obj)
Remove object from this collection and recursively remove the object from all other objects (and coll...
void AddBefore(const TObject *before, TObject *obj)
Insert object before object before in the list.
virtual 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...
void UnmapObject(TObject *obj)
Remove a pair<id, object> from the map of data members and their ids.
void AddAfter(const TObject *after, TObject *obj)
Insert object after object after in the list.
ClassInfo_t * GetClassInfo() const
virtual bool Update(DataMemberInfo_t *info)
Update the TFunction to reflect the new info.
~TListOfDataMembers()
Destructor.
THashList(const THashList &)
void Clear(Option_t *option="")
Remove all objects from the list.
TExMap * fIds
Context of this list. Not owned.
Long64_t GetValue(ULong64_t hash, Long64_t key)
Return the value belonging to specified key and hash value.
void AddAt(TObject *obj, Int_t idx)
Insert object at location idx in the list.
This class defines an abstract interface that must be implemented by all classes that contain diction...
void Update(TDictionary *member)
Move the member or data member to the expect set of list.
TObject * Remove(TObject *obj)
Remove object from the list.
static void update(gsl_integration_workspace *workspace, double a1, double b1, double area1, double error1, double a2, double b2, double area2, double error2)
void AddAfter(const TObject *after, TObject *obj)
Insert object after object after in the list.
The ROOT global object gROOT contains a list of all defined classes.
Global variables class (global variables are obtained from CINT).
Long_t Property() const
Set TObject::fBits and fStreamerType to cache information about the class.
virtual TObjLink * FirstLink() const
void MapObject(TObject *obj)
Add a pair<id, object> to the map of data members and their ids.
virtual Int_t ReadClassBuffer(const TClass *cl, void *pointer, const TClass *onfile_class=0)=0
Wrapper around a TObject so it can be stored in a TList.
TDictionary::DeclId_t DeclId_t
unsigned long long ULong64_t
#define R__LOCKGUARD(mutex)
void AddBefore(const TObject *before, TObject *obj)
Insert object before object before in the list.
static TClass * GetClass(const char *name, Bool_t load=kTRUE, Bool_t silent=kFALSE)
Static method returning pointer to TClass of the specified class name.
virtual bool Update(DataMemberInfo_t *info)
Update the TFunction to reflect the new info.
virtual void Delete(Option_t *option="")
Delete all TDataMember object files.
Mother of all ROOT objects.
TObject * GetObject() const
void Unload()
Mark 'all func' as being unloaded.
virtual void Add(TObject *obj)
void AddFirst(TObject *obj)
Add object at the beginning of the list.
TDictionary * Find(DeclId_t id) const
Return (after creating it if necessary) the TDataMember describing the data member corresponding to t...
TObject * Remove(TObject *obj)
Remove object from the list.
Bool_t fIsLoaded
Holder of TDataMember for unloaded DataMembers.
This class stores a (key,value) pair using an external hash.
DeclId_t GetDeclId() const
TDictionary * Get(DeclId_t id)
Return (after creating it if necessary) the TDataMember describing the data member corresponding to t...