34 class TChain :
public TTree {
40 Long64_t *fTreeOffset;
41 Bool_t fCanDeleteRefs;
49 TChain(
const TChain&);
50 TChain& operator=(
const TChain&);
51 void ParseTreeFilename(
const char *name, TString &filename, TString &treename, TString &query, TString &suffix, Bool_t wildcards)
const;
54 void InvalidateCurrentTree();
55 void ReleaseChainProof();
60 kGlobalWeight = BIT(15),
61 kAutoDelete = BIT(16),
62 kProofUptodate = BIT(17),
67 static constexpr
auto kBigNumber = TTree::kMaxEntries;
71 TChain(
const char* name,
const char* title =
"");
74 virtual Int_t Add(TChain* chain);
75 virtual Int_t Add(
const char* name, Long64_t nentries = TTree::kMaxEntries);
76 virtual Int_t AddFile(
const char* name, Long64_t nentries = TTree::kMaxEntries,
const char* tname =
"");
77 virtual Int_t AddFileInfoList(TCollection* list, Long64_t nfiles = TTree::kMaxEntries);
78 virtual TFriendElement *AddFriend(
const char* chainname,
const char* dummy =
"");
79 virtual TFriendElement *AddFriend(
const char* chainname, TFile* dummy);
80 virtual TFriendElement *AddFriend(TTree* chain,
const char* alias =
"", Bool_t warn = kFALSE);
81 virtual void Browse(TBrowser*);
82 virtual void CanDeleteRefs(Bool_t flag = kTRUE);
83 virtual void CreatePackets();
84 virtual void DirectoryAutoAdd(TDirectory *);
85 virtual Long64_t Draw(
const char* varexp,
const TCut& selection, Option_t* option =
"", Long64_t nentries = kMaxEntries, Long64_t firstentry = 0);
86 virtual Long64_t Draw(
const char* varexp,
const char* selection, Option_t* option =
"", Long64_t nentries = kMaxEntries, Long64_t firstentry = 0);
87 virtual void Draw(Option_t* opt) { Draw(opt,
"",
"", kMaxEntries, 0); }
88 virtual Int_t Fill() { MayNotUse(
"Fill()");
return -1; }
89 virtual TBranch *FindBranch(
const char* name);
90 virtual TLeaf *FindLeaf(
const char* name);
91 virtual TBranch *GetBranch(
const char* name);
92 virtual Bool_t GetBranchStatus(
const char* branchname)
const;
93 virtual Long64_t GetCacheSize()
const {
return fTree ? fTree->GetCacheSize() : fCacheSize; }
94 virtual Long64_t GetChainEntryNumber(Long64_t entry)
const;
95 virtual TClusterIterator GetClusterIterator(Long64_t firstentry);
96 Int_t GetNtrees()
const {
return fNtrees; }
97 virtual Long64_t GetEntries()
const;
98 virtual Long64_t GetEntries(
const char *sel) {
return TTree::GetEntries(sel); }
99 virtual Int_t GetEntry(Long64_t entry=0, Int_t getall=0);
100 virtual Long64_t GetEntryNumber(Long64_t entry)
const;
101 virtual Int_t GetEntryWithIndex(Int_t major, Int_t minor=0);
102 TFile *GetFile()
const;
103 virtual TLeaf *GetLeaf(
const char* branchname,
const char* leafname);
104 virtual TLeaf *GetLeaf(
const char* name);
105 virtual TObjArray *GetListOfBranches();
108 TObjArray *GetListOfFiles()
const {
return fFiles;}
109 virtual TObjArray *GetListOfLeaves();
110 virtual const char *GetAlias(
const char *aliasName)
const;
111 virtual Double_t GetMaximum(
const char *columname);
112 virtual Double_t GetMinimum(
const char *columname);
113 virtual Int_t GetNbranches();
114 virtual Long64_t GetReadEntry()
const;
115 TList *GetStatus()
const {
return fStatus; }
116 virtual TTree *GetTree()
const {
return fTree; }
117 virtual Int_t GetTreeNumber()
const {
return fTreeNumber; }
118 Long64_t *GetTreeOffset()
const {
return fTreeOffset; }
119 Int_t GetTreeOffsetLen()
const {
return fTreeOffsetLen; }
120 virtual Double_t GetWeight()
const;
121 virtual Int_t LoadBaskets(Long64_t maxmemory);
122 virtual Long64_t LoadTree(Long64_t entry);
123 void Lookup(Bool_t force = kFALSE);
124 virtual void Loop(Option_t *option=
"", Long64_t nentries=kMaxEntries, Long64_t firstentry=0);
125 virtual void ls(Option_t *option=
"")
const;
126 virtual Long64_t Merge(
const char *name, Option_t *option =
"");
127 virtual Long64_t Merge(TCollection *list, Option_t *option =
"");
128 virtual Long64_t Merge(TCollection *list, TFileMergeInfo *info);
129 virtual Long64_t Merge(TFile *file, Int_t basketsize, Option_t *option=
"");
130 virtual void Print(Option_t *option=
"")
const;
131 virtual Long64_t Process(
const char *filename, Option_t *option=
"", Long64_t nentries=kMaxEntries, Long64_t firstentry=0);
132 virtual Long64_t Process(TSelector* selector, Option_t* option =
"", Long64_t nentries = kMaxEntries, Long64_t firstentry = 0);
133 virtual void RecursiveRemove(TObject *obj);
134 virtual void RemoveFriend(TTree*);
135 virtual void Reset(Option_t *option=
"");
136 virtual void ResetAfterMerge(TFileMergeInfo *);
137 virtual void ResetBranchAddress(TBranch *);
138 virtual void ResetBranchAddresses();
139 virtual void SavePrimitive (std::ostream &out, Option_t *option=
"");
140 virtual Long64_t Scan(
const char *varexp=
"",
const char *selection=
"", Option_t *option=
"", Long64_t nentries=kMaxEntries, Long64_t firstentry=0);
141 virtual void SetAutoDelete(Bool_t autodel=kTRUE);
142 virtual Int_t SetBranchAddress(
const char *bname,
void *add, TBranch **ptr = 0);
143 virtual Int_t SetBranchAddress(
const char *bname,
void *add, TBranch **ptr, TClass *realClass, EDataType datatype, Bool_t isptr);
144 virtual Int_t SetBranchAddress(
const char *bname,
void *add, TClass *realClass, EDataType datatype, Bool_t isptr);
145 template <
class T> Int_t SetBranchAddress(
const char *bname, T **add, TBranch **ptr = 0) {
146 return TTree::SetBranchAddress<T>(bname, add, ptr);
148 #ifndef R__NO_CLASS_TEMPLATE_SPECIALIZATION
151 template <
class T> Int_t SetBranchAddress(
const char *bname, T *add, TBranch **ptr = 0) {
152 return TTree::SetBranchAddress<T>(bname, add, ptr);
156 virtual void SetBranchStatus(
const char *bname, Bool_t status=1, UInt_t *found=0);
157 virtual Int_t SetCacheSize(Long64_t cacheSize = -1);
158 virtual void SetDirectory(TDirectory *dir);
159 virtual void SetEntryList(TEntryList *elist, Option_t *opt=
"");
160 virtual void SetEntryListFile(
const char *filename=
"", Option_t *opt=
"");
161 virtual void SetEventList(TEventList *evlist);
162 virtual void SetMakeClass(Int_t make) { TTree::SetMakeClass(make);
if (fTree) fTree->SetMakeClass(make);}
163 virtual void SetName(
const char *name);
164 virtual void SetPacketSize(Int_t size = 100);
165 virtual void SetProof(Bool_t on = kTRUE, Bool_t refresh = kFALSE, Bool_t gettreeheader = kFALSE);
166 virtual void SetWeight(Double_t w=1, Option_t *option=
"");
167 virtual void UseCache(Int_t maxCacheSize = 10, Int_t pageSize = 0);
172 #endif // ROOT_TChain