#include <TTreeFormula.h>
Inheritance diagram for TTreeFormula:
Public Member Functions | |
TTreeFormula () | |
TTreeFormula (const char *name, const char *formula, TTree *tree) | |
virtual | ~TTreeFormula () |
virtual Int_t | DefinedVariable (TString &variable, Int_t &action) |
virtual TClass * | EvalClass () const |
virtual Double_t | EvalInstance (Int_t i=0, const char *stringStack[]=0) |
virtual const char * | EvalStringInstance (Int_t i=0) |
virtual void * | EvalObject (Int_t i=0) |
TFormLeafInfo * | GetLeafInfo (Int_t code) const |
TTreeFormulaManager * | GetManager () const |
TMethodCall * | GetMethodCall (Int_t code) const |
virtual Int_t | GetMultiplicity () const |
virtual TLeaf * | GetLeaf (Int_t n) const |
virtual Int_t | GetNcodes () const |
virtual Int_t | GetNdata () |
virtual Bool_t | IsInteger (Bool_t fast=kTRUE) const |
Bool_t | IsQuickLoad () const |
virtual Bool_t | IsString () const |
virtual Bool_t | Notify () |
virtual char * | PrintValue (Int_t mode=0) const |
virtual char * | PrintValue (Int_t mode, Int_t instance, const char *decform="9.9") const |
virtual void | SetAxis (TAxis *axis=0) |
void | SetQuickLoad (Bool_t quick) |
virtual void | SetTree (TTree *tree) |
virtual void | ResetLoading () |
virtual TTree * | GetTree () const |
virtual void | UpdateFormulaLeaves () |
TTreeFormula () | |
TTreeFormula (const char *name, const char *formula, TTree *tree) | |
virtual | ~TTreeFormula () |
virtual Int_t | DefinedVariable (TString &variable, Int_t &action) |
virtual TClass * | EvalClass () const |
virtual Double_t | EvalInstance (Int_t i=0, const char *stringStack[]=0) |
virtual const char * | EvalStringInstance (Int_t i=0) |
virtual void * | EvalObject (Int_t i=0) |
TFormLeafInfo * | GetLeafInfo (Int_t code) const |
TTreeFormulaManager * | GetManager () const |
TMethodCall * | GetMethodCall (Int_t code) const |
virtual Int_t | GetMultiplicity () const |
virtual TLeaf * | GetLeaf (Int_t n) const |
virtual Int_t | GetNcodes () const |
virtual Int_t | GetNdata () |
virtual Bool_t | IsInteger (Bool_t fast=kTRUE) const |
Bool_t | IsQuickLoad () const |
virtual Bool_t | IsString () const |
virtual Bool_t | Notify () |
virtual char * | PrintValue (Int_t mode=0) const |
virtual char * | PrintValue (Int_t mode, Int_t instance, const char *decform="9.9") const |
virtual void | SetAxis (TAxis *axis=0) |
void | SetQuickLoad (Bool_t quick) |
virtual void | SetTree (TTree *tree) |
virtual void | ResetLoading () |
virtual TTree * | GetTree () const |
virtual void | UpdateFormulaLeaves () |
Protected Types | |
enum | |
enum | |
enum | |
enum | |
enum | |
enum | |
Protected Member Functions | |
TTreeFormula (const char *name, const char *formula, TTree *tree, const std::vector< std::string > &aliases) | |
List of aliases used during the parsing of the expression. | |
void | Init (const char *name, const char *formula) |
Bool_t | BranchHasMethod (TLeaf *leaf, TBranch *branch, const char *method, const char *params, Long64_t readentry) const |
Int_t | DefineAlternate (const char *expression) |
void | DefineDimensions (Int_t code, Int_t size, TFormLeafInfoMultiVarDim *info, Int_t &virt_dim) |
Int_t | FindLeafForExpression (const char *expression, TLeaf *&leaf, TString &leftover, Bool_t &final, UInt_t ¶n_level, TObjArray &castqueue, std::vector< std::string > &aliasUsed, Bool_t &useLeafCollectionObject, const char *fullExpression) |
TLeaf * | GetLeafWithDatamember (const char *topchoice, const char *nextchice, Long64_t readentry) const |
Int_t | ParseWithLeaf (TLeaf *leaf, const char *expression, Bool_t final, UInt_t paran_level, TObjArray &castqueue, Bool_t useLeafCollectionObject, const char *fullExpression) |
Int_t | RegisterDimensions (Int_t code, Int_t size, TFormLeafInfoMultiVarDim *multidim=0) |
Int_t | RegisterDimensions (Int_t code, TBranchElement *branch) |
Int_t | RegisterDimensions (Int_t code, TFormLeafInfo *info, TFormLeafInfo *maininfo, Bool_t useCollectionObject) |
Int_t | RegisterDimensions (Int_t code, TLeaf *leaf) |
Int_t | RegisterDimensions (const char *size, Int_t code) |
virtual Double_t | GetValueFromMethod (Int_t i, TLeaf *leaf) const |
virtual void * | GetValuePointerFromMethod (Int_t i, TLeaf *leaf) const |
Int_t | GetRealInstance (Int_t instance, Int_t codeindex) |
void | LoadBranches () |
Bool_t | LoadCurrentDim () |
void | ResetDimensions () |
virtual TClass * | EvalClass (Int_t oper) const |
virtual Bool_t | IsLeafInteger (Int_t code) const |
virtual Bool_t | IsString (Int_t oper) const |
virtual Bool_t | IsLeafString (Int_t code) const |
virtual Bool_t | SwitchToFormLeafInfo (Int_t code) |
virtual Bool_t | StringToNumber (Int_t code) |
void | Convert (UInt_t fromVersion) |
TTreeFormula (const char *name, const char *formula, TTree *tree, const std::vector< std::string > &aliases) | |
List of aliases used during the parsing of the expression. | |
void | Init (const char *name, const char *formula) |
Bool_t | BranchHasMethod (TLeaf *leaf, TBranch *branch, const char *method, const char *params, Long64_t readentry) const |
Int_t | DefineAlternate (const char *expression) |
void | DefineDimensions (Int_t code, Int_t size, TFormLeafInfoMultiVarDim *info, Int_t &virt_dim) |
Int_t | FindLeafForExpression (const char *expression, TLeaf *&leaf, TString &leftover, Bool_t &final, UInt_t ¶n_level, TObjArray &castqueue, std::vector< std::string > &aliasUsed, Bool_t &useLeafCollectionObject, const char *fullExpression) |
TLeaf * | GetLeafWithDatamember (const char *topchoice, const char *nextchice, Long64_t readentry) const |
Int_t | ParseWithLeaf (TLeaf *leaf, const char *expression, Bool_t final, UInt_t paran_level, TObjArray &castqueue, Bool_t useLeafCollectionObject, const char *fullExpression) |
Int_t | RegisterDimensions (Int_t code, Int_t size, TFormLeafInfoMultiVarDim *multidim=0) |
Int_t | RegisterDimensions (Int_t code, TBranchElement *branch) |
Int_t | RegisterDimensions (Int_t code, TFormLeafInfo *info, TFormLeafInfo *maininfo, Bool_t useCollectionObject) |
Int_t | RegisterDimensions (Int_t code, TLeaf *leaf) |
Int_t | RegisterDimensions (const char *size, Int_t code) |
virtual Double_t | GetValueFromMethod (Int_t i, TLeaf *leaf) const |
virtual void * | GetValuePointerFromMethod (Int_t i, TLeaf *leaf) const |
Int_t | GetRealInstance (Int_t instance, Int_t codeindex) |
void | LoadBranches () |
Bool_t | LoadCurrentDim () |
void | ResetDimensions () |
virtual TClass * | EvalClass (Int_t oper) const |
virtual Bool_t | IsLeafInteger (Int_t code) const |
virtual Bool_t | IsString (Int_t oper) const |
virtual Bool_t | IsLeafString (Int_t code) const |
virtual Bool_t | SwitchToFormLeafInfo (Int_t code) |
virtual Bool_t | StringToNumber (Int_t code) |
void | Convert (UInt_t fromVersion) |
Protected Attributes | |
TTree * | fTree |
Short_t | fCodes [kMAXCODES] |
pointer to Tree | |
Int_t | fNdata [kMAXCODES] |
Int_t | fNcodes |
This caches the physical number of element in the leaf or datamember. | |
Bool_t | fHasCast |
Int_t | fMultiplicity |
Int_t | fNindex |
Int_t * | fLookupType |
TObjArray | fLeaves |
TObjArray | fDataMembers |
List of leaf used in this formula. | |
TObjArray | fMethods |
List of leaf data members. | |
TObjArray | fExternalCuts |
List of leaf method calls. | |
TObjArray | fAliases |
List of TCutG and TEntryList used in the formula. | |
TObjArray | fLeafNames |
List of TTreeFormula for each alias used. | |
TObjArray | fBranches |
Bool_t | fQuickLoad |
List of branches to read. Similar to fLeaces but duplicates are zeroed out. | |
Bool_t | fNeedLoading |
If true, branch GetEntry is only called when the entry number changes. | |
Int_t | fNdimensions [kMAXCODES] |
If true, the current entry has not been loaded yet. | |
Int_t | fFixedSizes [kMAXCODES][kMAXFORMDIM] |
UChar_t | fHasMultipleVarDim [kMAXCODES] |
Int_t | fCumulSizes [kMAXCODES][kMAXFORMDIM] |
Int_t | fIndexes [kMAXCODES][kMAXFORMDIM] |
TTreeFormula * | fVarIndexes [kMAXCODES][kMAXFORMDIM] |
TAxis * | fAxis |
Bool_t | fDidBooleanOptimization |
pointer to histogram axis if this is a string | |
TTreeFormulaManager * | fManager |
True if we executed one boolean optimization since the last time instance number 0 was evaluated. | |
TList * | fDimensionSetup |
The dimension coordinator. | |
std::vector< std::string > | fAliasesUsed |
list of dimension setups, for delayed creation of the dimension information. | |
TTree * | fTree |
Int_t * | fLookupType |
TTreeFormula * | fVarIndexes [kMAXCODES][kMAXFORMDIM] |
TAxis * | fAxis |
TTreeFormulaManager * | fManager |
True if we executed one boolean optimization since the last time instance number 0 was evaluated. | |
TList * | fDimensionSetup |
The dimension coordinator. | |
std::vector< std::string > | fAliasesUsed |
list of dimension setups, for delayed creation of the dimension information. | |
Private Member Functions | |
TTreeFormula (const TTreeFormula &) | |
TTreeFormula & | operator= (const TTreeFormula &) |
TTreeFormula (const TTreeFormula &) | |
TTreeFormula & | operator= (const TTreeFormula &) |
Friends | |
class | TTreeFormulaManager |
Definition at line 64 of file TTreeFormula.h.
anonymous enum [protected] |
Definition at line 69 of file TTreeFormula.h.
anonymous enum [protected] |
Definition at line 75 of file TTreeFormula.h.
anonymous enum [protected] |
Definition at line 83 of file TTreeFormula.h.
anonymous enum [protected] |
Definition at line 69 of file TTreeFormula.h.
anonymous enum [protected] |
Definition at line 75 of file TTreeFormula.h.
anonymous enum [protected] |
Definition at line 83 of file TTreeFormula.h.
TTreeFormula::TTreeFormula | ( | const char * | name, | |
const char * | formula, | |||
TTree * | tree, | |||
const std::vector< std::string > & | aliases | |||
) | [protected] |
List of aliases used during the parsing of the expression.
Definition at line 170 of file TTreeFormula.cxx.
References Init().
TTreeFormula::TTreeFormula | ( | const TTreeFormula & | ) | [private] |
TTreeFormula::TTreeFormula | ( | ) |
Definition at line 130 of file TTreeFormula.cxx.
References fAxis, fCodes, fCumulSizes, fHasCast, fHasMultipleVarDim, fIndexes, fLookupType, fManager, fMultiplicity, fNcodes, fNdata, fNdimensions, fNindex, fTree, fVarIndexes, j, k, kFALSE, kMAXCODES, and kMAXFORMDIM.
Referenced by DefineAlternate(), and DefinedVariable().
TTreeFormula::TTreeFormula | ( | const char * | name, | |
const char * | formula, | |||
TTree * | tree | |||
) |
TTreeFormula::~TTreeFormula | ( | ) | [virtual] |
Definition at line 322 of file TTreeFormula.cxx.
References TList::Delete(), TObjArray::Delete(), fAliases, fDataMembers, fDimensionSetup, TTreeFormulaManager::fFormulas, fLeafNames, fLookupType, fManager, fMethods, fNcodes, fNdimensions, fVarIndexes, TObjArray::GetLast(), j, k, and TTreeFormulaManager::Remove().
TTreeFormula::TTreeFormula | ( | const char * | name, | |
const char * | formula, | |||
TTree * | tree, | |||
const std::vector< std::string > & | aliases | |||
) | [protected] |
List of aliases used during the parsing of the expression.
TTreeFormula::TTreeFormula | ( | const TTreeFormula & | ) | [private] |
TTreeFormula::TTreeFormula | ( | ) |
TTreeFormula::TTreeFormula | ( | const char * | name, | |
const char * | formula, | |||
TTree * | tree | |||
) |
virtual TTreeFormula::~TTreeFormula | ( | ) | [virtual] |
void TTreeFormula::Init | ( | const char * | name, | |
const char * | formula | |||
) | [protected] |
Definition at line 180 of file TTreeFormula.cxx.
References TTreeFormulaManager::Add(), TObjArray::AddAtAndExpand(), TDirectory::cd(), TFormula::Compile(), TObject::Error(), fAliases, fAxis, fBranches, fCodes, fCumulSizes, fDimensionSetup, fFixedSizes, fHasCast, fHasMultipleVarDim, fIndexes, TObjArray::FindObject(), fLeaves, fLookupType, fManager, fMultiplicity, fNcodes, fNdata, TFormula::fNdim, fNdimensions, fNindex, TFormula::fNoper, fTree, fVarIndexes, gDirectory, TFormula::GetAction(), TFormula::GetActionParam(), TTree::GetEntries(), TTree::GetReadEntry(), TTree::GetTreeNumber(), i, IsInteger(), IsString(), j, k, Rgl::Mc::k0, Rgl::Mc::k1, kAliasString, kAlternateString, TFormula::kDefinedString, kDirect, kFALSE, kIsCharacter, kIsInteger, TFormula::kJump, kMAXCODES, kMAXFORMDIM, kMAXFOUND, kNeedEntries, TTree::LoadTree(), Long64_t, R__ASSERT, TObject::SetBit(), TNamed::SetName(), TTreeFormulaManager::Sync(), TObject::TestBit(), TObjArray::UncheckedAt(), UpdateFormulaLeaves(), and TObject::Warning().
Referenced by TTreeFormula().
Bool_t TTreeFormula::BranchHasMethod | ( | TLeaf * | leaf, | |
TBranch * | branch, | |||
const char * | method, | |||
const char * | params, | |||
Long64_t | readentry | |||
) | const [protected] |
Definition at line 3161 of file TTreeFormula.cxx.
References TObjArray::At(), xmlio::Class, TObject::Error(), fQuickLoad, TClass::GetClass(), TLeafObject::GetClass(), TClass::GetClassInfo(), TStreamerElement::GetClassPointer(), TClass::GetCollectionProxy(), TBranch::GetListOfLeaves(), TFormLeafInfo::GetLocalValuePointer(), TClass::GetMethodAllAny(), TNamed::GetName(), TLeafObject::GetObject(), TVirtualCollectionProxy::GetValueClass(), TObject::InheritsFrom(), TLeaf::IsOnTerminalBranch(), kDoNotProcess, kFALSE, kTRUE, TObject::TestBit(), and type.
Referenced by FindLeafForExpression().
Int_t TTreeFormula::DefineAlternate | ( | const char * | expression | ) | [protected] |
Definition at line 645 of file TTreeFormula.cxx.
References TObjArray::AddAtAndExpand(), TObject::Error(), fAliases, TFormula::fExpr, TFormula::fNoper, fTree, GetManager(), TTreeFormulaManager::GetMultiplicity(), TNamed::GetTitle(), i, IsString(), kAlias, kAlternate, kMaxIf, kMinIf, TString::Length(), TFormula::SetAction(), start, and TTreeFormula().
Referenced by DefinedVariable().
void TTreeFormula::DefineDimensions | ( | Int_t | code, | |
Int_t | size, | |||
TFormLeafInfoMultiVarDim * | info, | |||
Int_t & | virt_dim | |||
) | [protected] |
Definition at line 353 of file TTreeFormula.cxx.
References TTreeFormulaManager::AddVarDims(), TTreeFormulaManager::EnableMultiVarDims(), fCumulSizes, fIndexes, fManager, fNdimensions, fVarIndexes, GetMultiplicity(), GetNdata(), info, and TTreeFormulaManager::UpdateUsedSize().
Int_t TTreeFormula::FindLeafForExpression | ( | const char * | expression, | |
TLeaf *& | leaf, | |||
TString & | leftover, | |||
Bool_t & | final, | |||
UInt_t & | paran_level, | |||
TObjArray & | castqueue, | |||
std::vector< std::string > & | aliasUsed, | |||
Bool_t & | useLeafCollectionObject, | |||
const char * | fullExpression | |||
) | [protected] |
Definition at line 2119 of file TTreeFormula.cxx.
References TObjArray::AddAtAndExpand(), TObjArray::At(), BranchHasMethod(), xmlio::Class, TString::Data(), TObject::Error(), TTree::FindBranch(), TBranch::FindBranch(), TBranch::FindLeaf(), TTree::FindLeaf(), fLeafNames, fLeaves, fNcodes, fTree, TTree::GetAlias(), TLeaf::GetBranch(), TClass::GetClass(), TStreamerElement::GetClassPointer(), TBranchElement::GetInfo(), TTree::GetIteratorOnAllLeaves(), GetLeafWithDatamember(), TTree::GetListOfBranches(), TBranch::GetListOfLeaves(), TNamed::GetName(), TTree::GetReadEntry(), TClass::GetReferenceProxy(), TTree::GetTree(), TROOT::GetType(), gInterpreter, gROOT, i, info, TObject::InheritsFrom(), TLeaf::IsOnTerminalBranch(), kFALSE, kMaxLen, kTRUE, l, len, TTree::LoadTree(), Long64_t, params, snprintf, strlcpy(), TNamed::TNamed(), type, TObjArray::UncheckedAt(), and TObject::Warning().
Referenced by DefinedVariable().
TLeaf * TTreeFormula::GetLeafWithDatamember | ( | const char * | topchoice, | |
const char * | nextchice, | |||
Long64_t | readentry | |||
) | const [protected] |
Definition at line 2993 of file TTreeFormula.cxx.
References xmlio::Class, TFormLeafInfo::fNext, fQuickLoad, fTree, TLeaf::GetBranch(), TClass::GetClass(), TFormLeafInfo::GetClass(), TClonesArray::GetClass(), TStreamerElement::GetClassPointer(), TClass::GetCollectionProxy(), TVirtualStreamerInfo::GetElements(), TStreamerInfo::GetElems(), TTree::GetIteratorOnAllLeaves(), TBranch::GetListOfBranches(), TBranch::GetMother(), TClass::GetStreamerInfo(), TVirtualCollectionProxy::GetValueClass(), TFormLeafInfo::GetValuePointer(), info, TObject::InheritsFrom(), TLeaf::IsOnTerminalBranch(), kTRUE, TObjArray::Last(), and type.
Referenced by FindLeafForExpression().
Int_t TTreeFormula::ParseWithLeaf | ( | TLeaf * | leaf, | |
const char * | expression, | |||
Bool_t | final, | |||
UInt_t | paran_level, | |||
TObjArray & | castqueue, | |||
Bool_t | useLeafCollectionObject, | |||
const char * | fullExpression | |||
) | [protected] |
Definition at line 752 of file TTreeFormula.cxx.
References TObjArray::AddAt(), TObjArray::AddAtAndExpand(), TFormLeafInfo::AddOffset(), TString::Append(), TObjArray::At(), c, xmlio::Class, TString::Data(), TObject::Error(), EvalClass(), fCodes, fDataMembers, fHasCast, fHasMultipleVarDim, TString::First(), fLeafNames, fLeaves, fLookupType, fMultiplicity, fNcodes, TFormLeafInfo::fNext, fQuickLoad, fTree, funcname, TLeaf::GetBranch(), TClass::GetClass(), TClonesArray::GetClass(), TClass::GetClassInfo(), TStreamerElement::GetClassPointer(), TClass::GetCollectionProxy(), TVirtualStreamerInfo::GetElements(), TBranch::GetEntries(), TTree::GetFriendAlias(), TObjArray::GetLast(), TBranch::GetListOfBranches(), TFormLeafInfo::GetLocalValuePointer(), TBranch::GetMother(), TNamed::GetName(), TStreamerElement::GetNewType(), TTree::GetReadEntry(), TClass::GetReferenceProxy(), TClass::GetStreamerInfo(), TBranch::GetTree(), TTree::GetTree(), TTree::GetTreeIndex(), TVirtualCollectionProxy::GetType(), TVirtualCollectionProxy::GetValueClass(), TFormLeafInfo::GetValuePointer(), gInterpreter, TVirtualRefProxy::HasCounter(), i, info, TObject::InheritsFrom(), TClass::InheritsFrom(), TStreamerElement::IsaPointer(), IsLeafString(), TLeaf::IsOnTerminalBranch(), TFormLeafInfo::IsReference(), TStreamerInfo::kAny, TStreamerInfo::kAnyP, TStreamerInfo::kAnyp, TStreamerInfo::kBase, kDataMember, TFormula::kDefinedString, TFormula::kDefinedVariable, TMethodCall::kDouble, kFALSE, TMethodCall::kLong, kMaxLen, TStreamerInfo::kObject, TStreamerInfo::kObjectp, TStreamerInfo::kObjectP, TStreamerInfo::kOffsetL, TMethodCall::kOther, TStreamerInfo::kSTL, TStreamerInfo::kSTLp, TStreamerInfo::kStreamer, TStreamerInfo::kStreamLoop, TMethodCall::kString, TStreamerInfo::kTNamed, TStreamerInfo::kTObject, kTreeMember, kTRUE, TStreamerInfo::kTString, l, Long64_t, method, name, names, object, params, ptr, R__ASSERT, RegisterDimensions(), TString::Remove(), TFormLeafInfo::SetBranch(), TBranch::SetupAddresses(), snprintf, strlcpy(), SwitchToFormLeafInfo(), TNamed::TNamed(), top(), type, TObjArray::UncheckedAt(), TObject::Warning(), and what.
Referenced by DefinedVariable().
Int_t TTreeFormula::RegisterDimensions | ( | Int_t | code, | |
Int_t | size, | |||
TFormLeafInfoMultiVarDim * | multidim = 0 | |||
) | [protected] |
Definition at line 432 of file TTreeFormula.cxx.
References TList::Add(), fCumulSizes, fDimensionSetup, fNdimensions, TFormula::fNoper, and info.
Referenced by ParseWithLeaf(), and RegisterDimensions().
Int_t TTreeFormula::RegisterDimensions | ( | Int_t | code, | |
TBranchElement * | branch | |||
) | [protected] |
Definition at line 548 of file TTreeFormula.cxx.
References TObjArray::AddAtAndExpand(), TTreeFormulaManager::EnableMultiVarDims(), fDataMembers, fHasMultipleVarDim, fManager, fNdimensions, TBranchElement::GetBranchCount(), TBranchElement::GetBranchCount2(), info, kTRUE, R__ASSERT, and RegisterDimensions().
Int_t TTreeFormula::RegisterDimensions | ( | Int_t | code, | |
TFormLeafInfo * | info, | |||
TFormLeafInfo * | maininfo, | |||
Bool_t | useCollectionObject | |||
) | [protected] |
Definition at line 443 of file TTreeFormula.cxx.
References array, c, xmlio::Class, TFormLeafInfo::DeepCopy(), TTreeFormulaManager::EnableMultiVarDims(), TFormLeafInfo::fClass, TFormLeafInfo::fCounter, TFormLeafInfoMultiVarDim::fDim, TFormLeafInfo::fElement, fHasMultipleVarDim, fManager, fNdimensions, TFormLeafInfo::fNext, TStreamerElement::GetArrayDim(), TStreamerElement::GetClassPointer(), TClass::GetCollectionProxy(), TStreamerElement::GetMaxIndex(), TStreamerElement::GetNewType(), TClass::GetStreamerInfo(), TStreamerInfo::kCharStar, kMAXFORMDIM, R__ASSERT, RegisterDimensions(), and size.
Definition at line 576 of file TTreeFormula.cxx.
References xmlio::Class, fLookupType, TLeaf::GetBranch(), TNamed::GetName(), TNamed::GetTitle(), TStreamerInfo::kChar, TStreamerInfo::kCharStar, kDataMember, kFALSE, TStreamerInfo::kOffsetL, RegisterDimensions(), type, and TObject::Warning().
Definition at line 395 of file TTreeFormula.cxx.
References fNdimensions, kMAXFORMDIM, RegisterDimensions(), and size.
Definition at line 4305 of file TTreeFormula.cxx.
Definition at line 3277 of file TTreeFormula.cxx.
References TObjArray::At(), TArrayI::At(), d, TObject::Error(), EvalInstance(), fCumulSizes, TTreeFormulaManager::fCumulUsedSizes, TTreeFormulaManager::fCumulUsedVarDims, fDataMembers, fDidBooleanOptimization, fFixedSizes, fHasMultipleVarDim, fIndexes, fManager, TTreeFormulaManager::fMultiVarDim, fNdata, fNdimensions, TTreeFormulaManager::fUsedSizes, TTreeFormulaManager::fVarDims, fVarIndexes, TArrayI::GetArray(), GetRealInstance(), TArray::GetSize(), TNamed::GetTitle(), info, k, kFALSE, kMAXFORMDIM, kTRUE, and LoadBranches().
Referenced by EvalObject(), EvalStringInstance(), and GetRealInstance().
void TTreeFormula::LoadBranches | ( | ) | [protected] |
Bool_t TTreeFormula::LoadCurrentDim | ( | ) | [protected] |
void TTreeFormula::ResetDimensions | ( | ) | [protected] |
Definition at line 3516 of file TTreeFormula.cxx.
References xmlio::Class, fDataMembers, fLeaves, fLookupType, TClass::GetClass(), TStreamerElement::GetTypeName(), info, kDataMember, kDirect, kMethod, kTreeMember, and TObjArray::UncheckedAt().
Referenced by TProofDraw::CompileVariables(), TSelectorDraw::CompileVariables(), and TSelectorDraw::ProcessFillObject().
Definition at line 4487 of file TTreeFormula.cxx.
Reimplemented from TFormula.
Definition at line 4542 of file TTreeFormula.cxx.
Referenced by DefineAlternate(), DefinedVariable(), TTreeTableInterface::GetValue(), TTreeTableInterface::GetValueAsString(), and TGL5DDataSet::TGL5DDataSet().
void TTreeFormula::Convert | ( | UInt_t | fromVersion | ) | [protected, virtual] |
TTreeFormula& TTreeFormula::operator= | ( | const TTreeFormula & | ) | [private] |
Reimplemented from TFormula.
Definition at line 2596 of file TTreeFormula.cxx.
References TTreeFormulaManager::Add(), TObjArray::AddAtAndExpand(), xmlio::Class, TString::Data(), DefineAlternate(), elist, TObject::Error(), fAliases, fAliasesUsed, fCodes, fExternalCuts, fIndexes, FindLeafForExpression(), TCollection::FindObject(), fLookupType, fManager, fNcodes, TFormula::fNoper, TFormula::fNpar, fTree, fVarIndexes, gDirectory, TDirectory::Get(), TTree::GetAlias(), TLeaf::GetBranch(), TROOT::GetListOfSpecials(), TGraph::GetN(), TNamed::GetName(), TFormula::GetNdim(), TCutG::GetObjectX(), TCutG::GetObjectY(), TCutG::GetVarX(), TCutG::GetVarY(), TGraph::GetX(), gROOT, i, TObject::InheritsFrom(), IsString(), j, k, kAlias, kAliasString, TFormula::kDefinedVariable, kDoNotProcess, kEntries, kEntryList, kFALSE, kIndexOfEntry, kIndexOfLocalEntry, kIteration, kLength, kLengthFunc, kMax, kMAXFORMDIM, kMaxLen, kMin, kNeedEntries, kSum, lenfunc, max, min, n, name, ParseWithLeaf(), TObject::SetBit(), TCutG::SetObjectX(), TCutG::SetObjectY(), strlcpy(), TObject::TestBit(), TTreeFormula(), and x.
TClass * TTreeFormula::EvalClass | ( | ) | const [virtual] |
Definition at line 3503 of file TTreeFormula.cxx.
References fNcodes, and TFormula::fNoper.
Referenced by ParseWithLeaf().
Definition at line 3825 of file TTreeFormula.cxx.
Referenced by TSpider::AddVariable(), TMVA::DataSetFactory::BuildEventVector(), TMultiLayerPerceptron::ComputeDEDw(), EvalStringInstance(), FindMin(), TNeuron::GetBranch(), TChainIndex::GetEntryNumberFriend(), TTreeIndex::GetEntryNumberFriend(), TMultiLayerPerceptron::GetError(), GetRealInstance(), TTreeTableInterface::GetValue(), TTreeTableInterface::GetValueAsString(), TSelectorEntries::Process(), TSelectorDraw::ProcessFillMultiple(), TSelectorDraw::ProcessFillObject(), TProofDraw::ProcessSingle(), and TTreeIndex::TTreeIndex().
const char * TTreeFormula::EvalStringInstance | ( | Int_t | i = 0 |
) | [virtual] |
Definition at line 3619 of file TTreeFormula.cxx.
References EvalInstance(), fLeaves, fLookupType, fNcodes, fNdata, fNeedLoading, TFormula::fNoper, fQuickLoad, TLeaf::GetBranch(), GetLeafInfo(), TTree::GetReadEntry(), GetRealInstance(), TBranch::GetTree(), TFormLeafInfo::GetValuePointer(), TLeaf::GetValuePointer(), IsString(), kDirect, kFALSE, and TObjArray::UncheckedAt().
Referenced by TTreeTableInterface::GetValueAsString().
void * TTreeFormula::EvalObject | ( | Int_t | i = 0 |
) | [virtual] |
Definition at line 3564 of file TTreeFormula.cxx.
References fAxis, fDataMembers, fLeaves, fLookupType, fNcodes, fNdata, fNeedLoading, TFormula::fNoper, fQuickLoad, TLeaf::GetBranch(), TNamed::GetName(), TTree::GetReadEntry(), GetRealInstance(), TBranch::GetTree(), TLeaf::GetValuePointer(), GetValuePointerFromMethod(), kDataMember, kDirect, kEntries, kEntryList, kFALSE, kIndexOfEntry, kIndexOfLocalEntry, kIteration, kLength, kLengthFunc, kMethod, kTreeMember, TObjArray::UncheckedAt(), and TObject::Warning().
Referenced by TSelectorDraw::ProcessFillObject().
TFormLeafInfo * TTreeFormula::GetLeafInfo | ( | Int_t | code | ) | const |
Definition at line 4259 of file TTreeFormula.cxx.
Referenced by ROOT::TTreeProxyGenerator::AnalyzeElement(), and EvalStringInstance().
TTreeFormulaManager* TTreeFormula::GetManager | ( | ) | const [inline] |
Definition at line 175 of file TTreeFormula.h.
References fManager.
Referenced by DefineAlternate().
TMethodCall * TTreeFormula::GetMethodCall | ( | Int_t | code | ) | const |
Definition at line 4282 of file TTreeFormula.cxx.
virtual Int_t TTreeFormula::GetMultiplicity | ( | ) | const [inline, virtual] |
Definition at line 177 of file TTreeFormula.h.
References fMultiplicity.
Referenced by TSelectorDraw::Begin(), DefineDimensions(), TSelectorEntries::SlaveBegin(), and TTreeFormulaManager::Sync().
Definition at line 4272 of file TTreeFormula.cxx.
Referenced by ROOT::TTreeProxyGenerator::AnalyzeElement(), TMVA::DataSetFactory::ChangeToNewTree(), and THbookFile::InitLeaves().
virtual Int_t TTreeFormula::GetNcodes | ( | ) | const [inline, virtual] |
Definition at line 179 of file TTreeFormula.h.
References fNcodes.
Referenced by TMVA::DataSetFactory::ChangeToNewTree(), and THbookFile::InitLeaves().
Int_t TTreeFormula::GetNdata | ( | ) | [virtual] |
Definition at line 4295 of file TTreeFormula.cxx.
Referenced by TSpider::AddVariable(), TMVA::DataSetFactory::BuildEventVector(), TMVA::DataSetFactory::CheckTTreeFormula(), DefineDimensions(), FindMin(), TTreeTableInterface::InitEntries(), TSpider::InitVariables(), TSelectorEntries::Process(), TSpider::SetCurrentEntries(), and TNeuron::UseBranch().
Definition at line 4432 of file TTreeFormula.cxx.
Referenced by TTreePlayer::DrawSelect(), and Init().
Bool_t TTreeFormula::IsQuickLoad | ( | ) | const [inline] |
Bool_t TTreeFormula::IsString | ( | ) | const [virtual] |
virtual Bool_t TTreeFormula::Notify | ( | ) | [inline, virtual] |
Reimplemented from TObject.
Definition at line 189 of file TTreeFormula.h.
References kTRUE, and UpdateFormulaLeaves().
char * TTreeFormula::PrintValue | ( | Int_t | mode = 0 |
) | const [virtual] |
Definition at line 4630 of file TTreeFormula.cxx.
Referenced by TTreePlayer::Query(), and TTreePlayer::Scan().
char * TTreeFormula::PrintValue | ( | Int_t | mode, | |
Int_t | instance, | |||
const char * | decform = "9.9" | |||
) | const [virtual] |
Definition at line 4642 of file TTreeFormula.cxx.
void TTreeFormula::SetAxis | ( | TAxis * | axis = 0 |
) | [virtual] |
void TTreeFormula::SetQuickLoad | ( | Bool_t | quick | ) | [inline] |
Definition at line 193 of file TTreeFormula.h.
References fQuickLoad.
Referenced by TProofDraw::CompileVariables(), TSelectorDraw::CompileVariables(), TTreeIndex::GetMajorFormula(), TTreeIndex::GetMajorFormulaParent(), TChainIndex::GetMajorFormulaParent(), TTreeIndex::GetMinorFormula(), TTreeIndex::GetMinorFormulaParent(), TChainIndex::GetMinorFormulaParent(), and TSelectorEntries::SlaveBegin().
virtual void TTreeFormula::SetTree | ( | TTree * | tree | ) | [inline, virtual] |
Definition at line 194 of file TTreeFormula.h.
References fTree.
Referenced by TTreeIndex::GetMajorFormulaParent(), TChainIndex::GetMajorFormulaParent(), TTreeIndex::GetMinorFormulaParent(), TChainIndex::GetMinorFormulaParent(), TTreeIndex::UpdateFormulaLeaves(), and TChainIndex::UpdateFormulaLeaves().
void TTreeFormula::ResetLoading | ( | ) | [virtual] |
Definition at line 4784 of file TTreeFormula.cxx.
virtual TTree* TTreeFormula::GetTree | ( | ) | const [inline, virtual] |
Definition at line 196 of file TTreeFormula.h.
References fTree.
Referenced by TTreeIndex::GetMajorFormulaParent(), TChainIndex::GetMajorFormulaParent(), TTreeIndex::GetMinorFormulaParent(), and TChainIndex::GetMinorFormulaParent().
void TTreeFormula::UpdateFormulaLeaves | ( | ) | [virtual] |
Definition at line 4890 of file TTreeFormula.cxx.
Referenced by TTreeIndex::GetMajorFormulaParent(), TChainIndex::GetMajorFormulaParent(), TTreeIndex::GetMinorFormulaParent(), TChainIndex::GetMinorFormulaParent(), Init(), TSelectorDraw::Notify(), TSelectorEntries::Notify(), Notify(), TTreeIndex::TTreeIndex(), TTreeIndex::UpdateFormulaLeaves(), and TChainIndex::UpdateFormulaLeaves().
void TTreeFormula::Init | ( | const char * | name, | |
const char * | formula | |||
) | [protected] |
Bool_t TTreeFormula::BranchHasMethod | ( | TLeaf * | leaf, | |
TBranch * | branch, | |||
const char * | method, | |||
const char * | params, | |||
Long64_t | readentry | |||
) | const [protected] |
Int_t TTreeFormula::DefineAlternate | ( | const char * | expression | ) | [protected] |
void TTreeFormula::DefineDimensions | ( | Int_t | code, | |
Int_t | size, | |||
TFormLeafInfoMultiVarDim * | info, | |||
Int_t & | virt_dim | |||
) | [protected] |
Int_t TTreeFormula::FindLeafForExpression | ( | const char * | expression, | |
TLeaf *& | leaf, | |||
TString & | leftover, | |||
Bool_t & | final, | |||
UInt_t & | paran_level, | |||
TObjArray & | castqueue, | |||
std::vector< std::string > & | aliasUsed, | |||
Bool_t & | useLeafCollectionObject, | |||
const char * | fullExpression | |||
) | [protected] |
TLeaf* TTreeFormula::GetLeafWithDatamember | ( | const char * | topchoice, | |
const char * | nextchice, | |||
Long64_t | readentry | |||
) | const [protected] |
Int_t TTreeFormula::ParseWithLeaf | ( | TLeaf * | leaf, | |
const char * | expression, | |||
Bool_t | final, | |||
UInt_t | paran_level, | |||
TObjArray & | castqueue, | |||
Bool_t | useLeafCollectionObject, | |||
const char * | fullExpression | |||
) | [protected] |
Int_t TTreeFormula::RegisterDimensions | ( | Int_t | code, | |
Int_t | size, | |||
TFormLeafInfoMultiVarDim * | multidim = 0 | |||
) | [protected] |
Int_t TTreeFormula::RegisterDimensions | ( | Int_t | code, | |
TBranchElement * | branch | |||
) | [protected] |
Int_t TTreeFormula::RegisterDimensions | ( | Int_t | code, | |
TFormLeafInfo * | info, | |||
TFormLeafInfo * | maininfo, | |||
Bool_t | useCollectionObject | |||
) | [protected] |
virtual Double_t TTreeFormula::GetValueFromMethod | ( | Int_t | i, | |
TLeaf * | leaf | |||
) | const [protected, virtual] |
virtual void* TTreeFormula::GetValuePointerFromMethod | ( | Int_t | i, | |
TLeaf * | leaf | |||
) | const [protected, virtual] |
void TTreeFormula::LoadBranches | ( | ) | [protected] |
Bool_t TTreeFormula::LoadCurrentDim | ( | ) | [protected] |
void TTreeFormula::ResetDimensions | ( | ) | [protected] |
Reimplemented from TFormula.
Reimplemented from TFormula.
TTreeFormula& TTreeFormula::operator= | ( | const TTreeFormula & | ) | [private] |
Reimplemented from TFormula.
virtual TClass* TTreeFormula::EvalClass | ( | ) | const [virtual] |
virtual Double_t TTreeFormula::EvalInstance | ( | Int_t | i = 0 , |
|
const char * | stringStack[] = 0 | |||
) | [virtual] |
virtual const char* TTreeFormula::EvalStringInstance | ( | Int_t | i = 0 |
) | [virtual] |
virtual void* TTreeFormula::EvalObject | ( | Int_t | i = 0 |
) | [virtual] |
TFormLeafInfo* TTreeFormula::GetLeafInfo | ( | Int_t | code | ) | const |
TTreeFormulaManager* TTreeFormula::GetManager | ( | ) | const [inline] |
TMethodCall* TTreeFormula::GetMethodCall | ( | Int_t | code | ) | const |
virtual Int_t TTreeFormula::GetMultiplicity | ( | ) | const [inline, virtual] |
virtual Int_t TTreeFormula::GetNcodes | ( | ) | const [inline, virtual] |
virtual Int_t TTreeFormula::GetNdata | ( | ) | [virtual] |
Bool_t TTreeFormula::IsQuickLoad | ( | ) | const [inline] |
virtual Bool_t TTreeFormula::IsString | ( | ) | const [virtual] |
virtual Bool_t TTreeFormula::Notify | ( | ) | [inline, virtual] |
Reimplemented from TObject.
Definition at line 189 of file TTreeFormula.h.
References kTRUE, and UpdateFormulaLeaves().
virtual char* TTreeFormula::PrintValue | ( | Int_t | mode = 0 |
) | const [virtual] |
virtual char* TTreeFormula::PrintValue | ( | Int_t | mode, | |
Int_t | instance, | |||
const char * | decform = "9.9" | |||
) | const [virtual] |
virtual void TTreeFormula::SetAxis | ( | TAxis * | axis = 0 |
) | [virtual] |
void TTreeFormula::SetQuickLoad | ( | Bool_t | quick | ) | [inline] |
virtual void TTreeFormula::SetTree | ( | TTree * | tree | ) | [inline, virtual] |
virtual void TTreeFormula::ResetLoading | ( | ) | [virtual] |
virtual TTree* TTreeFormula::GetTree | ( | ) | const [inline, virtual] |
virtual void TTreeFormula::UpdateFormulaLeaves | ( | ) | [virtual] |
TTreeFormulaManager [friend] |
Definition at line 66 of file TTreeFormula.h.
TTree* TTreeFormula::fTree [protected] |
Definition at line 92 of file TTreeFormula.h.
Referenced by DefineAlternate(), DefinedVariable(), FindLeafForExpression(), GetLeafWithDatamember(), GetTree(), Init(), ParseWithLeaf(), SetTree(), and TTreeFormula().
Short_t TTreeFormula::fCodes [protected] |
pointer to Tree
Definition at line 93 of file TTreeFormula.h.
Referenced by DefinedVariable(), Init(), ParseWithLeaf(), and TTreeFormula().
Int_t TTreeFormula::fNdata [protected] |
Definition at line 94 of file TTreeFormula.h.
Referenced by EvalObject(), EvalStringInstance(), GetRealInstance(), Init(), and TTreeFormula().
Int_t TTreeFormula::fNcodes [protected] |
This caches the physical number of element in the leaf or datamember.
Definition at line 95 of file TTreeFormula.h.
Referenced by DefinedVariable(), EvalClass(), EvalObject(), EvalStringInstance(), FindLeafForExpression(), GetNcodes(), Init(), ParseWithLeaf(), TTreeFormula(), and ~TTreeFormula().
Bool_t TTreeFormula::fHasCast [protected] |
Definition at line 96 of file TTreeFormula.h.
Referenced by TTreeFormulaManager::GetNdata(), Init(), ParseWithLeaf(), TTreeFormulaManager::Sync(), and TTreeFormula().
Int_t TTreeFormula::fMultiplicity [protected] |
Definition at line 97 of file TTreeFormula.h.
Referenced by GetMultiplicity(), TTreeFormulaManager::GetNdata(), Init(), ParseWithLeaf(), and TTreeFormula().
Int_t TTreeFormula::fNindex [protected] |
Int_t* TTreeFormula::fLookupType [protected] |
Definition at line 99 of file TTreeFormula.h.
Referenced by DefinedVariable(), EvalClass(), EvalObject(), EvalStringInstance(), Init(), ParseWithLeaf(), RegisterDimensions(), TTreeFormula(), and ~TTreeFormula().
TObjArray TTreeFormula::fLeaves [protected] |
Definition at line 100 of file TTreeFormula.h.
Referenced by EvalClass(), EvalObject(), EvalStringInstance(), FindLeafForExpression(), Init(), and ParseWithLeaf().
TObjArray TTreeFormula::fDataMembers [protected] |
List of leaf used in this formula.
Definition at line 101 of file TTreeFormula.h.
Referenced by EvalClass(), EvalObject(), GetRealInstance(), ParseWithLeaf(), RegisterDimensions(), and ~TTreeFormula().
TObjArray TTreeFormula::fMethods [protected] |
List of leaf data members.
Definition at line 102 of file TTreeFormula.h.
Referenced by ~TTreeFormula().
TObjArray TTreeFormula::fExternalCuts [protected] |
List of leaf method calls.
Definition at line 103 of file TTreeFormula.h.
Referenced by DefinedVariable().
TObjArray TTreeFormula::fAliases [protected] |
List of TCutG and TEntryList used in the formula.
Definition at line 104 of file TTreeFormula.h.
Referenced by DefineAlternate(), DefinedVariable(), Init(), and ~TTreeFormula().
TObjArray TTreeFormula::fLeafNames [protected] |
List of TTreeFormula for each alias used.
Definition at line 105 of file TTreeFormula.h.
Referenced by FindLeafForExpression(), ParseWithLeaf(), and ~TTreeFormula().
TObjArray TTreeFormula::fBranches [protected] |
Bool_t TTreeFormula::fQuickLoad [protected] |
List of branches to read. Similar to fLeaces but duplicates are zeroed out.
Definition at line 107 of file TTreeFormula.h.
Referenced by BranchHasMethod(), EvalObject(), EvalStringInstance(), GetLeafWithDatamember(), IsQuickLoad(), ParseWithLeaf(), and SetQuickLoad().
Bool_t TTreeFormula::fNeedLoading [protected] |
If true, branch GetEntry is only called when the entry number changes.
Definition at line 108 of file TTreeFormula.h.
Referenced by EvalObject(), and EvalStringInstance().
Int_t TTreeFormula::fNdimensions [protected] |
If true, the current entry has not been loaded yet.
Definition at line 110 of file TTreeFormula.h.
Referenced by DefineDimensions(), GetRealInstance(), Init(), RegisterDimensions(), TTreeFormula(), and ~TTreeFormula().
Int_t TTreeFormula::fFixedSizes [protected] |
UChar_t TTreeFormula::fHasMultipleVarDim [protected] |
Definition at line 112 of file TTreeFormula.h.
Referenced by GetRealInstance(), Init(), ParseWithLeaf(), RegisterDimensions(), and TTreeFormula().
Int_t TTreeFormula::fCumulSizes [protected] |
Definition at line 115 of file TTreeFormula.h.
Referenced by DefineDimensions(), GetRealInstance(), Init(), RegisterDimensions(), and TTreeFormula().
Int_t TTreeFormula::fIndexes [protected] |
Definition at line 116 of file TTreeFormula.h.
Referenced by DefineDimensions(), DefinedVariable(), GetRealInstance(), Init(), and TTreeFormula().
TTreeFormula* TTreeFormula::fVarIndexes[kMAXCODES][kMAXFORMDIM] [protected] |
Definition at line 117 of file TTreeFormula.h.
Referenced by DefineDimensions(), DefinedVariable(), GetRealInstance(), Init(), TTreeFormula(), and ~TTreeFormula().
TAxis* TTreeFormula::fAxis [protected] |
Definition at line 119 of file TTreeFormula.h.
Referenced by EvalObject(), Init(), and TTreeFormula().
Bool_t TTreeFormula::fDidBooleanOptimization [protected] |
pointer to histogram axis if this is a string
Definition at line 120 of file TTreeFormula.h.
Referenced by GetRealInstance().
TTreeFormulaManager* TTreeFormula::fManager [protected] |
True if we executed one boolean optimization since the last time instance number 0 was evaluated.
Definition at line 121 of file TTreeFormula.h.
Referenced by TTreeFormulaManager::Add(), DefineDimensions(), DefinedVariable(), GetManager(), GetRealInstance(), Init(), RegisterDimensions(), TTreeFormula(), and ~TTreeFormula().
TList* TTreeFormula::fDimensionSetup [protected] |
The dimension coordinator.
Definition at line 124 of file TTreeFormula.h.
Referenced by Init(), RegisterDimensions(), and ~TTreeFormula().
std::vector<std::string> TTreeFormula::fAliasesUsed [protected] |
list of dimension setups, for delayed creation of the dimension information.
Definition at line 125 of file TTreeFormula.h.
Referenced by DefinedVariable().
TTree* TTreeFormula::fTree [protected] |
Definition at line 92 of file TTreeFormula.h.
Int_t* TTreeFormula::fLookupType [protected] |
Definition at line 99 of file TTreeFormula.h.
TTreeFormula* TTreeFormula::fVarIndexes[kMAXCODES][kMAXFORMDIM] [protected] |
Definition at line 117 of file TTreeFormula.h.
TAxis* TTreeFormula::fAxis [protected] |
Definition at line 119 of file TTreeFormula.h.
TTreeFormulaManager* TTreeFormula::fManager [protected] |
True if we executed one boolean optimization since the last time instance number 0 was evaluated.
Definition at line 121 of file TTreeFormula.h.
TList* TTreeFormula::fDimensionSetup [protected] |
std::vector<std::string> TTreeFormula::fAliasesUsed [protected] |
list of dimension setups, for delayed creation of the dimension information.
Definition at line 125 of file TTreeFormula.h.