Escape special characters for latex (Diego)
[u/mrichter/AliRoot.git] / PWGPP / Centrality / AliAnalysisTaskHIMultCorr.h
1 //-*- Mode: C++ -*-
2
3 #ifndef ALIANALYSISTASKHIMULTCORR_H
4 #define ALIANALYSISTASKHIMULTCORR_H
5
6 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
7  * See cxx source for full Copyright notice                               */
8  
9 // Task for HI Multiplicity Correlation checks
10 // Authors: Jochen Thaeder <jochen@thaeder.de>
11
12 #include "AliAnalysisTaskSE.h"
13 #include "TList.h"
14 #include "TTreeStream.h"
15
16 class AliMultiplicityCorrelations;
17 class AliESDEvent;
18 class AliMCEvent;
19 class AliKineTrackCuts;
20 class AliTriggerAnalysis;
21
22 class AliAnalysisTaskHIMultCorr : public AliAnalysisTaskSE {
23
24  public:
25
26   /*
27    * ---------------------------------------------------------------------------------
28    *                            Constructor / Destructor
29    * ---------------------------------------------------------------------------------
30    */
31
32   AliAnalysisTaskHIMultCorr(const char *name = "AliAnalysisTaskHIMultCorr");
33   virtual ~AliAnalysisTaskHIMultCorr();
34   
35   /*
36    * ---------------------------------------------------------------------------------
37    *                                  Task Methods
38    * ---------------------------------------------------------------------------------
39    */
40
41   virtual void UserCreateOutputObjects();
42   virtual void UserExec(Option_t *option);
43   virtual void Terminate(Option_t *);
44   /*
45    * ---------------------------------------------------------------------------------
46    *                                    Setter
47    * ---------------------------------------------------------------------------------
48    */
49   void SetMaxVertexZ(Float_t vZ) {fMaxVertexZ = vZ;}
50   void SetUseCentrality(Int_t cent) {fUseCentralitySel = cent;}
51   void SetESDCuts(AliESDtrackCuts* cuts)  {fESDTrackCuts  = cuts;}
52   void SetESDCuts2(AliESDtrackCuts* cuts) {fESDTrackCuts2 = cuts;}
53   void SetIsMC() { fIsMC = kTRUE; }
54
55   ///////////////////////////////////////////////////////////////////////////////////
56
57  private:
58
59   AliAnalysisTaskHIMultCorr(const AliAnalysisTaskHIMultCorr&); // not implemented
60   AliAnalysisTaskHIMultCorr& operator=(const AliAnalysisTaskHIMultCorr&); // not implemented
61
62   /*
63    * ---------------------------------------------------------------------------------
64    *                            Setup Methods - private
65    * ---------------------------------------------------------------------------------
66    */
67
68   Bool_t SetupEvent();
69   Int_t GetCentralityBin();
70
71   /*
72    * ---------------------------------------------------------------------------------
73    *                             Members - private
74    * ---------------------------------------------------------------------------------
75    */
76   TTreeSRedirector *fpcstream;
77   
78   Bool_t           fIsMC;                        //!
79   
80   TH1F            *fHStat;                       //! cut statistics
81
82   TList           *fOutList;                     //! output data container
83
84   AliESDEvent     *fESD;                         //! ESD object
85   AliESDtrackCuts *fESDTrackCuts;                // ESD cuts  
86   AliESDtrackCuts *fESDTrackCuts2;               // ESD cuts 2 
87   
88   Int_t            fUseCentralitySel;            //  if 0 use none, 1 use VZERO - 2 use SPD
89   Int_t            fCentralityBin;               //  current centrality bin
90
91   Int_t            fCentralitySPDBin;            //  SPD centrality bin
92   Int_t            fCentralityVZEROBin;          //  VZERO centrality bin
93   Float_t          fCentralitySPD;               //  SPD centrality
94   Float_t          fCentralityVZERO;             //  VZERO centrality
95
96   Float_t          fMaxVertexZ;                  //  maxVertexZ
97
98   AliTriggerAnalysis          *fTriggerAnalysis; //! trigger analysis object;
99
100   AliMultiplicityCorrelations *fCorrObj;         //! correlations object
101   AliMultiplicityCorrelations *fCorrObjCent0;    //! correlations object - centrality  0 -   5
102   AliMultiplicityCorrelations *fCorrObjCent1;    //! correlations object - centrality 70 -  80
103   AliMultiplicityCorrelations *fCorrObjCent2;    //! correlations object - centrality 80 -  90
104
105   ClassDef(AliAnalysisTaskHIMultCorr, 1);
106 };
107
108 #endif