]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG/FLOW/Base/AliFlowAnalysisWithLYZEventPlane.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWG / FLOW / Base / AliFlowAnalysisWithLYZEventPlane.h
1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
3
4 // AliFlowAnalysisWithLYZEventPlane:
5 // Class to do flow analysis with the event plane
6 // from the LYZ method
7 // author: N. van der Kolk (kolk@nikhef.nl)
8
9 /* $Id$ */
10
11 #ifndef ALIFLOWANALYSISWITHLYZEVENTPLANE_H
12 #define ALIFLOWANALYSISWITHLYZEVENTPLANE_H
13
14 class AliFlowEventSimple;
15 class AliFlowCommonHist;
16 class AliFlowCommonHistResults;
17 class AliFlowLYZEventPlane;
18
19 class TString;
20 class TProfile;
21 class TH1F;
22 class TList;
23
24 class AliFlowAnalysisWithLYZEventPlane {
25
26  public:
27
28   AliFlowAnalysisWithLYZEventPlane();                 //default constructor
29   virtual ~AliFlowAnalysisWithLYZEventPlane();        //destructor
30   
31   virtual void   Init();
32   virtual void   Make(AliFlowEventSimple* fEvent, AliFlowLYZEventPlane* fLYZEP);
33   virtual void   GetOutputHistograms(TList *outputListHistos); //get pointers to all output histograms (called before Finish()) 
34   virtual void   Finish();
35   void           WriteHistograms(TString* outputFileName);
36   void           WriteHistograms(TString outputFileName);
37   void           WriteHistograms(TDirectoryFile *outputFileName);
38
39   void      SetEventNumber(Int_t n)      { this->fEventNumber = n; }
40   Int_t     GetEventNumber() const       { return this->fEventNumber; }
41   void      SetQ2sum(Double_t d)         { this->fQ2sum = d; }
42   Double_t  GetQ2sum() const             { return this->fQ2sum; }
43
44   //output
45   TList* GetHistList() const     {return this->fHistList; }
46   AliFlowCommonHist* GetCommonHists() const  { return this->fCommonHists; }
47   void SetCommonHists(AliFlowCommonHist* const aCommonHist)  
48          { this->fCommonHists = aCommonHist; }
49   AliFlowCommonHistResults* GetCommonHistsRes() const  
50                               { return this->fCommonHistsRes; }
51   void SetCommonHistsRes(AliFlowCommonHistResults* const aCommonHistResult) 
52          { this->fCommonHistsRes = aCommonHistResult; }
53
54   // !!!!! make getters and setters for all histograms
55   TProfile*  GetSecondReDtheta() const {return this->fSecondReDtheta; } 
56   void       SetSecondReDtheta(TProfile* const aSecondReDtheta) 
57                { this->fSecondReDtheta = aSecondReDtheta; }
58   TProfile*  GetSecondImDtheta() const {return this->fSecondImDtheta; }
59   void       SetSecondImDtheta(TProfile* const aSecondImDtheta)
60                { this->fSecondImDtheta = aSecondImDtheta; }
61   TProfile*  GetFirstr0theta() const   {return this->fFirstr0theta; }
62   void       SetFirstr0theta(TProfile* const aFirstr0theta)
63                { this->fFirstr0theta = aFirstr0theta; }
64   
65   TProfile*  GetHistProVetaRP() const   {return this->fHistProVetaRP;}
66   void       SetHistProVetaRP(TProfile* const aHistProVetaRP)
67                { this->fHistProVetaRP =aHistProVetaRP; }
68   TProfile*  GetHistProVetaPOI() const  {return this->fHistProVetaPOI;} 
69   void       SetHistProVetaPOI(TProfile* const aHistProVetaPOI)
70                { this->fHistProVetaPOI = aHistProVetaPOI; } 
71   TProfile*  GetHistProVPtRP() const    {return this->fHistProVPtRP;}
72   void       SetHistProVPtRP(TProfile* const aHistProVPtRP)
73                { this->fHistProVPtRP =aHistProVPtRP; } 
74   TProfile*  GetHistProVPtPOI() const   {return this->fHistProVPtPOI;} 
75   void       SetHistProVPtPOI(TProfile* const aHistProVPtPOI)
76                { this->fHistProVPtPOI = aHistProVPtPOI; }      
77   TProfile*  GetHistProWr() const       {return this->fHistProWr; }
78   void       SetHistProWr(TProfile* const aHistProWr)
79                { this->fHistProWr = aHistProWr; }
80   TProfile*  GetHistProWrCorr() const {return this->fHistProWrCorr; }
81   void       SetHistProWrCorr(TProfile* const aHistProWrCorr)
82                { this->fHistProWrCorr = aHistProWrCorr; }
83   TH1F*      GetHistQsumforChi() const {return this->fHistQsumforChi; }
84   void       SetHistQsumforChi(TH1F* const aHistQsumforChi) 
85                { this->fHistQsumforChi = aHistQsumforChi; }
86   TH1F*      GetHistDeltaPhi()  const {return this->fHistDeltaPhi; }  
87   void       SetHistDeltaPhi(TH1F* const aHistDeltaPhi)
88                { this->fHistDeltaPhi = aHistDeltaPhi; }
89   TH1F*      GetHistDeltaPhi2() const {return this->fHistDeltaPhi2; } 
90   void       SetHistDeltaPhi2(TH1F* const aHistDeltaPhi2)
91                { this->fHistDeltaPhi2 = aHistDeltaPhi2; }
92   TH1F*      GetHistDeltaPhihere() const {return this->fHistDeltaPhihere; }
93   void       SetHistDeltaPhihere(TH1F* const aHistDeltaPhihere)
94                { this->fHistDeltaPhihere = aHistDeltaPhihere; }
95   TH1F*      GetHistPhiEP() const     {return this->fHistPhiEP; }   
96   void       SetHistPhiEP(TH1F* const aHistPhiEP)
97                { this->fHistPhiEP = aHistPhiEP; }  
98   TH1F*      GetHistPhiEPhere() const {return this->fHistPhiEPhere; }
99   void       SetHistPhiEPhere(TH1F* const aHistPhiEPhere)
100                { this->fHistPhiEPhere = aHistPhiEPhere; }       
101   TH1F*      GetHistPhiLYZ()  const   {return this->fHistPhiLYZ; }  
102   void       SetHistPhiLYZ(TH1F* const aHistPhiLYZ)
103                { this->fHistPhiLYZ = aHistPhiLYZ; }       
104   TH1F*      GetHistPhiLYZ2() const   {return this->fHistPhiLYZ2;}               
105   void       SetHistPhiLYZ2(TH1F* const aHistPhiLYZ2)
106                { this->fHistPhiLYZ2 = aHistPhiLYZ2; }
107
108   //input
109   void       SetSecondRunList(TList* const list) { this->fSecondRunList = list; }
110   TList*     GetSecondRunList()  const           { return this->fSecondRunList; }
111
112  private:
113
114   AliFlowAnalysisWithLYZEventPlane(const AliFlowAnalysisWithLYZEventPlane& aAnalysis);             // copy constructor
115   AliFlowAnalysisWithLYZEventPlane& operator=(const AliFlowAnalysisWithLYZEventPlane& aAnalysis);  // assignment operator
116
117   //histograms
118   TList*     fHistList;                       //list ro hold all histograms
119   TList*     fSecondRunList;                  //list from Second LYZ run output
120   
121   //input
122   TProfile*  fSecondReDtheta;                 // input profile
123   TProfile*  fSecondImDtheta;                 // input profile
124   TProfile*  fFirstr0theta;                   // input profile
125   
126   //output
127   TProfile*  fHistProVetaRP;                  // output
128   TProfile*  fHistProVetaPOI;                 // output
129   TProfile*  fHistProVPtRP;                   // output
130   TProfile*  fHistProVPtPOI;                  // output
131   TProfile*  fHistProWr;                      // output
132   TProfile*  fHistProWrCorr;                  // output
133   TH1F*      fHistQsumforChi;                 // output
134   TH1F*      fHistDeltaPhi;                   // output
135   TH1F*      fHistDeltaPhi2;                  // output
136   TH1F*      fHistDeltaPhihere;               // output
137   TH1F*      fHistPhiEP;                      // output
138   TH1F*      fHistPhiEPhere;                  // output
139   TH1F*      fHistPhiLYZ;                     // output
140   TH1F*      fHistPhiLYZ2;                    // output
141   
142   AliFlowCommonHist* fCommonHists;            // output
143   AliFlowCommonHistResults* fCommonHistsRes;  // output
144
145   Int_t     fEventNumber;                     // event counter
146
147   TVector2  *fQsum;                           // flow vector sum
148   Double_t  fQ2sum;                           // flow vector sum squared
149      
150
151   ClassDef(AliFlowAnalysisWithLYZEventPlane,0);          // lyz analysis 
152 };
153
154  #endif
155