3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 //////////////////////////////////////////////////////////////////////////////
9 // Class AliTreeDraw //
11 // marian.ivanov@cern.ch //
12 //////////////////////////////////////////////////////////////////////////////
17 #include <TObjArray.h>
18 #include "TLinearFitter.h"
26 class AliTreeDraw: public TObject{
30 TTree * T() { return fTree;}
31 void SetTree(TTree *tree){fTree=tree;}
32 const TH1 * GetRes() const{ return (TH1*)fRes;}
33 const TH1 * GetMean() const{ return (TH1*)fMean;}
34 const TObjArray* GetPoints() const {return fPoints;}
36 void ClearPoints(){if (fPoints) fPoints->Clear();}
37 TString* FitPlane(const char* drawCommand, const char* formula, const char* cuts, Double_t & chi2, TVectorD &fitParam, TMatrixD &covMatrix, Int_t start=0, Int_t stop=10000000);
41 TH1F * DrawXY(const char * chx, const char *chy, const char* selection,
42 const char * quality,Int_t nbins, Float_t minx, Float_t maxx,
43 Float_t miny, Float_t maxy, Int_t nBinsRes=30);
44 TH1F * DrawLogXY(const char * chx, const char *chy, const char* selection,
45 const char * quality, Int_t nbins,Float_t minx, Float_t maxx,
46 Float_t miny, Float_t maxy, Int_t nBinsRes=30);
47 TH1F * Eff(const char *variable, const char* selection, const char * quality,
48 Int_t nbins,Float_t min, Float_t max);
49 TH1F * EffLog(const char *variable, const char* selection, const char * quality,
50 Int_t nbins,Float_t min, Float_t max);
52 void GetPoints3D(const char * label, const char * chpoints, const char* selection, TTree * tpoints, Int_t color=6, Float_t rmin=4.);
54 static void AliLabelAxes(TH1* histo, const char* xAxisTitle, const char* yAxisTitle);
55 static Double_t* CreateLogBins(Int_t nBins, Double_t xMin, Double_t xMax);
56 static TH1F* CreateEffHisto(TH1F* hGen, TH1F* hRec);
57 static TH1F* CreateResHisto(TH2F* hRes2, TH1F **phMean,
58 Bool_t drawBinFits = kTRUE,Bool_t overflowBinFits = kFALSE);
60 static TH1F* CreateResHistoI(TH2F* hRes2, TH1F **phMean, Int_t integ=0,
61 Bool_t drawBinFits = kTRUE);
62 static TH1F* CreateResHistoII(TH2F* hRes2, TH1F **phMean, Int_t integ=0,
63 Bool_t drawBinFits = kTRUE, Int_t cut=0);
68 AliTreeDraw(const AliTreeDraw& /*t*/):TObject(),fTree(0),fRes(0),fMean(0),fPoints(0){;}
69 AliTreeDraw & operator=(const AliTreeDraw & /*t*/){return *this;}
71 TTree * fTree; //the tree for visualization - NOT OWNER
72 TH1F * fRes; //temporary histogram - OWNER
73 TH1F * fMean; //temporary histogram - OWNER
74 TObjArray *fPoints;// - OWNER
75 ClassDef(AliTreeDraw,0)