12#ifndef ROOT_TTreeIndex
13#define ROOT_TTreeIndex
51 TTreeIndex(
const TTree *T,
const char *majorname,
const char *minorname);
#define ClassDefOverride(name, id)
Mother of all ROOT objects.
const char * Data() const
A Tree Index with majorname and minorname.
TTreeIndex()
Default constructor for TTreeIndex.
virtual Long64_t * GetIndexValues() const
virtual Long64_t * GetIndexValuesMinor() const
TTreeFormula * fMajorFormula
! Pointer to major TreeFormula
TTreeFormula * fMajorFormulaParent
! Pointer to major TreeFormula in Parent tree (if any)
Long64_t * fIndex
[fN] Index of sorted values
Long64_t GetEntryNumberWithIndex(Long64_t major, Long64_t minor) const override
Return entry number corresponding to major and minor number.
TTreeFormula * GetMajorFormulaParent(const TTree *parent)
Return a pointer to the TreeFormula corresponding to the majorname in parent tree.
void SetTree(TTree *T) override
this function is called by TChain::LoadTree and TTreePlayer::UpdateFormulaLeaves when a new Tree is l...
bool IsValidFor(const TTree *parent) override
Return true if index can be applied to the TTree.
Long64_t fN
Number of entries.
virtual Long64_t * GetIndex() const
bool ConvertOldToNew()
conversion from old 64bit indexes return true if index was converted
TTreeFormula * fMinorFormula
! Pointer to minor TreeFormula
void Append(const TVirtualIndex *, bool delaySort=false) override
Append 'add' to this index.
const char * GetMajorName() const override
void UpdateFormulaLeaves(const TTree *parent) override
Called by TChain::LoadTree when the parent chain changes it's tree.
virtual TTreeFormula * GetMajorFormula()
Return a pointer to the TreeFormula corresponding to the majorname.
TTreeFormula * GetMinorFormulaParent(const TTree *parent)
Return a pointer to the TreeFormula corresponding to the minorname in parent tree.
Long64_t GetEntryNumberWithBestIndex(Long64_t major, Long64_t minor) const override
Return entry number corresponding to major and minor number.
TObject * Clone(const char *newname="") const override
Create a deep copy of the TTreeIndex.
Long64_t GetEntryNumberFriend(const TTree *parent) override
Returns the entry number in this (friend) Tree corresponding to entry in the master Tree 'parent'.
Long64_t GetN() const override
TString fMinorName
Index minor name.
void Print(Option_t *option="") const override
Print the table with : serial number, majorname, minorname.
virtual TTreeFormula * GetMinorFormula()
Return a pointer to the TreeFormula corresponding to the minorname.
TTreeIndex(const TTreeIndex &)=delete
Long64_t * fIndexValues
[fN] Sorted index values, higher 64bits
TString fMajorName
Index major name.
Long64_t * fIndexValuesMinor
[fN] Sorted index values, lower 64bits
~TTreeIndex() override
Destructor.
TTreeIndex & operator=(const TTreeIndex &)=delete
TTreeFormula * fMinorFormulaParent
! Pointer to minor TreeFormula in Parent tree (if any)
Long64_t FindValues(Long64_t major, Long64_t minor) const
find position where major|minor values are in the IndexValues tables this is the index in IndexValues...
const char * GetMinorName() const override
A TTree represents a columnar dataset.
Abstract interface for Tree Index.