don't lie in the log!
[u/mrichter/AliRoot.git] / PWGPP / VZERO / AliAnaVZEROEPFlatenning.h
1 #ifndef AliAnaVZEROEPFlatenning_cxx
2 #define AliAnaVZEROEPFlatenning_cxx
3
4 class AliVEvent;
5
6 #include "AliAnalysisTaskSE.h"
7
8 class AliAnaVZEROEPFlatenning : public AliAnalysisTaskSE {
9  public:
10   AliAnaVZEROEPFlatenning();
11   AliAnaVZEROEPFlatenning(const char *name);
12   virtual ~AliAnaVZEROEPFlatenning() {}
13   
14   virtual void   UserCreateOutputObjects();
15   virtual void   UserExec(Option_t *option);
16   virtual void   Terminate(Option_t *);
17
18   virtual void Init();
19
20   void SetMBTrigName(const char *name = "CPBI") {fMBTrigName = name;}
21   void SetUsePhysSel(Bool_t usePhysSel) {fUsePhysSel = usePhysSel;}
22   void SetInput(const char *filename);
23
24   Double_t CalculateVZEROEventPlane(const AliVEvent *  event, Int_t ring, Float_t centrality, Double_t &qxTierce, Double_t &qyTierce) const;
25
26  private:
27   AliVEvent   *fEvent;    //! ESD ot AOD object
28   TList       *fOutputList; //! Output list
29
30   TString fMBTrigName; // MB trigger name (for evt sel)
31   Bool_t  fUsePhysSel; // Use or not phys sel
32
33   TProfile *fX2[11]; //! Profile histogram for Q^2_x
34   TProfile *fY2[11]; //! Profile histogram for Q^2_y
35   TProfile *fX2Y2[11]; //! Profile histogram for Q^2_x*Q^2_y
36   TProfile *fCos8Psi[11]; //! Profile histogram for Cos(8*Psi)
37   TProfile *fC2[8]; //! Profile histogram for Cos(2*phi)
38   TProfile *fS2[8]; //! Profile histogram for Sin(2*phi)
39   TProfile *fC4[8]; //! Profile histogram for Cos(4*phi)
40   TProfile *fS4[8]; //! Profile histogram for Sin(4*phi)
41   TProfile *fX2Corr[11]; //! Profile histogram for Q^2_x
42   TProfile *fY2Corr[11]; //! Profile histogram for Q^2_y
43   TProfile *fX2Y2Corr[11]; //! Profile histogram for Q^2_x*Q^2_y
44
45   TProfile *fX2In[8]; // Profile histogram for Q^2_x (read from input file)
46   TProfile *fY2In[8]; // Profile histogram for Q^2_y (read from input file)
47   TProfile *fX2Y2In[8]; // Profile histogram for Q^2_x*Q^2_y (read from input file)
48   TProfile *fCos8PsiIn[8]; // Profile histogram for Cos(8*Psi) (read from input file)
49
50   TH2F *fPsiRingRawCentr[8]; //! Raw VZERO event plane vs centrality (ring-by-ring)
51   TH2F *fPsiRingFlatCentr[8]; //! Flatenned with corrections on cumulants VZERO event plane vs centrality (ring-by-ring)
52   TH2F *fPsiRingFlatFinalCentr[8]; //! Flatenned with corrections on cumulants and fourier VZERO event plane vs centrality (ring-by-ring)
53   TH2F *fPsiARawCentr; //! Raw VZEROA event plane vs centrality
54   TH2F *fPsiAFlatCentr; //! Flatenned with corrections on cumulants VZEROA event plane vs centrality 
55   TH2F *fPsiCRawCentr; //! Raw VZEROC event plane vs centrality
56   TH2F *fPsiCFlatCentr; //! Flatenned with corrections on cumulants VZEROC event plane vs centrality 
57   TH2F *fPsiACRawCentr; //! Raw VZERO event plane vs centrality
58   TH2F *fPsiACFlatCentr; //! Flatenned with corrections on cumulants VZERO event plane vs centrality 
59
60   AliAnaVZEROEPFlatenning(const AliAnaVZEROEPFlatenning&); // not implemented
61   AliAnaVZEROEPFlatenning& operator=(const AliAnaVZEROEPFlatenning&); // not implemented
62   
63   ClassDef(AliAnaVZEROEPFlatenning, 1); // VZERO analysis task for extraction EP flatenning params
64 };
65
66 #endif