73 :
TTree(), fTreeOffsetLen(100), fNtrees(0), fTreeNumber(-1), fTreeOffset(nullptr), fCanDeleteRefs(
false), fTree(nullptr),
74 fFile(nullptr), fFiles(nullptr), fStatus(nullptr), fProofChain(nullptr), fGlobalRegistration(
mode == kWithGlobalRegistration)
81 gROOT->GetListOfSpecials()->Add(
this);
92 gROOT->GetListOfDataSets()->Add(
this);
96 gROOT->GetListOfCleanups()->Add(
this);
141 :
TTree(
name, title, 99, nullptr), fTreeOffsetLen(100), fNtrees(0), fTreeNumber(-1), fTreeOffset(nullptr),
142 fCanDeleteRefs(
false), fTree(nullptr), fFile(nullptr), fFiles(nullptr), fStatus(nullptr), fProofChain(nullptr),
143 fGlobalRegistration(
mode == kWithGlobalRegistration)
162 gROOT->GetListOfSpecials()->Add(
this);
163 gROOT->GetListOfDataSets()->Add(
this);
166 gROOT->GetListOfCleanups()->Add(
this);
179 gROOT->GetListOfCleanups()->Remove(
this);
207 gROOT->GetListOfSpecials()->Remove(
this);
208 gROOT->GetListOfDataSets()->Remove(
this);
221 if (!
chain)
return 0;
376 static const char *
dotr =
".root";
402 }
catch (
const std::runtime_error &) {
496 if(
name==
nullptr ||
name[0]==
'\0') {
497 Error(
"AddFile",
"No file name; no files connected");
555 pksize = tree->GetPacketSize();
576 Warning(
"AddFile",
"Adding tree with no entries from file: %s",
filename);
600 while ((o = next())) {
603 const char *
url =
nullptr;
604 if (cn ==
"TFileInfo") {
606 url = (
fi->GetCurrentUrl()) ?
fi->GetCurrentUrl()->GetUrl() :
nullptr;
608 Warning(
"AddFileInfoList",
"found TFileInfo with empty Url - ignoring");
611 }
else if (cn ==
"TUrl") {
613 }
else if (cn ==
"TObjString") {
617 Warning(
"AddFileInfoList",
"object is of type %s : expecting TFileInfo, TUrl"
618 " or TObjString - ignoring", o->
ClassName());
740 if (!
chain)
return nullptr;
757 Warning(
"AddFriend",
"Unknown TChain %s",
chain->GetName());
945 Warning(
"GetBranchStatus",
"PROOF proxy not up-to-date:"
946 " run TChain::SetProof(true, true) first");
959 Fatal(
"GetClusterIterator",
"TChain objects are not supported");
983 Warning(
"GetEntries",
"PROOF proxy not up-to-date:"
984 " run TChain::SetProof(true, true) first");
1057 if (serial < 0)
return -1;
1225 Warning(
"GetBranchStatus",
"PROOF proxy not up-to-date:"
1226 " run TChain::SetProof(true, true) first");
1261 Error(
"InPlaceClone",
"not implemented");
1298 Error(
"LoadBaskets",
"Function not yet implemented for TChain.");
1387 if (
fetree->IsUpdated()) {
1421 br->SetMakeClass(
true);
1430 br->SetAutoDelete(
true);
1545 Error(
"LoadTree",
"Cannot find tree with name %s in file %s",
element->GetName(),
element->GetTitle());
1714 if (!
element->GetCheckedType()) {
1718 br->SetMakeClass(
true);
1720 element->SetDecomposedObj(
br->GetMakeClass());
1721 element->SetCheckedType(
true);
1727 br->SetAutoDelete(
true);
1791 Error(
"Lookup",
"TFileStager instance cannot be instantiated");
1814 Error(
"Lookup",
"file %s does not exist\n",
eurl.Data());
1816 Error(
"Lookup",
"file %s cannot be read\n",
eurl.Data());
1832 Error(
"Loop",
"Function not yet implemented");
1847 fSelector->Start(
option);
1851 for (tree=0;tree<
fNtrees;tree++) {
1858 fSelector->BeginFile();
1864 fSelector->EndFile();
1867 fSelector->Finish(
option);
1918 Error(
"Merge",
"not implemented");
1927 Error(
"Merge",
"not implemented");
2083 newTree->SetAutoSave(2000000000);
2112 Error(
"Merge",
"TTree has not been cloned\n");
2127 delete newTree->GetCurrentFile();
2187 if (
url.GetOptions() && (
strlen(
url.GetOptions()) > 0))
2188 query.Form(
"?%s",
url.GetOptions());
2205 fn =
url.GetFileAndOptions();
2216 static const char *
dotr =
".root";
2225 static const char *
slash =
"/";
2247 Printf(
"******************************************************************************");
2249 Printf(
"******************************************************************************");
2253 if (tree) tree->Print(
option);
2399 out <<
" TChain *" <<
chName.Data() <<
" = new TChain(\"" <<
GetName() <<
"\");" << std::endl;
2409 out <<
" " <<
chName.Data() <<
"->AddFriend(\"" <<
frtree->GetName() <<
"\");" << std::endl;
2412 if (file &&
dynamic_cast<TFile *
>(file))
2413 out <<
" " <<
chName.Data() <<
"->AddFriend(\"" <<
frtree->GetName() <<
"\", \"" << file->
GetName()
2414 <<
"\");" << std::endl;
2423 if (
chel->GetLoadResult() == 0 &&
chel->GetEntries() != 0) {
2425 out <<
" " <<
chName.Data() <<
"->AddFile(\"" <<
chel->GetTitle() <<
"\");" << std::endl;
2427 out <<
" " <<
chName.Data() <<
"->AddFile(\"" <<
chel->GetTitle() <<
"\"," <<
chel->GetEntries() <<
");"
2496 element->SetBaddress(
nullptr);
2511 element->SetBaddress(
nullptr);
2558 branch->SetMakeClass(
true);
2561 element->SetCheckedType(
true);
2579 Error(
"SetBranchAddress",
"unknown branch -> %s", bname);
2726 if (elist->
GetN() == 0){
2745 if(
strcmp(opt,
"sync") == 0){
2747 std::string
msg{
"In 'TChain::SetEntryList': "};
2748 msg +=
"the input TEntryList doesn't have sub entry lists. Please make sure too add them through ";
2749 msg +=
"TEntryList::AddSubList";
2750 throw std::runtime_error(
msg);
2754 std::string
msg{
"In 'TChain::SetEntryList': "};
2755 msg +=
"the number of sub entry lists in the input TEntryList (";
2757 msg +=
") is not equal to the number of files in the chain (";
2758 msg += std::to_string(
ne);
2760 throw std::runtime_error(
msg);
2769 if(
strcmp(opt,
"sync") == 0){
2779 std::string
msg{
"In 'TChain::SetEntryList': "};
2780 msg +=
"the sub entry list at index ";
2781 msg += std::to_string(
ie);
2782 msg +=
" doesn't correspond to treename '";
2784 msg +=
"' and filename '";
2786 msg +=
"': it has treename '";
2788 msg +=
"' and filename '";
2791 throw std::runtime_error(
msg);
2805 Error(
"SetEntryList",
"No list found for the trees in this chain");
2817 if (
templist->GetTreeNumber() < 0){
2933 enlist->SetDirectory(
nullptr);
2943 printf(
"loading trees\n");
2974 gROOT->GetListOfCleanups()->Remove(
this);
2975 gROOT->GetListOfSpecials()->Remove(
this);
2976 gROOT->GetListOfDataSets()->Remove(
this);
2982 gROOT->GetListOfCleanups()->Add(
this);
2983 gROOT->GetListOfSpecials()->Add(
this);
2984 gROOT->GetListOfDataSets()->Add(
this);
3029 if ((
h =
gROOT->GetPluginManager()->FindHandler(
"TChain",
"proof"))) {
3030 if (
h->LoadPlugin() == -1)
3033 Error(
"SetProof",
"creation of TProofChain failed");
3075 if (
b.IsReading()) {
3079 gROOT->GetListOfCleanups()->Remove(
this);
3103 gROOT->GetListOfCleanups()->Add(
this);
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
#define R__ASSERT(e)
Checks condition e and reports a fatal error if it's false.
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void on
Option_t Option_t TPoint TPoint const char mode
R__EXTERN TVirtualMutex * gROOTMutex
void Printf(const char *fmt,...)
Formats a string in a circular formatting buffer and prints the string.
R__EXTERN TSystem * gSystem
#define R__LOCKGUARD(mutex)
#define R__WRITE_LOCKGUARD(mutex)
virtual void SaveMarkerAttributes(std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1)
Save line attributes as C++ statement(s) on output stream out.
A TTree is a list of TBranches.
Using a TBrowser one can browse all ROOT objects.
Buffer base class used for serializing objects.
A TChainElement describes a component of a TChain.
void ls(Option_t *option="") const override
List files in the chain.
A chain is a collection of files containing TTree objects.
TLeaf * FindLeaf(const char *name) override
See TTree::GetReadEntry().
Int_t SetCacheSize(Long64_t cacheSize=-1) override
Set maximum size of the file cache .
virtual void CanDeleteRefs(bool flag=true)
When closing a file during the chain processing, the file may be closed with option "R" if flag is se...
TObjArray * GetListOfBranches() override
Return a pointer to the list of branches of the current tree.
void Streamer(TBuffer &) override
Stream a class object.
Long64_t GetEntryNumber(Long64_t entry) const override
Return entry number corresponding to entry.
Double_t GetWeight() const override
Return the chain weight.
virtual void SetAutoDelete(bool autodel=true)
Set the global branch kAutoDelete bit.
bool fCanDeleteRefs
! If true, TProcessIDs are deleted when closing a file
void SetEntryList(TEntryList *elist, Option_t *opt="") override
Set the input entry list (processing the entries of the chain will then be limited to the entries in ...
Int_t fNtrees
Number of trees.
TFriendElement * AddFriend(const char *chainname, const char *dummy="") override
Add a TFriendElement to the list of friends of this chain.
void DirectoryAutoAdd(TDirectory *) override
Override the TTree::DirectoryAutoAdd behavior: we never auto add.
~TChain() override
Destructor.
Int_t LoadBaskets(Long64_t maxmemory) override
Dummy function.
TTree * GetTree() const override
void Print(Option_t *option="") const override
Print the header information of each tree in the chain.
void RecursiveRemove(TObject *obj) override
Make sure that obj (which is being deleted or will soon be) is no longer referenced by this TTree.
const char * GetAlias(const char *aliasName) const override
Returns the expanded value of the alias. Search in the friends if any.
TClass * IsA() const override
virtual void SetProof(bool on=true, bool refresh=false, bool gettreeheader=false)
Enable/Disable PROOF processing on the current default Proof (gProof).
virtual Int_t AddFile(const char *name, Long64_t nentries=TTree::kMaxEntries, const char *tname="")
Add a new file to this chain.
void Reset(Option_t *option="") override
Resets the state of this chain.
void ResetAfterMerge(TFileMergeInfo *) override
Resets the state of this chain after a merge (keep the customization but forget the data).
Long64_t * fTreeOffset
[fTreeOffsetLen] Array of variables
TBranch * FindBranch(const char *name) override
See TTree::GetReadEntry().
void ResetBranchAddresses() override
Reset the addresses of the branches.
void SavePrimitive(std::ostream &out, Option_t *option="") override
Save TChain as a C++ statements on output stream out.
void SetEventList(TEventList *evlist) override
This function transfroms the given TEventList into a TEntryList.
TObjArray * GetListOfLeaves() override
Return a pointer to the list of leaves of the current tree.
bool GetBranchStatus(const char *branchname) const override
See TTree::GetReadEntry().
TBranch * GetBranch(const char *name) override
Return pointer to the branch name in the current tree.
Int_t GetEntryWithIndex(Int_t major, Int_t minor=0) override
Return entry corresponding to major and minor number.
Long64_t Scan(const char *varexp="", const char *selection="", Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0) override
Loop on tree and print entries passing selection.
Double_t GetMaximum(const char *columname) override
Return maximum of column with name columname.
void SetWeight(Double_t w=1, Option_t *option="") override
Set chain weight.
virtual void Loop(Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0)
Loop on nentries of this chain starting at firstentry. (NOT IMPLEMENTED)
TChain * fProofChain
! chain proxy when going to be processed by PROOF
Int_t SetBranchAddress(const char *bname, void *add, TBranch **ptr=nullptr) override
Set branch address.
Long64_t Process(const char *filename, Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0) override
Process all entries in this chain, calling functions in filename.
void RemoveFriend(TTree *) override
Remove a friend from the list of friends.
virtual Int_t AddFileInfoList(TCollection *list, Long64_t nfiles=TTree::kMaxEntries)
Add all files referenced in the list to the chain.
virtual void CreatePackets()
Initialize the packet descriptor string.
void ResetBranchAddress(TBranch *) override
Reset the addresses of the branch.
TList * fStatus
-> List of active/inactive branches (TChainElement, owned)
void SetDirectory(TDirectory *dir) override
Remove reference to this chain from current directory and add reference to new directory dir.
Double_t GetMinimum(const char *columname) override
Return minimum of column with name columname.
virtual Long64_t Merge(const char *name, Option_t *option="")
Merge all the entries in the chain into a new tree in a new file.
TTree * fTree
! Pointer to current tree (Note: We do not own this tree.)
virtual Int_t Add(TChain *chain)
Add all files referenced by the passed chain to this chain.
void ParseTreeFilename(const char *name, TString &filename, TString &treename, TString &query, TString &suffix) const
Get the tree url or filename and other information from the name.
bool InPlaceClone(TDirectory *newdirectory, const char *options="") override
Move content to a new file. (NOT IMPLEMENTED for TChain)
Int_t GetNbranches() override
Return the number of branches of the current tree.
Long64_t Draw(const char *varexp, const TCut &selection, Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0) override
Draw expression varexp for selected entries.
bool fGlobalRegistration
! if true, bypass use of global lists
virtual void SetEntryListFile(const char *filename="", Option_t *opt="")
Set the input entry list (processing the entries of the chain will then be limited to the entries in ...
Long64_t GetChainEntryNumber(Long64_t entry) const override
Return absolute entry number in the chain.
Int_t fTreeOffsetLen
Current size of fTreeOffset array.
void SetName(const char *name) override
Change the name of this TChain.
void ls(Option_t *option="") const override
List the chain.
void SetBranchStatus(const char *bname, bool status=true, UInt_t *found=nullptr) override
Set branch status to Process or DoNotProcess.
Long64_t LoadTree(Long64_t entry) override
Find the tree which contains entry, and set it as the current tree.
TClusterIterator GetClusterIterator(Long64_t firstentry) override
Return an iterator over the cluster of baskets starting at firstentry.
void Browse(TBrowser *) override
Browse the contents of the chain.
TObjArray * fFiles
-> List of file names containing the trees (TChainElement, owned)
Long64_t GetReadEntry() const override
See TTree::GetReadEntry().
TFile * fFile
! Pointer to current file (We own the file).
virtual void UseCache(Int_t maxCacheSize=10, Int_t pageSize=0)
Dummy function kept for back compatibility.
void InvalidateCurrentTree()
Set the TTree to be reloaded as soon as possible.
Long64_t GetEntries() const override
Return the total number of entries in the chain.
TFile * GetFile() const
Return a pointer to the current file.
Int_t GetEntry(Long64_t entry=0, Int_t getall=0) override
Get entry from the file to memory.
virtual void SetPacketSize(Int_t size=100)
Set number of entries per packet for parallel root.
Int_t fTreeNumber
! Current Tree number in fTreeOffset table
void Lookup(bool force=false)
Check / locate the files in the chain.
TLeaf * GetLeaf(const char *branchname, const char *leafname) override
Return a pointer to the leaf name in the current tree.
TClass instances represent classes, structs and namespaces in the ROOT type system.
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.
Collection abstract base class.
A specialized string object used for TTree selections.
TObject * Get(const char *namecycle) override
Return pointer to object identified by namecycle.
TDirectory::TContext keeps track and restore the current directory.
Describe directory structure in memory.
virtual TList * GetList() const
virtual void Append(TObject *obj, Bool_t replace=kFALSE)
Append object to this directory.
virtual TFile * GetFile() const
virtual TObject * Remove(TObject *)
Remove an object from the in-memory list.
Manages entry lists from different files, when they are not loaded in memory at the same time.
A List of entry numbers in a TTree or TChain.
virtual TEntryList * GetEntryList(const char *treename, const char *filename, Option_t *opt="")
Return the entry list, corresponding to treename and filename By default, the filename is first tried...
virtual TList * GetLists() const
virtual void SetShift(bool shift)
virtual Long64_t GetEntryAndTree(Long64_t index, Int_t &treenum)
Return the index of "index"-th non-zero entry in the TTree or TChain and the # of the corresponding t...
virtual void SetDirectory(TDirectory *dir)
Add reference to directory dir. dir can be 0.
virtual Long64_t GetN() const
<div class="legacybox"><h2>Legacy Code</h2> TEventList is a legacy interface: there will be no bug fi...
Class describing a generic file including meta information.
static TFileStager * Open(const char *stager)
Open a stager, after having loaded the relevant plug-in.
A ROOT file is an on-disk file, usually with extension .root, that stores objects in a file-system-li...
virtual void SetCacheRead(TFileCacheRead *cache, TObject *tree=nullptr, ECacheAction action=kDisconnect)
Set a pointer to the read cache.
Int_t GetCompressionSettings() const
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault, Int_t netopt=0)
Create / open a file.
void Close(Option_t *option="") override
Close a file.
A TFriendElement TF describes a TTree object TF in a file.
A TLeaf describes individual elements of a TBranch See TBranch structure in TTree.
void Streamer(TBuffer &) override
Stream all objects in the collection to or from the I/O buffer.
TObject * FindObject(const char *name) const override
Find an object in this list using its name.
void Add(TObject *obj) override
TObject * Remove(TObject *obj) override
Remove object from the list.
virtual TObjLink * FirstLink() const
void Delete(Option_t *option="") override
Remove all objects from the list AND delete all heap based objects.
The TNamed class is the base class for all named ROOT classes.
const char * GetName() const override
Returns name of object.
const char * GetTitle() const override
Returns title of object.
void Streamer(TBuffer &) override
Stream all objects in the array to or from the I/O buffer.
Int_t GetEntries() const override
Return the number of objects in array (i.e.
void Delete(Option_t *option="") override
Remove all objects from the array AND delete all heap based objects.
TObject * At(Int_t idx) const override
TObject * UncheckedAt(Int_t i) const
TObject * Remove(TObject *obj) override
Remove object from array.
void Add(TObject *obj) override
Wrapper around a TObject so it can be stored in a TList.
Collectable string class.
Mother of all ROOT objects.
virtual Bool_t Notify()
This method must be overridden to handle object notification (the base implementation is no-op).
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
virtual const char * ClassName() const
Returns name of class to which the object belongs.
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
R__ALWAYS_INLINE Bool_t IsZombie() const
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
virtual void Fatal(const char *method, const char *msgfmt,...) const
Issue fatal error message.
virtual void ls(Option_t *option="") const
The ls function lists the contents of a class on stdout.
@ kCanDelete
if object in a list can be deleted
@ kInvalidObject
if object ctor succeeded but object should not be used
@ kMustCleanup
if object destructor must call RecursiveRemove()
static Int_t IncreaseDirLevel()
Increase the indentation level for ls().
static Int_t DecreaseDirLevel()
Decrease the indentation level for ls().
A TSelector object is used by the TTree::Draw, TTree::Scan, TTree::Process to navigate in a TTree and...
void ToLower()
Change string to lower-case.
const char * Data() const
TString & ReplaceAll(const TString &s1, const TString &s2)
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
Bool_t Contains(const char *pat, ECaseCompare cmp=kExact) const
virtual Bool_t AccessPathName(const char *path, EAccessMode mode=kFileExists)
Returns FALSE if one can access a file using the specified access mode.
virtual const char * BaseName(const char *pathname)
Base name of a file name. Base name of /user/root is root.
A cache to speed-up the reading of ROOT datasets.
Helper class to iterate over cluster of baskets.
Helper class to prevent infinite recursion in the usage of TTree Friends.
A TTree represents a columnar dataset.
virtual TFriendElement * AddFriend(const char *treename, const char *filename="")
Add a TFriendElement to the list of friends.
virtual TBranch * FindBranch(const char *name)
Return the branch that correspond to the path 'branchname', which can include the name of the tree or...
virtual void SetBranchStatus(const char *bname, bool status=true, UInt_t *found=nullptr)
Set branch status to Process or DoNotProcess.
virtual TBranch * GetBranch(const char *name)
Return pointer to the branch with the given name in this tree or its friends.
TList * fFriends
pointer to list of friend elements
bool fIMTEnabled
! true if implicit multi-threading is enabled for this tree
virtual bool GetBranchStatus(const char *branchname) const
Return status of branch with name branchname.
UInt_t fFriendLockStatus
! Record which method is locking the friend recursion
TEventList * fEventList
! Pointer to event selection list (if one)
virtual Int_t GetEntry(Long64_t entry, Int_t getall=0)
Read all branches of entry and return total number of bytes read.
virtual TClusterIterator GetClusterIterator(Long64_t firstentry)
Return an iterator over the cluster of baskets starting at firstentry.
virtual void ResetBranchAddress(TBranch *)
Tell all of our branches to set their addresses to zero.
bool fCacheUserSet
! true if the cache setting was explicitly given by user
virtual Long64_t GetEntryNumberWithIndex(Long64_t major, Long64_t minor=0) const
Return entry number corresponding to major and minor number.
virtual TObjArray * GetListOfLeaves()
void Streamer(TBuffer &) override
Stream a class object.
TVirtualTreePlayer * GetPlayer()
Load the TTreePlayer (if not already done).
virtual Double_t GetWeight() const
void Draw(Option_t *opt) override
Default Draw method for all objects.
virtual Double_t GetMaximum(const char *columname)
Return maximum of column with name columname.
TVirtualTreePlayer * fPlayer
! Pointer to current Tree player
virtual void SetMakeClass(Int_t make)
Set all the branches in this TTree to be in decomposed object mode (also known as MakeClass mode).
TTreeCache * GetReadCache(TFile *file) const
Find and return the TTreeCache registered with the file and which may contain branches for us.
Long64_t fEntries
Number of entries.
TEntryList * fEntryList
! Pointer to event selection list (if one)
virtual TVirtualIndex * GetTreeIndex() const
TList * fExternalFriends
! List of TFriendsElement pointing to us and need to be notified of LoadTree. Content not owned.
virtual void SetMaxVirtualSize(Long64_t size=0)
virtual Long64_t Process(const char *filename, Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0)
Process this tree executing the TSelector code in the specified filename.
virtual void ResetAfterMerge(TFileMergeInfo *)
Resets the state of this TTree after a merge (keep the customization but forget the data).
virtual Long64_t GetEntries() const
virtual TTree * CloneTree(Long64_t nentries=-1, Option_t *option="")
Create a clone of this tree and copy nentries.
virtual TLeaf * GetLeaf(const char *branchname, const char *leafname)
Return pointer to the 1st Leaf named name in any Branch of this Tree or any branch in the list of fri...
virtual void Reset(Option_t *option="")
Reset baskets, buffers and entries count in all branches and leaves.
virtual void SetImplicitMT(bool enabled)
Long64_t fMaxVirtualSize
Maximum total size of buffers kept in memory.
TVirtualPerfStats * fPerfStats
! pointer to the current perf stats object
Double_t fWeight
Tree weight (see TTree::SetWeight)
virtual Long64_t GetReadEntry() const
virtual TObjArray * GetListOfBranches()
virtual TTree * GetTree() const
virtual Long64_t LoadTree(Long64_t entry)
Set current entry.
virtual const char * GetAlias(const char *aliasName) const
Returns the expanded value of the alias. Search in the friends if any.
virtual Double_t GetMinimum(const char *columname)
Return minimum of column with name columname.
virtual void RemoveFriend(TTree *)
Remove a friend from the list of friends.
void Browse(TBrowser *) override
Browse content of the TTree.
virtual Long64_t LoadTreeFriend(Long64_t entry, TTree *T)
Load entry on behalf of our master tree, we may use an index.
TObject * fNotify
Object to be notified when loading a Tree.
virtual TList * GetListOfClones()
Long64_t fCacheSize
! Maximum size of file buffers
TList * fClones
! List of cloned trees which share our addresses
virtual void CopyAddresses(TTree *, bool undo=false)
Set branch addresses of passed tree equal to ours.
virtual TList * GetListOfFriends() const
Long64_t fReadEntry
! Number of the entry being processed
virtual Int_t GetNbranches()
virtual TLeaf * FindLeaf(const char *name)
Find leaf..
TDirectory * fDirectory
! Pointer to directory holding this tree
@ kNeedEnableDecomposedObj
virtual void ResetBranchAddresses()
Tell all of our branches to drop their current objects and allocate new ones.
void SetName(const char *name) override
Change the name of this tree.
virtual Int_t SetCacheSize(Long64_t cachesize=-1)
Set maximum size of the file cache .
void AddClone(TTree *)
Add a cloned tree to our list of trees to be notified whenever we change our branch addresses or when...
virtual Int_t CheckBranchAddressType(TBranch *branch, TClass *ptrClass, EDataType datatype, bool ptr)
Check whether or not the address described by the last 3 parameters matches the content of the branch...
virtual void SetChainOffset(Long64_t offset=0)
Int_t fPacketSize
! Number of entries in one packet for parallel root
virtual Long64_t GetChainOffset() const
virtual Long64_t Scan(const char *varexp="", const char *selection="", Option_t *option="", Long64_t nentries=kMaxEntries, Long64_t firstentry=0)
Loop over tree entries and print entries passing selection.
Int_t fMakeClass
! not zero when processing code generated by MakeClass
static constexpr Long64_t kMaxEntries
This class represents a WWW compatible URL.
virtual void SetFile(TFile *)=0
virtual void UpdateFormulaLeaves()=0
std::vector< std::string > ExpandGlob(const std::string &glob)
Expands input glob into a collection of full paths to files.
R__EXTERN TVirtualRWMutex * gCoreMutex