Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
ROOT::Internal::TTreeProxyGenerator Class Reference

Definition at line 28 of file TTreeProxyGenerator.h.

Public Types

enum  EContainer { kNone , kClones , kSTL }
enum  EOption { kNoOption , kNoHist }

Public Member Functions

 TTreeProxyGenerator (TTree *tree, const char *script, const char *cutscript, const char *fileprefix, const char *option, UInt_t maxUnrolling)
 Constructor.
 TTreeProxyGenerator (TTree *tree, const char *script, const char *fileprefix, const char *option, UInt_t maxUnrolling)
 Constructor.
TBranchProxyClassDescriptorAddClass (TBranchProxyClassDescriptor *desc)
 Add a Class Descriptor.
void AddDescriptor (TBranchProxyDescriptor *desc)
 Add a branch descriptor.
void AddForward (const char *classname)
 Add a forward declaration request.
void AddForward (TClass *cl)
 Add a forward declaration request.
void AddFriend (TFriendProxyDescriptor *desc)
 Add Friend descriptor.
void AddHeader (const char *classname)
 Add a header inclusion request.
void AddHeader (TClass *cl)
 Add a header inclusion request.
void AddMissingClassAsEnum (const char *clname, bool isscope)
 Generate an enum for a given type if it is not known in the list of class unless the type itself a template.
void AddPragma (const char *pragma_text)
 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.
UInt_t AnalyzeBranches (UInt_t level, TBranchProxyClassDescriptor *topdesc, TIter &branches, TVirtualStreamerInfo *info)
 Analyze the list of sub branches of a TBranchElement by looping over the streamer elements and create the appropriate class proxies.
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.
UInt_t AnalyzeOldBranch (TBranch *branch, UInt_t level, TBranchProxyClassDescriptor *desc)
 Analyze the branch and populate the TTreeProxyGenerator or the topdesc with its findings.
UInt_t AnalyzeOldLeaf (TLeaf *leaf, UInt_t level, TBranchProxyClassDescriptor *topdesc)
void AnalyzeTree (TTree *tree)
 Analyze a TTree and its (potential) friends.
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 unless the name as template syntax).
TVirtualStreamerInfoGetBaseClass (TStreamerElement *element)
 Check if element is a base class and if yes, return the base class.
TString GetContainedClassName (TBranchElement *branch, TStreamerElement *element, bool ispointer)
 Get name of class inside a container.
const char * GetFileName ()
TVirtualStreamerInfoGetStreamerInfo (TBranch *branch, TIter current, TClass *cl)
 Return the correct TStreamerInfo of class 'cl' in the list of branches (current) [Assuming these branches correspond to a flattened version of the class.
bool NeedToEmulate (TClass *cl, UInt_t level)
 Return true if we should create a nested class representing this class.
void ParseOptions ()
 Parse the options string.
void WriteProxy ()
 Check whether the file exist and do something useful if it does.

Public Attributes

TListfCurrentListOfTopProxies
 !
TString fCutScript
TString fHeaderFileName
TList fListOfClasses
TList fListOfForwards
TList fListOfFriends
TList fListOfHeaders
 List of included headers.
TList fListOfPragmas
TList fListOfTopProxies
UInt_t fMaxDatamemberType
UInt_t fMaxUnrolling
UInt_t fOptions
TString fOptionStr
 User options as a string.
TString fPrefix
TString fScript
TTreefTree
 Pointer to the tree.

#include <TTreeProxyGenerator.h>

Inheritance diagram for ROOT::Internal::TTreeProxyGenerator:
ROOT::Internal::TTreeGeneratorBase

Member Enumeration Documentation

◆ EContainer

Enumerator
kNone 
kClones 
kSTL 

Definition at line 31 of file TTreeProxyGenerator.h.

◆ EOption

Enumerator
kNoOption 
kNoHist 

Definition at line 32 of file TTreeProxyGenerator.h.

Constructor & Destructor Documentation

◆ TTreeProxyGenerator() [1/2]

ROOT::Internal::TTreeProxyGenerator::TTreeProxyGenerator ( TTree * tree,
const char * script,
const char * fileprefix,
const char * option,
UInt_t maxUnrolling )

Constructor.

Definition at line 211 of file TTreeProxyGenerator.cxx.

◆ TTreeProxyGenerator() [2/2]

ROOT::Internal::TTreeProxyGenerator::TTreeProxyGenerator ( TTree * tree,
const char * script,
const char * cutscript,
const char * fileprefix,
const char * option,
UInt_t maxUnrolling )

Constructor.

Definition at line 235 of file TTreeProxyGenerator.cxx.

Member Function Documentation

◆ AddClass()

TBranchProxyClassDescriptor * ROOT::Internal::TTreeProxyGenerator::AddClass ( TBranchProxyClassDescriptor * desc)

Add a Class Descriptor.

Definition at line 268 of file TTreeProxyGenerator.cxx.

◆ AddDescriptor()

void ROOT::Internal::TTreeProxyGenerator::AddDescriptor ( TBranchProxyDescriptor * desc)

Add a branch descriptor.

Definition at line 392 of file TTreeProxyGenerator.cxx.

◆ AddForward() [1/2]

void ROOT::Internal::TTreeProxyGenerator::AddForward ( const char * classname)

Add a forward declaration request.

Definition at line 347 of file TTreeProxyGenerator.cxx.

◆ AddForward() [2/2]

void ROOT::Internal::TTreeProxyGenerator::AddForward ( TClass * cl)

Add a forward declaration request.

Definition at line 368 of file TTreeProxyGenerator.cxx.

◆ AddFriend()

void ROOT::Internal::TTreeProxyGenerator::AddFriend ( TFriendProxyDescriptor * desc)

Add Friend descriptor.

Definition at line 298 of file TTreeProxyGenerator.cxx.

◆ AddHeader() [1/2]

void ROOT::Internal::TTreeGeneratorBase::AddHeader ( const char * classname)
inherited

Add a header inclusion request.

If the header is already included it will not be included again.

Definition at line 153 of file TTreeGeneratorBase.cxx.

◆ AddHeader() [2/2]

void ROOT::Internal::TTreeGeneratorBase::AddHeader ( TClass * cl)
inherited

Add a header inclusion request.

If the header is already included it will not be included again.

Definition at line 43 of file TTreeGeneratorBase.cxx.

◆ AddMissingClassAsEnum()

void ROOT::Internal::TTreeProxyGenerator::AddMissingClassAsEnum ( const char * clname,
bool isscope )

Generate an enum for a given type if it is not known in the list of class unless the type itself a template.

Definition at line 413 of file TTreeProxyGenerator.cxx.

◆ AddPragma()

void ROOT::Internal::TTreeProxyGenerator::AddPragma ( const char * pragma_text)

Add a forward declaration request.

Definition at line 376 of file TTreeProxyGenerator.cxx.

◆ AnalyzeBranches() [1/2]

UInt_t ROOT::Internal::TTreeProxyGenerator::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.

Definition at line 483 of file TTreeProxyGenerator.cxx.

◆ AnalyzeBranches() [2/2]

UInt_t ROOT::Internal::TTreeProxyGenerator::AnalyzeBranches ( UInt_t level,
TBranchProxyClassDescriptor * topdesc,
TIter & branches,
TVirtualStreamerInfo * info )

Analyze the list of sub branches of a TBranchElement by looping over the streamer elements and create the appropriate class proxies.

Definition at line 497 of file TTreeProxyGenerator.cxx.

◆ AnalyzeElement()

void ROOT::Internal::TTreeProxyGenerator::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.

Definition at line 1271 of file TTreeProxyGenerator.cxx.

◆ AnalyzeOldBranch()

UInt_t ROOT::Internal::TTreeProxyGenerator::AnalyzeOldBranch ( TBranch * branch,
UInt_t level,
TBranchProxyClassDescriptor * topdesc )

Analyze the branch and populate the TTreeProxyGenerator or the topdesc with its findings.

Sometimes several branch of the mom are also analyzed, the number of such branches is returned (this happens in the case of embedded objects inside an object inside a clones array split more than one level.

Definition at line 1054 of file TTreeProxyGenerator.cxx.

◆ AnalyzeOldLeaf()

UInt_t ROOT::Internal::TTreeProxyGenerator::AnalyzeOldLeaf ( TLeaf * leaf,
UInt_t level,
TBranchProxyClassDescriptor * topdesc )

◆ AnalyzeTree()

void ROOT::Internal::TTreeProxyGenerator::AnalyzeTree ( TTree * tree)

Analyze a TTree and its (potential) friends.

Definition at line 1108 of file TTreeProxyGenerator.cxx.

◆ CheckForMissingClass()

void ROOT::Internal::TTreeProxyGenerator::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 unless the name as template syntax).

Definition at line 438 of file TTreeProxyGenerator.cxx.

◆ GetBaseClass()

TVirtualStreamerInfo * ROOT::Internal::TTreeGeneratorBase::GetBaseClass ( TStreamerElement * element)
inherited

Check if element is a base class and if yes, return the base class.

Definition at line 206 of file TTreeGeneratorBase.cxx.

◆ GetContainedClassName()

TString ROOT::Internal::TTreeGeneratorBase::GetContainedClassName ( TBranchElement * branch,
TStreamerElement * element,
bool ispointer )
inherited

Get name of class inside a container.

Definition at line 161 of file TTreeGeneratorBase.cxx.

◆ GetFileName()

const char * ROOT::Internal::TTreeProxyGenerator::GetFileName ( )
inline

Definition at line 72 of file TTreeProxyGenerator.h.

◆ GetStreamerInfo()

TVirtualStreamerInfo * ROOT::Internal::TTreeGeneratorBase::GetStreamerInfo ( TBranch * branch,
TIter current,
TClass * cl )
inherited

Return the correct TStreamerInfo of class 'cl' in the list of branches (current) [Assuming these branches correspond to a flattened version of the class.

]

Definition at line 221 of file TTreeGeneratorBase.cxx.

◆ NeedToEmulate()

bool ROOT::Internal::TTreeProxyGenerator::NeedToEmulate ( TClass * cl,
UInt_t level )

Return true if we should create a nested class representing this class.

Definition at line 259 of file TTreeProxyGenerator.cxx.

◆ ParseOptions()

void ROOT::Internal::TTreeProxyGenerator::ParseOptions ( )

Parse the options string.

Definition at line 1546 of file TTreeProxyGenerator.cxx.

◆ WriteProxy()

void ROOT::Internal::TTreeProxyGenerator::WriteProxy ( )

Check whether the file exist and do something useful if it does.

Definition at line 1597 of file TTreeProxyGenerator.cxx.

Member Data Documentation

◆ fCurrentListOfTopProxies

TList* ROOT::Internal::TTreeProxyGenerator::fCurrentListOfTopProxies

!

Definition at line 44 of file TTreeProxyGenerator.h.

◆ fCutScript

TString ROOT::Internal::TTreeProxyGenerator::fCutScript

Definition at line 35 of file TTreeProxyGenerator.h.

◆ fHeaderFileName

TString ROOT::Internal::TTreeProxyGenerator::fHeaderFileName

Definition at line 37 of file TTreeProxyGenerator.h.

◆ fListOfClasses

TList ROOT::Internal::TTreeProxyGenerator::fListOfClasses

Definition at line 40 of file TTreeProxyGenerator.h.

◆ fListOfForwards

TList ROOT::Internal::TTreeProxyGenerator::fListOfForwards

Definition at line 45 of file TTreeProxyGenerator.h.

◆ fListOfFriends

TList ROOT::Internal::TTreeProxyGenerator::fListOfFriends

Definition at line 41 of file TTreeProxyGenerator.h.

◆ fListOfHeaders

TList ROOT::Internal::TTreeGeneratorBase::fListOfHeaders
inherited

List of included headers.

Definition at line 38 of file TTreeGeneratorBase.h.

◆ fListOfPragmas

TList ROOT::Internal::TTreeProxyGenerator::fListOfPragmas

Definition at line 42 of file TTreeProxyGenerator.h.

◆ fListOfTopProxies

TList ROOT::Internal::TTreeProxyGenerator::fListOfTopProxies

Definition at line 43 of file TTreeProxyGenerator.h.

◆ fMaxDatamemberType

UInt_t ROOT::Internal::TTreeProxyGenerator::fMaxDatamemberType

Definition at line 33 of file TTreeProxyGenerator.h.

◆ fMaxUnrolling

UInt_t ROOT::Internal::TTreeProxyGenerator::fMaxUnrolling

Definition at line 39 of file TTreeProxyGenerator.h.

◆ fOptions

UInt_t ROOT::Internal::TTreeProxyGenerator::fOptions

Definition at line 38 of file TTreeProxyGenerator.h.

◆ fOptionStr

TString ROOT::Internal::TTreeGeneratorBase::fOptionStr
inherited

User options as a string.

Definition at line 40 of file TTreeGeneratorBase.h.

◆ fPrefix

TString ROOT::Internal::TTreeProxyGenerator::fPrefix

Definition at line 36 of file TTreeProxyGenerator.h.

◆ fScript

TString ROOT::Internal::TTreeProxyGenerator::fScript

Definition at line 34 of file TTreeProxyGenerator.h.

◆ fTree

TTree* ROOT::Internal::TTreeGeneratorBase::fTree
inherited

Pointer to the tree.

Definition at line 39 of file TTreeGeneratorBase.h.


The documentation for this class was generated from the following files: