]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG/FLOW/Base/AliFlowCommonHist.h
- HF can take now all kind of histograms
[u/mrichter/AliRoot.git] / PWG / FLOW / Base / AliFlowCommonHist.h
CommitLineData
f1d945a1 1/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
d65e0fea 4/* $Id:$ */
f1d945a1 5
2701c4bc 6#ifndef ALIFLOWCOMMONHIST_H
7#define ALIFLOWCOMMONHIST_H
f1d945a1 8
9// AliFlowCommonHist:
10// Description: Class to organise common histograms for Flow Analysis
7ffdc193 11// authors: N.K A.B R.S
f1d945a1 12
13
14class AliFlowEventSimple;
15class AliFlowTrackSimple;
16class TH1F;
44e060e0 17class TH2F;
f1d945a1 18class TH1D;
19class TProfile;
e35ddff0 20class TCollection;
21class TList;
04f6283b 22class TBrowser;
f1d945a1 23
20c03187 24class AliFlowCommonHist: public TNamed {
f1d945a1 25
26 public:
27
e35ddff0 28 AliFlowCommonHist();
62d19320 29 AliFlowCommonHist(const char *name,const char *title = "AliFlowCommonHist",Bool_t bookOnlyBasic = kFALSE);
f1d945a1 30 virtual ~AliFlowCommonHist();
04f6283b 31 AliFlowCommonHist(const AliFlowCommonHist& aSetOfHists);
f1d945a1 32
04f6283b 33 Bool_t IsFolder() const {return kTRUE;};
ef749f67 34 void Browse(TBrowser *b);
35 //merge function
36 virtual Double_t Merge(TCollection *aList);
37 //method to print stats
38 void Print(Option_t* option = "") const;
39
40 //fill method
41 Bool_t FillControlHistograms(AliFlowEventSimple* anEvent,TList *weightsList=NULL, Bool_t usePhiWeights=kFALSE, Bool_t usePtWeights=kFALSE, Bool_t useEtaWeights=kFALSE);
42
43 //getters
b7cb54d5 44 Double_t GetEntriesInPtBinRP(Int_t iBin); //gets entries from fHistPtRP
45 Double_t GetEntriesInPtBinPOI(Int_t iBin); //gets entries from fHistPtPOI
46 Double_t GetEntriesInEtaBinRP(Int_t iBin); //gets entries from fHistEtaRP
47 Double_t GetEntriesInEtaBinPOI(Int_t iBin); //gets entries from fHistEtaPOI
e8c3ff94 48 Double_t GetMeanPt(Int_t iBin); //gets the mean pt for this bin from fHistProMeanPtperBin
f1d945a1 49
b7cb54d5 50 TH1F* GetHistMultRP() {return fHistMultRP; } ;
1073c74a 51 TH1F* GetHistMultPOI() {return fHistMultPOI; } ;
52 TH2F* GetHistMultPOIvsRP() {return fHistMultPOIvsRP; } ;
b7cb54d5 53 TH1F* GetHistPtRP() {return fHistPtRP; } ;
44e060e0 54 TH1F* GetHistPtPOI() {return fHistPtPOI; } ;
55 TH1F* GetHistPtSub0() {return fHistPtSub0; } ;
56 TH1F* GetHistPtSub1() {return fHistPtSub1; } ;
b7cb54d5 57 TH1F* GetHistPhiRP() {return fHistPhiRP; } ;
58 TH1F* GetHistPhiPOI() {return fHistPhiPOI; } ;
44e060e0 59 TH1F* GetHistPhiSub0() {return fHistPhiSub0; } ;
60 TH1F* GetHistPhiSub1() {return fHistPhiSub1; } ;
b7cb54d5 61 TH1F* GetHistEtaRP() {return fHistEtaRP; } ;
44e060e0 62 TH1F* GetHistEtaPOI() {return fHistEtaPOI; } ;
63 TH1F* GetHistEtaSub0() {return fHistEtaSub0; } ;
64 TH1F* GetHistEtaSub1() {return fHistEtaSub1; } ;
65 TH2F* GetHistPhiEtaRP() {return fHistPhiEtaRP; } ;
66 TH2F* GetHistPhiEtaPOI() {return fHistPhiEtaPOI; } ;
b7cb54d5 67 TProfile* GetHistProMeanPtperBin() {return fHistProMeanPtperBin; } ;
ef749f67 68 TH2F* GetHistWeightvsPhi() {return fHistWeightvsPhi; } ;
a93de0f0 69 TH1F* GetHistQ() {return fHistQ; } ;
70 TH1F* GetHistAngleQ() {return fHistAngleQ; }
71 TH1F* GetHistAngleQSub0() {return fHistAngleQSub0; }
72 TH1F* GetHistAngleQSub1() {return fHistAngleQSub1; }
c109b8c7 73 TProfile* GetHarmonic() {return fHarmonic; } ;
74 TProfile* GetRefMultVsNoOfRPs() {return fRefMultVsNoOfRPs; } ;
5c09ff70 75 TH1F* GetHistRefMult() {return fHistRefMult; } ;
15725198 76 TH2F* GetHistMassPOI() {return fHistMassPOI; }
b7cb54d5 77 TList* GetHistList() {return fHistList;} ;
e35ddff0 78
ef749f67 79
f1d945a1 80 private:
81
20605536 82 AliFlowCommonHist& operator=(const AliFlowCommonHist& aSetOfHists);
83
f1d945a1 84 //define histograms here
85 //control histograms
62d19320 86 Bool_t fBookOnlyBasic; // book and fill only control histos needed for all methods
1073c74a 87 TH1F* fHistMultRP; // multiplicity for RP selection
88 TH1F* fHistMultPOI; // multiplicity for POI selection
89 TH2F* fHistMultPOIvsRP; // multiplicity for POI versus RP
90 TH1F* fHistPtRP; // pt distribution for RP selection
91 TH1F* fHistPtPOI; // pt distribution for POI selection
92 TH1F* fHistPtSub0; // pt distribution for subevent 0
93 TH1F* fHistPtSub1; // pt distribution for subevent 1
94 TH1F* fHistPhiRP; // phi distribution for RP selection
95 TH1F* fHistPhiPOI; // phi distribution for POI selection
96 TH1F* fHistPhiSub0; // phi distribution for subevent 0
97 TH1F* fHistPhiSub1; // phi distribution for subevent 1
98 TH1F* fHistEtaRP; // eta distribution for RP selection
99 TH1F* fHistEtaPOI; // eta distribution for POI selection
100 TH1F* fHistEtaSub0; // eta distribution for subevent 0
101 TH1F* fHistEtaSub1; // eta distribution for subevent 1
102 TH2F* fHistPhiEtaRP; // eta vs phi for RP selection
103 TH2F* fHistPhiEtaPOI; // eta vs phi for POI selection
104 TProfile* fHistProMeanPtperBin; // mean pt for each pt bin (for POI selection)
ef749f67 105 TH2F* fHistWeightvsPhi; // particle weight vs particle phi
1073c74a 106 TH1F* fHistQ; // Qvector distribution
107 TH1F* fHistAngleQ; // distribution of angle of Q vector
108 TH1F* fHistAngleQSub0; // distribution of angle of subevent 0 Q vector
109 TH1F* fHistAngleQSub1; // distribution of angle of subevent 1 Q vector
110 TProfile* fHarmonic; // harmonic
111 TProfile* fRefMultVsNoOfRPs; // <reference multiplicity> versus # of RPs
5c09ff70 112 TH1F* fHistRefMult; // reference multiplicity distribution
15725198 113 TH2F* fHistMassPOI; // mass distribution for POI selection
5c09ff70 114
1073c74a 115 TList* fHistList; // list to hold all histograms
116
15725198 117 ClassDef(AliFlowCommonHist,4) // macro for rootcint
f1d945a1 118};
0683b7d5 119#endif
120