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