class TSelectorDraw: public TSelector


A specialized TSelector for TTree::Draw.

Function Members (Methods)

virtual voidTSelector::Abort(const char* why, TSelector::EAbort what = kAbortProcess)
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidBegin(TTree* tree)
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual TSelector::EAbortTSelector::GetAbort() const
virtual Int_tGetAction() const
virtual Bool_tGetCleanElist() const
virtual Int_tGetDimension() const
virtual Long64_tGetDrawFlag() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Int_tTSelector::GetEntry(Long64_t, Int_t = 0)
virtual const char*TObject::GetIconName() const
virtual TList*TSelector::GetInputList() const
Int_tGetMultiplicity() const
virtual const char*TObject::GetName() const
virtual Int_tGetNfill() const
TObject*GetObject() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
TH1*GetOldHistogram() const
virtual const char*TSelector::GetOption() const
virtual TList*TSelector::GetOutputList() const
TTreeFormula*GetSelect() const
virtual Long64_tGetSelectedRows() const
static TSelector*TSelector::GetSelector(const char* filename)
virtual Long64_tTSelector::GetStatus() const
virtual const char*TObject::GetTitle() const
TTree*GetTree() const
virtual UInt_tTObject::GetUniqueID() const
virtual Double_t*GetV1() const
virtual Double_t*GetV2() const
virtual Double_t*GetV3() const
virtual Double_t*GetV4() const
virtual Double_t*GetVal(Int_t i) const
TTreeFormula*GetVar(Int_t i) const
TTreeFormula*GetVar1() const
TTreeFormula*GetVar2() const
TTreeFormula*GetVar3() const
TTreeFormula*GetVar4() const
virtual Double_t*GetW() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTSelector::Init(TTree*)
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
static Bool_tTSelector::IsStandardDraw(const char* selec)
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tNotify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Bool_tProcess(Long64_t)
virtual Bool_tTSelector::ProcessCut(Long64_t)
virtual voidProcessFill(Long64_t entry)
virtual voidProcessFillMultiple(Long64_t entry)
virtual voidProcessFillObject(Long64_t entry)
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidTSelector::ResetAbort()
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidSetEstimate(Long64_t n)
virtual voidTSelector::SetInputList(TList* input)
virtual voidTSelector::SetObject(TObject* obj)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTSelector::SetOption(const char* option)
virtual voidTSelector::SetStatus(Long64_t status)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
virtual voidTSelector::SlaveBegin(TTree*)
virtual voidTSelector::SlaveTerminate()
virtual UInt_tSplitNames(const TString& varexp, vector<TString>& names)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
virtual voidTakeAction()
virtual voidTakeEstimate()
virtual voidTerminate()
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual intTSelector::Version() const
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual voidClearFormula()
virtual Bool_tCompileVariables(const char* varexp = "", const char* selection = "")
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual voidInitArrays(Int_t newsize)

Data Members

static TSelector::EAbortTSelector::kAbortFile
static TSelector::EAbortTSelector::kAbortProcess
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TSelector::EAbortTSelector::kContinue
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
TSelector::EAbortTSelector::fAbortAbort status
Int_tfAction! Action type
Bool_tfCleanElisttrue if original Tree elist must be saved
Long64_tfCurrentSubEntryCurrent subentry when fSelectMultiple is true. Used to fill TEntryListArray
Int_tfDimensionDimension of the current expression
Long64_tfDraw! Last entry loop number when object was drawn
Int_tfForceReadForce Read flag
TList*TSelector::fInputList of objects available during processing
TTreeFormulaManager*fManagerPointer to the formula manager
Int_tfMultiplicityIndicator of the variability of the size of entries
Int_t*fNbins![fDimension] Number of bins per dimension
Int_tfNfill! Total number of histogram fills
Bool_tfObjEvaltrue if fVar1 returns an object (or pointer to).
TObject*TSelector::fObject!Current object if processing object (vs. TTree)
Long64_tfOldEstimatevalue of Tree fEstimate when selector is called
TH1*fOldHistogram! Pointer to previously used histogram
TStringTSelector::fOptionOption given to TTree::Process
TSelectorList*TSelector::fOutput!List of objects created during processing
TTreeFormula*fSelectPointer to selection formula
Bool_tfSelectMultipletrue if selection has a variable index
Long64_tfSelectedRowsNumber of selected entries
Long64_tTSelector::fStatusSelector status
TTree*fTreePointer to current Tree
TObject*fTreeElistpointer to Tree Event list
TEntryListArray*fTreeElistArray! pointer to Tree Event list array
Double_t**fVal![fSelectedRows][fDimension] Local buffer for the variables
TTreeFormula**fVar![fDimension] Array of pointers to variables formula
Bool_t*fVarMultiple![fDimension] true if fVar[i] has a variable index
Double_t*fVmax![fDimension] Maxima of varexp columns
Double_t*fVmin![fDimension] Minima of varexp columns
Double_t*fW![fSelectedRows]Local buffer for weights
Double_tfWeightTree weight (see TTree::SetWeight)
static TSelectorDraw::(anonymous)kWarn

Class Charts

Inheritance Chart:

Function documentation

 Default selector constructor.
 Selector destructor.
void Begin(TTree* tree)
 Called everytime a loop on the tree(s) starts.
void ClearFormula()
 Delete internal buffers.
Bool_t CompileVariables(const char* varexp = "", const char* selection = "")
 Compile input variables and selection expression.

  varexp is an expression of the general form e1:e2:e3
    where e1,etc is a formula referencing a combination of the columns
     varexp = x  simplest case: draw a 1-Dim distribution of column named x
            = sqrt(x)         : draw distribution of sqrt(x)
            = x*y/z
            = y:sqrt(x) 2-Dim dsitribution of y versus sqrt(x)

  selection is an expression with a combination of the columns
      selection = "x<y && sqrt(z)>3.2"
       in a selection all the C++ operators are authorized

  Return kFALSE if any of the variable is not compilable.
Double_t* GetVal(Int_t i) const
 Return the last values corresponding to the i-th component
 of the formula being processed (where the component are ':' separated).
 The actual number of entries is:
     GetSelectedRows() % tree->GetEstimate()
 Note GetSelectedRows currently returns the actual number of values plotted
 and thus if the formula contains arrays, this number might be greater than
 the number of entries in the trees.
 By default TTree::Draw creates the arrays obtained
    with all GetVal and GetW with a length corresponding to the
    parameter fEstimate. By default fEstimate=10000 and can be modified
    via TTree::SetEstimate. A possible recipee is to do
    You must call SetEstimate if the expected number of selected rows
    is greater than 10000.
 See TTree::Draw for additional details.
TTreeFormula* GetVar(Int_t i) const
 Return the TTreeFormula corresponding to the i-th component
 of the request formula (where the component are ':' separated).
void InitArrays(Int_t newsize)
 Initialization of the primitive type arrays if the new size is bigger than the available space.
UInt_t SplitNames(const TString& varexp, vector<TString>& names)
 Build Index array for names in varexp.
 This will allocated a C style array of TString and Ints
Bool_t Notify()
 This function is called at the first entry of a new tree in a chain.
void ProcessFill(Long64_t entry)
 Called in the entry loop for all entries accepted by Select.
void ProcessFillMultiple(Long64_t entry)
 Called in the entry loop for all entries accepted by Select.
 Complex case with multiplicity.
void ProcessFillObject(Long64_t entry)
 Called in the entry loop for all entries accepted by Select.
 Case where the only variable returns an object (or pointer to).
void SetEstimate(Long64_t n)
 Set number of entries to estimate variable limits.
void TakeAction()
 Execute action for object obj fNfill times.
void TakeEstimate()
 Estimate limits for 1-D, 2-D or 3-D objects.
void Terminate()
 Called at the end of a loop on a TTree.
TSelectorDraw(const TSelectorDraw& )
TSelectorDraw& operator=(const TSelectorDraw& )
Int_t GetAction() const
{return fAction;}
Bool_t GetCleanElist() const
{return fCleanElist;}
Int_t GetDimension() const
{return fDimension;}
Long64_t GetDrawFlag() const
{return fDraw;}
TObject * GetObject() const
{return fObject;}
Int_t GetMultiplicity() const
{return fMultiplicity;}
Int_t GetNfill() const
{return fNfill;}
TH1 * GetOldHistogram() const
{return fOldHistogram;}
TTreeFormula * GetSelect() const
{return fSelect;}
Long64_t GetSelectedRows() const
{return fSelectedRows;}
TTree * GetTree() const
{return fTree;}
TTreeFormula * GetVar1() const
{return GetVar(0);}
TTreeFormula * GetVar2() const
{return GetVar(1);}
TTreeFormula * GetVar3() const
{return GetVar(2);}
TTreeFormula * GetVar4() const
{return GetVar(3);}
Double_t * GetV1() const
{return GetVal(0);}
Double_t * GetV2() const
{return GetVal(1);}
Double_t * GetV3() const
{return GetVal(2);}
Double_t * GetV4() const
{return GetVal(3);}
Double_t * GetW() const
{return fW;}
Bool_t Process(Long64_t )
{ return kFALSE; }