]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGLF/FORWARD/GEO/AliAnalysisTaskZDCPbPb.h
Merge remote-tracking branch 'origin/flatdev' into mergeFlat2Master
[u/mrichter/AliRoot.git] / PWGLF / FORWARD / GEO / AliAnalysisTaskZDCPbPb.h
1 #ifndef ALIANALYSISTASKZDCPBPB_H
2 #define ALIANALYSISTASKZDCPBPB_H
3
4 /* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 //*****************************************************
8 //   Class AliAnalysisTaskZDCPbPb
9 //   author: Chiara Oppedisano
10 //*****************************************************
11
12 #include "AliAnalysisTaskSE.h"
13
14 class TROOT;
15 class TSystem;
16 class TList;
17 class TFile;
18 class TH1F;
19 class TH2F;
20
21 #include "AliAnalysisTaskSE.h"
22
23 class AliAnalysisTaskZDCPbPb : public AliAnalysisTaskSE {
24
25  public:
26   
27   enum kAnalysisInput{kESD=1, kAOD=2}; 
28   
29   AliAnalysisTaskZDCPbPb();
30   AliAnalysisTaskZDCPbPb(const char *name);
31   AliAnalysisTaskZDCPbPb& operator= (const AliAnalysisTaskZDCPbPb& ana);
32   AliAnalysisTaskZDCPbPb(const AliAnalysisTaskZDCPbPb& c);
33   virtual ~AliAnalysisTaskZDCPbPb();
34
35   // Implementation of interface methods
36   virtual void UserCreateOutputObjects();
37   virtual void UserExec(Option_t *option);
38   virtual void Terminate(Option_t *option);
39
40   virtual void  SetDebugLevel(Int_t level) {fDebug = level;}
41   void SetInput(int input) {fAnalysisInput = input;}
42   void SetMCInput() {fIsMCInput = kTRUE;}
43   void SetCentralityRange(Float_t centrlow=0., Float_t centrup=100.) {fCentrLowLim=centrlow;
44   fCentrUpLim=centrup;}
45   void SetCentralityEstimator(TString centrest = "V0M") {fCentrEstimator=centrest;}              
46  
47  private:
48   
49   Int_t    fAnalysisInput;      // analysis input
50   Bool_t   fIsMCInput;          // true when input is MC
51   Float_t  fCentrLowLim;        // centrality lower limit
52   Float_t  fCentrUpLim;         // centrality upper limit
53   TString  fCentrEstimator;     // string for the centrality estimator   
54   //
55   TList   *fOutput;             //! list send on output slot 0
56   //
57   TH1F *fhZNCPM[5];             //! ZNC PM high res.
58   TH1F *fhZNAPM[5];             //! ZNA PM high res.
59   TH1F *fhZPCPM[5];             //! ZPC PM high res.
60   TH1F *fhZPAPM[5];             //! ZPA PM high res.
61   TH1F *fhZEM[2];               //! ZEM PM high res.
62   TH1F *fhZNCPMlg[5];           //! ZNC PM low res.
63   TH1F *fhZNAPMlg[5];           //! ZNA PM low res.
64   TH1F *fhZPCPMlg[5];           //! ZPC PM low res.
65   TH1F *fhZPAPMlg[5];           //! ZPA PM low res.
66   TH1F *fhTDCraw[6];            //! raw TDC histos
67   TH1F *fhTDC[6];               //! corrected TDC histos
68   //
69   TH1F *fhZNCPMQiPMC[4];        //! PMQi/PMC for ZNC
70   TH1F *fhZNAPMQiPMC[4];        //! PMQi/PMC for ZNA
71   TH1F *fhZPCPMQiPMC[4];        //! PMQi/PMC for ZPC
72   TH1F *fhZPAPMQiPMC[4];        //! PMQi/PMC for ZPA
73   //
74   TH2F *fhZNCvsZNA;             //! ZNC vs ZNA;
75   TH2F *fhZPCvsZPA;             //! ZPC vs ZPA;
76   TH2F *fhZDCCvsZDCCA;          //! ZDCC vs ZDCCA
77   TH2F *fhZNCvsZPC;             //! ZNC vs ZPC;
78   TH2F *fhZNAvsZPA;             //! ZNA vs ZPA;
79   TH2F *fhZNvsZP;               //! ZNC+ZNA vs ZPC+ZPA;
80   TH2F *fhZNvsZEM;              //! ZN vs ZEM;
81   TH2F *fhZNvsZEMwV0M;          //! ZN vs ZEM weighted with V0M centr. perc.;
82   TH2F *fhZDCvsZEM;             //! ZDC vs ZEM;
83   TH2F *fhZDCvsZEMwV0M;         //! ZDC vs ZEM weighted with V0M centr. perc.;
84   TH2F *fhZNvsVZERO;            //! ZN vs VZERO;
85   TH2F *fhZDCvsVZERO;           //! ZDC vs VZERO;
86   TH2F *fhZDCvsTracklets;       //! ZDC vs N_tracklets;
87   TH2F *fhZDCvsNclu1;           //! ZDC vs N_cluster layer 1;
88   TH2F *fhVZEROvsZEM;           //! VZERO vs ZEM;
89   TH2F *fhDebunch;              //! Debunch;
90   TH2F *fhZNCcentroid;          //! ZNC centroid
91   TH2F *fhZNAcentroid;          //! ZNA centroid
92   TH2F *fhPMCvsPMQ[4];          //! PMC vs sum PMQi
93   //
94   TH1F *fhAsymm;                //! ZN asymmetry
95   TH2F *fhZNAvsAsymm;           //! ZNA vs asymmetry
96   TH2F *fhZNCvsAsymm;           //! ZNC vs asymmetry
97   //
98   TH2F *fhZNCvscentrality;      //! ZNC vs. centrality
99   TH2F *fhZNAvscentrality;      //! ZNA vs. centrality
100   TH2F *fhZPCvscentrality;      //! ZPC vs. centrality
101   TH2F *fhZPAvscentrality;      //! ZPA vs. centrality
102   //
103   TH2F *fhZNCpmcvscentr;        //! ZNC vs. centrality
104   TH2F *fhZNApmcvscentr;        //! ZNA vs. centrality
105   TH2F *fhZPCpmcvscentr;        //! ZPC vs. centrality
106   TH2F *fhZPApmcvscentr;        //! ZPA vs. centrality
107   //
108   TH1F *fhZNCpmcLR;             //! ZPA PMC low res. chain 
109   TH1F *fhZNApmcLR;             //! ZNA PMC low res. chain 
110   TH1F *fhZPCpmcLR;             //! ZPC  PMC low res. chain
111   TH1F *fhZPApmcLR;             //! ZPA PMC low res. chain
112  
113   ClassDef(AliAnalysisTaskZDCPbPb,3); 
114
115 };
116
117 #endif
118