#ifndef ROOT_TEntryListArray
#define ROOT_TEntryListArray
#ifndef ROOT_TEntryList
#include "TEntryList.h"
#endif
class TTree;
class TDirectory;
class TObjArray;
class TString;
class TList;
class TCollection;
class TIter;
class TEntryListArray : public TEntryList {
private:
TEntryListArray& operator=(const TEntryListArray&);
protected:
TList *fSubLists;
Long64_t fEntry;
TEntryListArray *fLastSubListQueried;
TIter *fSubListIter;
void Init();
virtual void AddEntriesAndSubLists(const TEntryList *elist);
virtual void ConvertToTEntryListArray(TEntryList *e);
virtual Bool_t RemoveSubList(TEntryListArray *e, TTree *tree = 0);
virtual Bool_t RemoveSubListForEntry(Long64_t entry, TTree *tree = 0);
virtual TEntryListArray* SetEntry(Long64_t entry, TTree *tree = 0);
public:
TEntryListArray();
TEntryListArray(const char *name, const char *title);
TEntryListArray(const char *name, const char *title, const TTree *tree);
TEntryListArray(const char *name, const char *title, const char *treename, const char *filename);
TEntryListArray(const TTree *tree);
TEntryListArray(const TEntryListArray& elist);
TEntryListArray(const TEntryList& elist);
virtual ~TEntryListArray();
virtual void Add(const TEntryList *elist);
virtual Int_t Contains(Long64_t entry, TTree *tree, Long64_t subentry);
virtual Int_t Contains(Long64_t entry, TTree *tree = 0) {
return TEntryList::Contains(entry, tree);
};
virtual Bool_t Enter(Long64_t entry, TTree *tree, Long64_t subentry);
virtual Bool_t Enter(Long64_t entry, TTree *tree = 0) {
return Enter(entry, tree, -1);
};
virtual TEntryListArray* GetSubListForEntry(Long64_t entry, TTree *tree = 0);
virtual void Print(const Option_t* option = "") const;
virtual Bool_t Remove(Long64_t entry, TTree *tree, Long64_t subentry);
virtual Bool_t Remove(Long64_t entry, TTree *tree = 0) {
return Remove(entry, tree, -1);
};
virtual void Reset();
virtual void SetTree(const char *treename, const char *filename);
virtual void SetTree(const TTree *tree) {
TEntryList::SetTree(tree);
}
virtual void Subtract(const TEntryList *elist);
virtual TList* GetSubLists() const {
return fSubLists;
};
ClassDef(TEntryListArray, 1);
};
#endif
#ifndef ROOT_TEntryListArray
#define ROOT_TEntryListArray
#ifndef ROOT_TEntryList
#include "TEntryList.h"
#endif
class TTree;
class TDirectory;
class TObjArray;
class TString;
class TList;
class TCollection;
class TIter;
class TEntryListArray : public TEntryList {
private:
TEntryListArray& operator=(const TEntryListArray&);
protected:
TList *fSubLists;
Long64_t fEntry;
TEntryListArray *fLastSubListQueried;
TIter *fSubListIter;
void Init();
virtual void AddEntriesAndSubLists(const TEntryList *elist);
virtual void ConvertToTEntryListArray(TEntryList *e);
virtual Bool_t RemoveSubList(TEntryListArray *e, TTree *tree = 0);
virtual Bool_t RemoveSubListForEntry(Long64_t entry, TTree *tree = 0);
virtual TEntryListArray* SetEntry(Long64_t entry, TTree *tree = 0);
public:
TEntryListArray();
TEntryListArray(const char *name, const char *title);
TEntryListArray(const char *name, const char *title, const TTree *tree);
TEntryListArray(const char *name, const char *title, const char *treename, const char *filename);
TEntryListArray(const TTree *tree);
TEntryListArray(const TEntryListArray& elist);
TEntryListArray(const TEntryList& elist);
virtual ~TEntryListArray();
virtual void Add(const TEntryList *elist);
virtual Int_t Contains(Long64_t entry, TTree *tree, Long64_t subentry);
virtual Int_t Contains(Long64_t entry, TTree *tree = 0) {
return TEntryList::Contains(entry, tree);
};
virtual Bool_t Enter(Long64_t entry, TTree *tree, Long64_t subentry);
virtual Bool_t Enter(Long64_t entry, TTree *tree = 0) {
return Enter(entry, tree, -1);
};
virtual TEntryListArray* GetSubListForEntry(Long64_t entry, TTree *tree = 0);
virtual void Print(const Option_t* option = "") const;
virtual Bool_t Remove(Long64_t entry, TTree *tree, Long64_t subentry);
virtual Bool_t Remove(Long64_t entry, TTree *tree = 0) {
return Remove(entry, tree, -1);
};
virtual void Reset();
virtual void SetTree(const char *treename, const char *filename);
virtual void SetTree(const TTree *tree) {
TEntryList::SetTree(tree);
}
virtual void Subtract(const TEntryList *elist);
virtual TList* GetSubLists() const {
return fSubLists;
};
ClassDef(TEntryListArray, 1);
};
#endif