|
ROOT
Reference Guide |
|
Go to the documentation of this file.
26 #ifdef R__LESS_INCLUDES
38 #include <unordered_set>
65 class TGenericClassInfo;
66 class TMapTypeToTClass;
67 class TMapDeclIdToTClass;
70 class TCollectionProxyInfo;
73 class TCheckHashRecursiveRemoveConsistency;
196 typedef std::atomic<std::map<std::string, TObjArray*>*>
ConvSIMap_t;
202 std::atomic<TListOfDataMembers*>
fData;
281 #ifdef R__NO_ATOMIC_FUNCTION_POINTER
294 const char *dfil,
const char *ifil,
296 ClassInfo_t *classInfo,
368 const char *dfil,
const char *ifil = 0,
371 const char *dfil,
const char *ifil = 0,
375 const char *dfil,
const char *ifil,
437 auto current =
fCurrentInfo.load(std::memory_order_relaxed);
438 if (current)
return current;
523 void Move(
void *arenaFrom,
void *arenaTo)
const;
605 #ifdef R__NO_ATOMIC_FUNCTION_POINTER
609 t(
this,obj,
b,onfile_class);
618 template <
typename T>
624 template <
typename T>
631 template <
typename F,
typename S>
634 std::pair<F, S> *p =
nullptr;
635 size_t hint_offset = ((
char*)&(p->second)) - (
char*)p;
636 return TClass::GetClass(
typeid(std::pair<F, S>), load, silent, hint_offset,
sizeof(std::pair<F,S>));
640 template <
typename T>
649 template <
typename T>
653 return ROOT::Internal::GetClassHelper<T>(load, silent, tag);
661 #ifndef R__NO_CLASS_TEMPLATE_SPECIALIZATION
665 template <
typename T>
TClass*
GetClass(
T*
const* ) {
return TClass::GetClass<T>(); }
666 template <
typename T>
TClass*
GetClass(
const T*
const* ) {
return TClass::GetClass<T>(); }
670 const char *dfil,
const char *ifil,
TViewPubDataMembers * fAllPubData
ROOT::NewArrFunc_t GetNewArray() const
Return the wrapper around new ThisClass[].
static void StreamerInstrumented(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
Case of instrumented class with a library.
TVirtualRefProxy * fRefProxy
cached streamer info used in the last read.
void(* MemberStreamerFunc_t)(TBuffer &, void *, Int_t)
void GetMissingDictionariesForPairElements(TCollection &result, TCollection &visited, bool recurse)
void(* DesFunc_t)(void *)
Abstract base class for accessing the data-members of a class.
virtual void Browse(TBrowser *b)
This method is called by a browser to get the class information.
A collection of TFunction objects designed for fast access given a DeclId_t and for keep track of TFu...
void(* StreamerImpl_t)(const TClass *pThis, void *obj, TBuffer &b, const TClass *onfile_class)
Schema evolution rules.
TClass * GetBaseDataMember(const char *datamember)
Return pointer to (base) class that contains datamember.
TVirtualCollectionProxy * GetCollectionProxy() const
Return the proxy describing the collection (if any).
Using a TBrowser one can browse all ROOT objects.
TMethod * GetMethodAny(const char *method)
Return pointer to method without looking at parameters.
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
UInt_t GetHeapInstanceCount() const
static void StreamerTObject(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
Case of TObjects.
A collection of TFunction objects designed for fast access given a DeclId_t and for keep track of TFu...
const TList * GetListOfAllPublicMethods(Bool_t load=kTRUE)
Returns a list of all public methods of this class and its base classes.
ClassConvStreamerFunc_t fConvStreamerFunc
TMethod * GetMethodAllAny(const char *method)
Return pointer to method without looking at parameters.
void Streamer(void *obj, TBuffer &b, const TClass *onfile_class=0) const
void UnregisterAddressInRepository(const char *where, void *location, const TClass *what) const
ObjectPtr NewObjectArray(Long_t nElements, ENewType defConstructor=kClassNew) const
Return a pointer to a newly allocated array of objects of this class.
void(* ResetAfterMergeFunc_t)(void *, TFileMergeInfo *)
void SetDirectoryAutoAdd(ROOT::DirAutoAdd_t dirAutoAddFunc)
Install a new wrapper around the directory auto add function.
static void RemoveClass(TClass *cl)
static: Remove a class from the list and map of classes
TList * GetListOfAllPublicDataMembers(Bool_t load=kTRUE)
Returns a list of all public data members of this class and its base classes.
UInt_t GetInstanceCount() const
TClass *(* IsAGlobalFunc_t)(const TClass *, const void *obj)
Int_t Size() const
Return size of object of this class.
static void StreamerTObjectEmulated(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
Case of TObjects when we do not have the library defining the class.
TRealData * GetRealData(const char *name) const
Return pointer to TRealData element with name "name".
void MakeCustomMenuList()
Makes a customizable version of the popup menu list, i.e.
TClass * GetActualClass(const void *object) const
Return a pointer the the real class of the object.
void SetDestructor(ROOT::DesFunc_t destructorFunc)
Install a new wrapper around the destructor.
TVirtualStreamerInfo * FindStreamerInfoAbstractEmulated(UInt_t checksum) const
For the case where the requestor class is emulated and this class is abstract, returns a pointer to t...
void(* DelFunc_t)(void *)
TVirtualCollectionProxy * fCollectionProxy
static void StreamerDefault(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
Default streaming in cases where either we have no way to know what to do or if Property() has not ye...
Long_t Property() const
Returns the properties of the TClass as a bit field stored as a Long_t value.
void GetMissingDictionaries(THashTable &result, bool recurse=false)
Get the classes that have a missing dictionary starting from this one.
std::atomic_flag fSpinLock
virtual ~TClass()
TClass dtor. Deletes all list that might have been created.
void SetStreamerImpl()
Internal routine to set fStreamerImpl based on the value of fStreamerType.
std::unordered_set< std::string > fClassNamesSet
TListOfFunctions * GetMethodList()
Return (create an empty one if needed) the list of functions.
void CalculateStreamerOffset() const
Calculate the offset between an object of this class to its base class TObject.
Bool_t HasDeclName(const char *name) const
Bool_t CanIgnoreTObjectStreamer()
void MoveAddressInRepository(const char *where, void *oldadd, void *newadd, const TClass *what) const
TClass *const * GetPersistentRef() const
Bool_t HasInterpreterInfoInMemory() const
std::multimap< void *, Version_t > RepoCont_t
bool IsClassStructOrUnion() const
void Dump() const
Dump contents of object on stdout.
ROOT::ResetAfterMergeFunc_t GetResetAfterMerge() const
Return the wrapper around Merge.
ROOT::NewArrFunc_t fNewArray
TList * GetListOfFunctionTemplates(Bool_t load=kTRUE)
Return TListOfFunctionTemplates for a class.
TVirtualRefProxy * GetReferenceProxy() const
static TClass * LoadClass(const char *requestedname, Bool_t silent)
Helper function used by TClass::GetClass().
static void AddClass(TClass *cl)
static: Add a class to the list and map of classes.
TClass & operator=(const TClass &)=delete
Bool_t HasDefaultConstructor(Bool_t testio=kFALSE) const
Return true if we have access to a constructor usable for I/O.
Long_t ClassProperty() const
Return the C++ property of this class, eg.
Long_t fClassProperty
Property See TClass::Property() for details.
Each class (see TClass) has a linked list of its base class(es).
Int_t GetNdata()
Return the number of data members of this class Note that in case the list of data members is not yet...
void RegisterStreamerInfo(TVirtualStreamerInfo *info)
Register the StreamerInfo in the given slot, change the State of the TClass as appropriate.
Bool_t IsLoaded() const
Return true if the shared library of this class is currently in the a process's memory.
void ResetClassInfo()
Make sure that the current ClassInfo is up to date.
void GetMissingDictionariesForBaseClasses(TCollection &result, TCollection &visited, bool recurse)
Verify the base classes always.
All ROOT classes may have RTTI (run time type identification) support added.
This class implements a mutex interface.
Long_t GetDataMemberOffset(const char *membername) const
return offset for member name.
void ForceReload(TClass *oldcl)
we found at least one equivalent.
Bool_t CanSplitBaseAllow()
Pointer to the function implementing streaming for this class.
Version_t GetClassVersion() const
void *(* NewArrFunc_t)(Long_t size, void *arena)
TVirtualStreamerInfo * FindConversionStreamerInfo(const char *onfile_classname, UInt_t checksum) const
Return a Conversion StreamerInfo from the class 'classname' for the layout represented by 'checksum' ...
static TClass * GetClass(Bool_t load, Bool_t silent)
TClass * GetBaseClass(const char *classname)
Return pointer to the base class "classname".
Int_t WriteBuffer(TBuffer &b, void *pointer, const char *info="")
Function called by the Streamer functions to serialize object at p to buffer b.
TVirtualStreamerInfo * GetStreamerInfo(Int_t version=0, Bool_t isTransient=kFALSE) const
returns a pointer to the TVirtualStreamerInfo object for version If the object does not exist,...
Bool_t IsVersioned() const
Short_t GetDeclFileLine() const
TDeclNameRegistry(Int_t verbLevel=0)
TDeclNameRegistry class constructor.
TList * GetListOfEnums(Bool_t load=kTRUE)
Return a list containing the TEnums of a class.
Buffer base class used for serializing objects.
void SetClassVersion(Version_t version)
Private function.
std::atomic< TVirtualStreamerInfo * > fCurrentInfo
Current 'state' of the class (Emulated,Interpreted,Loaded)
const char * fDeclFileName
TClassStreamer * fStreamer
const std::type_info * GetTypeInfo() const
This class defines an interface to the cling C++ interpreter.
TFunctionTemplate * GetFunctionTemplate(const char *name)
static TClass * LoadClassDefault(const char *requestedname, Bool_t silent)
Helper function used by TClass::GetClass().
const ROOT::Detail::TSchemaRuleSet * GetSchemaRules() const
Return the set of the schema rules if any.
static void RemoveClassDeclId(TDictionary::DeclId_t id)
void SetMemberStreamer(const char *name, MemberStreamerFunc_t strm)
Install a new member streamer (p will be copied).
RepoCont_t fObjectVersionRepository
Bool_t HasInterpreterInfo() const
void AddImplFile(const char *filename, int line)
ROOT::DelArrFunc_t GetDeleteArray() const
Return the wrapper around delete [] ThiObject.
UInt_t GetCheckSum(ECheckSum code=kCurrentCheckSum) const
Call GetCheckSum with validity check.
std::atomic< UInt_t > fCheckSum
void GetMenuItems(TList *listitems)
Returns list of methods accessible by context menu.
TVirtualStreamerInfo * GetAllocator() const
static TClass * Load(TBuffer &b)
Load class description from I/O buffer and return class object.
View implementing the TList interface and giving access all the TFunction describing public methods i...
void SetNew(ROOT::NewFunc_t newFunc)
Install a new wrapper around 'new'.
TList * GetListOfMethods(Bool_t load=kTRUE)
Return list containing the TMethods of a class.
void ResetMenuList()
Resets the menu list to it's standard value.
Abstract Interface class describing Streamer information for one class.
void SetGlobalIsA(IsAGlobalFunc_t)
This function installs a global IsA function for this class.
void SetMerge(ROOT::MergeFunc_t mergeFunc)
Install a new wrapper around 'Merge'.
void SetCurrentStreamerInfo(TVirtualStreamerInfo *info)
Set pointer to current TVirtualStreamerInfo.
std::atomic< Bool_t > fCanLoadClassInfo
Whether info was loaded from a root pcm.
Bool_t HasLocalHashMember() const
Returns true if this class has an definition and/or overload of the member function Hash.
TDataMember * GetDataMember(const char *datamember) const
Return pointer to datamember object with name "datamember".
void(* DirAutoAdd_t)(void *, TDirectory *)
TVirtualStreamerInfo * FindStreamerInfo(TObjArray *arr, UInt_t checksum) const
Find the TVirtualStreamerInfo in the StreamerInfos corresponding to checksum.
TMethod * GetClassMethodWithPrototype(const char *name, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch)
Find the method with a given prototype.
void Draw(Option_t *option="")
Draw detailed class inheritance structure.
void AdoptMemberStreamer(const char *name, TMemberStreamer *strm)
Adopt the TMemberStreamer pointer to by p and use it to Stream non basic member name.
static void StreamerTObjectInitialized(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
Case of TObjects when fIsOffsetStreamerSet is known to have been set.
void(* ClassStreamerFunc_t)(TBuffer &, void *)
Int_t fStreamerType
saved info to call Streamer
static void ConvStreamerInstrumented(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
Case of instrumented class with a library.
void SetImplFileName(const char *implFileName)
ROOT::DelFunc_t GetDelete() const
Return the wrapper around delete ThiObject.
void GetMissingDictionariesWithRecursionCheck(TCollection &result, TCollection &visited, bool recurse)
From the second level of recursion onwards it is different state check.
ClassStreamerFunc_t GetStreamerFunc() const
Get a wrapper/accessor function around this class custom streamer (member function).
void Store(TBuffer &b) const
Store class description on I/O buffer.
void BuildEmulatedRealData(const char *name, Long_t offset, TClass *cl, Bool_t isTransient=kFALSE)
Build the list of real data for an emulated class.
std::atomic< UChar_t > fRuntimeProperties
static Bool_t HasNoInfoOrEmuOrFwdDeclaredDecl(const char *)
ROOT::TMapDeclIdToTClass DeclIdMap_t
void CopyCollectionProxy(const TVirtualCollectionProxy &)
Copy the argument.
Short_t GetImplFileLine() const
std::atomic< TVirtualStreamerInfo * > fLastReadInfo
cached current streamer info.
void SetClassSize(Int_t sizof)
static Int_t AutoBrowse(TObject *obj, TBrowser *browser)
Browse external object inherited from TObject.
const char * GetContextMenuTitle() const
Bool_t MatchLegacyCheckSum(UInt_t checksum) const
Return true if the checksum passed as argument is one of the checksum value produced by the older che...
TClass * GetClassHelper(Bool_t, Bool_t, std::true_type)
Persistent version of a TClass.
TMethod * GetMethodWithPrototype(const char *method, const char *proto, Bool_t objectIsConst=kFALSE, ROOT::EFunctionMatchMode mode=ROOT::kConversionMatch)
Find the method with a given prototype.
void DeleteArray(void *ary, Bool_t dtorOnly=kFALSE)
Explicitly call operator delete[] for an array.
TList * CreateListOfDataMembers(std::atomic< TListOfDataMembers * > &data, TDictionary::EMemberSelection selection, bool load)
Create the list containing the TDataMembers (of actual data members or members pulled in through usin...
void SetCollectionProxy(const ROOT::Detail::TCollectionProxyInfo &)
Create the collection proxy object (and the streamer object) from using the information in the TColle...
Bool_t HasConsistentHashMember()
Return 'true' if we can guarantee that if this class (or any class in this class inheritance hierarch...
Long64_t(* MergeFunc_t)(void *, TCollection *, TFileMergeInfo *)
void(* DelArrFunc_t)(void *)
void ReplaceWith(TClass *newcl) const
void AdoptSchemaRules(ROOT::Detail::TSchemaRuleSet *rules)
Adopt a new set of Data Model Evolution rules.
ObjectPtr NewObject(ENewType defConstructor=kClassNew, Bool_t quiet=kFALSE) const
char * EscapeChars(const char *text) const
Introduce an escape character (@) in front of a special chars.
static void StreamerStreamerInfo(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
Case of where we should directly use the StreamerInfo.
ROOT::ESTLType GetCollectionType() const
Return the 'type' of the STL the TClass is representing.
A collection of TDataMember objects designed for fast access given a DeclId_t and for keep track of T...
void SetResetAfterMerge(ROOT::ResetAfterMergeFunc_t resetFunc)
Install a new wrapper around 'ResetAfterMerge'.
void SetRuntimeProperties()
Internal routine to set calculate the class properties that can only be known at run-time,...
Bool_t InheritsFrom(const char *cl) const
Return kTRUE if this class inherits from a class with name "classname".
void AdoptStreamer(TClassStreamer *strm)
Adopt a TClassStreamer object.
Int_t ReadBuffer(TBuffer &b, void *pointer, Int_t version, UInt_t start, UInt_t count)
Function called by the Streamer functions to deserialize information from buffer b into object at p.
TDeclNameRegistry & fNoInfoOrEmuOrFwdDeclNameRegistry
ERuntimeProperties
Indicates whether GetClassVersion has been called.
ROOT::MergeFunc_t fMerge
saved info to call a IsA member function
void ResetCaches()
To clean out all caches.
TObjArray * fStreamerInfo
THashTable implements a hash table to store TObject's.
std::atomic< TClass ** > fPersistentRef
Describe Streamer information for one class version.
Long_t fOffsetStreamer
Properties that can only be evaluated at run-time.
ShowMembersFunc_t fShowMembers
void * New(ENewType defConstructor=kClassNew, Bool_t quiet=kFALSE) const
Return a pointer to a newly allocated object of this class.
Bool_t IsForeign() const
Return kTRUE is the class is Foreign (the class does not have a Streamer method).
TList * GetListOfBases()
Return list containing the TBaseClass(es) of a class.
Int_t GetNmethods()
Return the number of methods of this class Note that in case the list of methods is not yet created,...
TList * GetListOfRealData() const
ROOT::DelArrFunc_t fDeleteArray
TVirtualStreamerInfo * GetConversionStreamerInfo(const char *onfile_classname, Int_t version) const
Return a Conversion StreamerInfo from the class 'classname' for version number 'version' to this clas...
std::atomic< TListOfDataMembers * > fUsingData
TMethod * GetMethod(const char *method, const char *params, Bool_t objectIsConst=kFALSE)
Find the best method (if there is one) matching the parameters.
friend bool operator&(UChar_t l, ERuntimeProperties r)
TMethod * FindClassOrBaseMethodWithId(DeclId_t faddr)
Find a method with decl id in this class or its bases.
ClassConvStreamerFunc_t GetConvStreamerFunc() const
Get a wrapper/accessor function around this class custom conversion streamer (member function).
Each ROOT class (see TClass) has a linked list of methods.
std::atomic< Long_t > fProperty
ClassStreamerFunc_t fStreamerFunc
std::atomic< TMethodCall * > fIsAMethod
void RemoveStreamerInfo(Int_t slot)
Remove and delete the StreamerInfo in the given slot.
TObject * Clone(const char *newname="") const
Create a Clone of this TClass object using a different name but using the same 'dictionary'.
const char * GetDeclFileName() const
Return name of the file containing the declaration of this class.
Bool_t HasDataMemberInfo() const
std::atomic< TListOfDataMembers * > fData
Int_t GetClassSize() const
void SetDelete(ROOT::DelFunc_t deleteFunc)
Install a new wrapper around 'delete'.
const TObjArray * GetStreamerInfos() const
ROOT::DirAutoAdd_t fDirAutoAdd
Bool_t CanSplit() const
Return true if the data member of this TClass can be saved separately.
void SetConvStreamerFunc(ClassConvStreamerFunc_t strm)
Set a wrapper/accessor function around this class custom conversion streamer.
TVirtualStreamerInfo * DetermineCurrentStreamerInfo()
Determine and set pointer to current TVirtualStreamerInfo.
void * NewArray(Long_t nElements, ENewType defConstructor=kClassNew) const
Return a pointer to a newly allocated array of objects of this class.
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.
void AdoptReferenceProxy(TVirtualRefProxy *proxy)
Adopt the Reference proxy pointer to indicate that this class represents a reference.
TList * GetListOfUsingDataMembers(Bool_t load=kTRUE)
Return list containing the TDataMembers of using declarations of a class.
ClassInfo_t * GetClassInfo() const
TList * GetMenuList() const
Return the list of menu items associated with the class.
const char * GetImplFileName() const
void(* ShowMembersFunc_t)(const void *obj, TMemberInspector &R__insp, Bool_t isTransient)
~InsertTClassInRegistryRAII()
TCollection * GetListOfMethodOverloads(const char *name) const
Return the collection of functions named "name".
virtual void PostLoadCheck()
Do the initialization that can only be done after the CINT dictionary has been fully populated and ca...
@ kHasCustomStreamerMember
TClass * CreateClass(const char *cname, Version_t id, const std::type_info &info, TVirtualIsAProxy *isa, const char *dfil, const char *ifil, Int_t dl, Int_t il)
Global function called by a class' static Dictionary() method (see the ClassDef macro).
TListOfFunctionTemplates * fFuncTemplate
TString fContextMenuTitle
Bool_t IsFolder() const
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
static std::atomic< Int_t > fgClassCount
void BuildRealData(void *pointer=0, Bool_t isTransient=kFALSE)
Build a full list of persistent data members.
Bool_t IsTObject() const
Return kTRUE is the class inherits from TObject.
typedef void((*Func_t)())
ROOT::Detail::TSchemaRuleSet * fSchemaRules
Pointer to reference proxy if this class represents a reference.
static DictFuncPtr_t GetDict(const char *cname)
Return a pointer to the dictionary loading function generated by rootcint.
This class defines an abstract interface that must be implemented by all classes that contain diction...
std::atomic< Bool_t > fHasRootPcmInfo
C++ Property of the class (is abstract, has virtual table, etc.)
void SetDeclFile(const char *name, int line)
ConvSIMap_t fConversionStreamerInfo
std::atomic< std::map< std::string, TObjArray * > * > ConvSIMap_t
Persistent address of pointer to this TClass object and its successors.
virtual void Dump() const
Dump contents of object on stdout.
void AddQualifiedName(const char *name)
Extract this part of the name.
const char * fImplFileName
TVirtualStreamerInfo * GetCurrentStreamerInfo()
TClassStreamer * GetStreamer() const
Return the Streamer Class allowing streaming (if any).
TVirtualStreamerInfo * GetLastReadInfo() const
void AddInstance(Bool_t heap=kFALSE)
std::atomic< TListOfEnums * > fEnums
A collection of TEnum objects designed for fast access given a DeclId_t and for keep track of TEnum t...
std::atomic< Bool_t > fIsOffsetStreamerSet
Indicates whether the ClassInfo is supposed to be available.
void SetContextMenuTitle(const char *title)
Change (i.e. set) the title of the TNamed.
TViewPubFunctions * fAllPubMethod
void GetMissingDictionariesForMembers(TCollection &result, TCollection &visited, bool recurse)
Verify the Data Members.
Bool_t IsStartingWithTObject() const
Returns true if this class inherits from TObject and if the start of the TObject parts is at the very...
static THashTable * fgClassTypedefHash
void SetUnloaded()
Call this method to indicate that the shared library containing this class's code has been removed (u...
void LoadClassInfo() const
Try to load the ClassInfo if available.
void ResetInstanceCount()
void * DynamicCast(const TClass *base, void *obj, Bool_t up=kTRUE)
Cast obj of this class type up to baseclass cl if up is true.
void SetLastReadInfo(TVirtualStreamerInfo *info)
void SetDeleteArray(ROOT::DelArrFunc_t deleteArrayFunc)
Install a new wrapper around 'delete []'.
ROOT::DirAutoAdd_t GetDirectoryAutoAdd() const
Return the wrapper around the directory auto add function.
TList * GetListOfDataMembers(Bool_t load=kTRUE)
Return list containing the TDataMembers of a class.
ROOT::NewFunc_t GetNew() const
Return the wrapper around new ThisClass().
The TRealData class manages the effective list of all data members for a given class.
TClass instances represent classes, structs and namespaces in the ROOT type system.
static Bool_t HasDictionarySelection(const char *clname)
Check whether a class has a dictionary or ROOT can load one.
TVirtualStreamerInfo * GetStreamerInfoImpl(Int_t version, Bool_t silent) const
void SetNewArray(ROOT::NewArrFunc_t newArrayFunc)
Install a new wrapper around 'new []'.
void Destructor(void *obj, Bool_t dtorOnly=kFALSE)
Explicitly call destructor for object.
void IgnoreTObjectStreamer(Bool_t ignore=kTRUE)
When the class kIgnoreTObjectStreamer bit is set, the automatically generated Streamer will not call ...
TVirtualIsAProxy * GetIsAProxy() const
Return the proxy implementing the IsA functionality.
View implementing the TList interface and giving access all the TDictionary describing public data me...
Mother of all ROOT objects.
void RegisterAddressInRepository(const char *where, void *location, const TClass *what) const
#define ClassDef(name, id)
ObjectPtr(void *ptr=nullptr, TVirtualStreamerInfo *allocator=nullptr)
EMemberSelection
Kinds of members to include in lists.
Int_t GetBaseClassOffset(const TClass *toBase, void *address=0, bool isDerivedObject=true)
void(* ClassConvStreamerFunc_t)(TBuffer &, void *, const TClass *)
Int_t GetBaseClassOffsetRecurse(const TClass *toBase)
Return data member offset to the base class "cl".
InsertTClassInRegistryRAII(TClass::EState &state, const char *name, TDeclNameRegistry &emuRegistry)
static TClass * LoadClassCustom(const char *requestedname, Bool_t silent)
Helper function used by TClass::GetClass().
void *(* NewFunc_t)(void *)
void SetCanSplit(Int_t splitmode)
Set the splitability of this class:
static IdMap_t * GetIdMap()
std::atomic< TListOfFunctions * > fMethod
void ResetClassVersion(TClass *, const char *, Short_t)
Global function to update the version number.
static DeclIdMap_t * GetDeclIdMap()
ROOT::ResetAfterMergeFunc_t fResetAfterMerge
static ENewType IsCallingNew()
Static method returning the defConstructor flag passed to TClass::New().
Method or function calling interface.
Collection abstract base class.
Bool_t IsSyntheticPair() const
ROOT::MergeFunc_t GetMerge() const
Return the wrapper around Merge.
static Int_t ReadRules()
Read the class.rules files from the default location:.
TClass *(* DictFuncPtr_t)()
TMethod * GetClassMethod(Long_t faddr)
Look for a method in this class that has the interface function address faddr.
ROOT::DesFunc_t fDestructor
void Init(const char *name, Version_t cversion, const std::type_info *info, TVirtualIsAProxy *isa, const char *dfil, const char *ifil, Int_t dl, Int_t il, ClassInfo_t *classInfo, Bool_t silent)
Initialize a TClass object.
void Move(void *arenaFrom, void *arenaTo) const
Register the fact that an object was moved from the memory location 'arenaFrom' to the memory locatio...
TVirtualStreamerInfo * GetStreamerInfoAbstractEmulated(Int_t version=0) const
For the case where the requestor class is emulated and this class is abstract, returns a pointer to t...
TClass(const TClass &tc)=delete
Bool_t CallShowMembers(const void *obj, TMemberInspector &insp, Bool_t isTransient=kFALSE) const
Call ShowMembers() on the obj of this class type, passing insp and parent.
static void AddClassToDeclIdMap(TDictionary::DeclId_t id, TClass *cl)
static: Add a TClass* to the map of classes.
ROOT::DesFunc_t GetDestructor() const
Return the wrapper around the destructor.
void InterpretedShowMembers(void *obj, TMemberInspector &insp, Bool_t isTransient)
Do a ShowMembers() traversal of all members and base classes' members using the reflection informatio...
static Bool_t AddRule(const char *rule)
Add a schema evolution customization rule.
void SetStreamerFunc(ClassStreamerFunc_t strm)
Set a wrapper/accessor function around this class custom streamer.
TVirtualMutex * fOVRMutex
std::atomic< Bool_t > fVersionUsed
saved remember if fOffsetStreamer has been set.
EState fState
cached of the streaming method to use
ShowMembersFunc_t GetShowMembersWrapper() const
std::atomic< TList * > fBase
TVirtualStreamerInfo * SetStreamerInfo(Int_t version, const char *info="")
Info is a string describing the names and types of attributes written by the class Streamer function.
static void StreamerExternal(const TClass *pThis, void *object, TBuffer &b, const TClass *onfile_class)
There is special streamer for the class.
IsAGlobalFunc_t fGlobalIsA
pointer to the class's IsA proxy.
std::atomic< StreamerImpl_t > fStreamerImpl
Bool_t fIsSyntheticPair
Indicates whether this class can be split or not. Values are -1, 0, 1, 2.
const std::type_info * fTypeInfo
static TDeclNameRegistry fNoInfoOrEmuOrFwdDeclNameRegistry
void ls(Option_t *opt="") const
The ls function lists the contents of a class on stdout.
TVirtualStreamerInfo * fAllocator
ROOT::TMapTypeToTClass IdMap_t
const char * GetSharedLibs()
Get the list of shared libraries containing the code for class cls.
Dictionary for function template This class describes one single function template.
Bool_t HasDictionary() const
Check whether a class has a dictionary or not.