12#ifndef ROOT_TTreeProxyGenerator
13#define ROOT_TTreeProxyGenerator
47 const char *option,
UInt_t maxUnrolling);
49 const char *fileprefix,
const char *option,
UInt_t maxUnrolling);
Base class for code generators like TTreeProxyGenerator and TTreeReaderGenerator.
void AddMissingClassAsEnum(const char *clname, Bool_t isscope)
Generate an enum for a given type if it is not known in the list of class unless the type itself a te...
void AnalyzeTree(TTree *tree)
Analyze a TTree and its (potential) friends.
TBranchProxyClassDescriptor * AddClass(TBranchProxyClassDescriptor *desc)
Add a Class Descriptor.
void AddDescriptor(TBranchProxyDescriptor *desc)
Add a branch descriptor.
void AddPragma(const char *pragma_text)
Add a forward declaration request.
UInt_t AnalyzeOldLeaf(TLeaf *leaf, UInt_t level, TBranchProxyClassDescriptor *topdesc)
Analyze the leaf and populate the `TTreeProxyGenerator or the topdesc with its findings.
Bool_t NeedToEmulate(TClass *cl, UInt_t level)
Return true if we should create a nested class representing this class.
UInt_t AnalyzeOldBranch(TBranch *branch, UInt_t level, TBranchProxyClassDescriptor *desc)
Analyze the branch and populate the TTreeProxyGenerator or the topdesc with its findings.
void AnalyzeElement(TBranch *branch, TStreamerElement *element, UInt_t level, TBranchProxyClassDescriptor *desc, const char *path)
Analyze the element and populate the TTreeProxyGenerator or the topdesc with its findings.
void AddFriend(TFriendProxyDescriptor *desc)
Add Friend descriptor.
void CheckForMissingClass(const char *clname)
Check if the template parameter refers to an enum and/or a missing class (we can't tell those 2 apart...
const char * GetFileName()
void ParseOptions()
Parse the options string.
TList * fCurrentListOfTopProxies
void AddForward(TClass *cl)
Add a forward declaration request.
UInt_t AnalyzeBranches(UInt_t level, TBranchProxyClassDescriptor *topdesc, TBranchElement *branch, TVirtualStreamerInfo *info=nullptr)
Analyze the sub-branch and populate the TTreeProxyGenerator or the topdesc with its findings.
void WriteProxy()
Check whether the file exist and do something useful if it does.
UInt_t fMaxDatamemberType
A Branch for the case of an object.
Hold the processed information about a TClass used in a TBranch while TTreeProxyGenerator is parsing ...
/Hold the processed information about a TBranch while /TTreeProxyGenerator is parsing the TTree infor...
A TTree is a list of TBranches.
TClass instances represent classes, structs and namespaces in the ROOT type system.
Hold the processed information about a Friend TTree while TTreeProxyGenerator is parsing the TTree in...
A TLeaf describes individual elements of a TBranch See TBranch structure in TTree.
A TTree represents a columnar dataset.
Abstract Interface class describing Streamer information for one class.
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.