]>
Commit | Line | Data |
---|---|---|
e6f3f2fe | 1 | #ifndef ALIANALYSISTASKCENTRALITY_H |
2 | #define ALIANALYSISTASKCENTRALITY_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 AliAnalysisTaskCentrality | |
9 | // author: Alberica Toia | |
10 | //***************************************************** | |
11 | ||
12 | #include "AliAnalysisTaskSE.h" | |
13 | ||
14 | class TROOT; | |
15 | class TSystem; | |
16 | class TList; | |
17 | class TFile; | |
18 | class TH2F; | |
7fad691b | 19 | class TProfile; |
e6f3f2fe | 20 | |
21 | class AliAnalysisTaskCentrality : public AliAnalysisTaskSE { | |
22 | ||
23 | public: | |
24 | ||
25 | AliAnalysisTaskCentrality(); | |
26 | AliAnalysisTaskCentrality(const char *name); | |
27 | AliAnalysisTaskCentrality& operator= (const AliAnalysisTaskCentrality& ana); | |
28 | AliAnalysisTaskCentrality(const AliAnalysisTaskCentrality& c); | |
29 | virtual ~AliAnalysisTaskCentrality(); | |
30 | ||
31 | // Implementation of interface methods | |
32 | virtual void UserCreateOutputObjects(); | |
33 | virtual void UserExec(Option_t *option); | |
34 | virtual void Terminate(Option_t *option); | |
35 | ||
36 | virtual void SetDebugLevel(Int_t level) {fDebug = level;} | |
37 | void SetInput(const char* input) {fAnalysisInput = input;} | |
38 | void SetMCInput() {fIsMCInput = kTRUE;} | |
39 | ||
40 | ||
41 | private: | |
42 | ||
43 | Int_t fDebug; // Debug flag | |
44 | TString fAnalysisInput; // "ESD", "AOD" | |
45 | Bool_t fIsMCInput; // true when input is MC | |
46 | // | |
47 | TList *fOutput; //! list send on output slot 0 | |
7fad691b | 48 | TH1F *fhEzdc; //! |
49 | TH1F *fhEzem; //! | |
50 | TH1F *fhNtracks; //! | |
51 | TH1F *fhNtracklets; //! | |
52 | TH1F *fhNclusters0; //! | |
53 | TH1F *fhmultV0; //! | |
54 | TH1F *fhmultFMD; //! | |
55 | ||
56 | TProfile *fhEzemvsEzdc; //! | |
57 | TProfile *fhNtracksvsEzdc; //! | |
58 | TProfile *fhNtrackletsvsEzdc; //! | |
59 | TProfile *fhNclusters0vsEzdc; //! | |
60 | TProfile *fhmultV0vsEzdc; //! | |
61 | TProfile *fhmultFMDvsEzdc; //! | |
62 | TProfile *fhNtracksvsEzem; //! | |
63 | TProfile *fhNtrackletsvsEzem; //! | |
64 | TProfile *fhNclusters0vsEzem; //! | |
65 | TProfile *fhmultV0vsEzem; //! | |
66 | TProfile *fhmultFMDvsEzem; //! | |
67 | TProfile *fhNtracksvsmultV0; //! | |
68 | TProfile *fhNtrackletsvsmultV0; //! | |
69 | TProfile *fhNclusters0vsmultV0; //! | |
70 | TProfile *fhNtracksvsmultFMD; //! | |
71 | TProfile *fhNtrackletsvsmultFMD; //! | |
72 | TProfile *fhNclusters0vsmultFMD; //! | |
73 | TProfile *fhmultV0vsmultFMD; //! | |
e6f3f2fe | 74 | |
75 | Int_t fNev; // event counter | |
76 | Float_t fBeamEnergy; // beam energy | |
7fad691b | 77 | Int_t fNmyTracksgen; // no. generated primary charged tracks |
e6f3f2fe | 78 | char fTrigClass[100]; // fired trigger classes |
79 | // | |
80 | Double_t fxVertex; // X vertex from ITS | |
81 | Double_t fyVertex; // Y vertex from ITS | |
82 | Double_t fzVertex; // Z vertex from ITS | |
83 | Bool_t fVertexer3d; // Is vertex from 3d vertexer? | |
84 | // | |
85 | Double_t fbMC; // impact parameter from MC | |
86 | Int_t fNpartTargMC; // no. of participants for target nucleus from MC | |
87 | Int_t fNpartProjMC; // no. of participants for project nucleus from MC | |
88 | Int_t fNNColl; // Number of N-N collisions | |
89 | Int_t fNNwColl; // Number of N-Nwounded collisions | |
90 | Int_t fNwNColl; // Number of Nwounded-N collisons | |
91 | Int_t fNwNwColl; // Number of Nwounded-Nwounded collisions | |
92 | // | |
93 | Int_t fNTracklets; // no. tracklets | |
94 | Int_t fNSingleClusters; // no. single clusters | |
95 | Int_t fNClusters[6]; // no. clusters on 6 ITS layers | |
96 | Int_t fNChips[2]; // no. chips on 2 SPD layers | |
97 | // | |
98 | Double_t fbZDC; // impact parameter from ZDC reco | |
99 | Int_t fNpartZDC; // no. of participants from ZDC reco | |
100 | Double_t fbZDCA; // impact parameter from ZDC reco side A | |
101 | Int_t fNpartZDCA; // no. of part. from ZDC reco side A | |
102 | Double_t fbZDCC; // impact parameter from ZDC reco side C | |
103 | Int_t fNpartZDCC; // no. of part. from ZDC reco side C | |
104 | // | |
105 | UInt_t fESDFlag; // ZDC ESD flags | |
106 | Float_t fZNCEnergy; // ZNC Energy | |
107 | Float_t fZPCEnergy; // ZPC Energy | |
108 | Float_t fZNAEnergy; // ZNA Energy | |
109 | Float_t fZPAEnergy; // ZPA Energy | |
110 | Float_t fZEM1Energy; // ZEM1 Energy | |
111 | Float_t fZEM2Energy; // ZEM2 Energy | |
112 | Float_t fZNCtower[5]; // ZNC 5 tower signals | |
113 | Float_t fZPCtower[5]; // ZPC 5 tower signals | |
114 | Float_t fZNAtower[5]; // ZNA 5 tower signals | |
115 | Float_t fZPAtower[5]; // ZPA 5 tower signals | |
116 | Float_t fCentrZNC[2]; // centroid over ZNC | |
117 | Float_t fCentrZNA[2]; // centroid over ZNA | |
118 | ||
119 | Int_t fNTracks; // no. tracks | |
120 | Int_t fNPmdTracks; // no. PMD tracks | |
121 | Float_t fMultV0A; // multiplicity from V0 reco side A | |
122 | Float_t fMultV0C; // multiplicity from V0 reco side C | |
123 | Float_t fMultFMDA; // multiplicity from FMD on detector A | |
124 | Float_t fMultFMDC; // multiplicity from FMD on detector C | |
125 | ||
126 | ClassDef(AliAnalysisTaskCentrality,1); | |
e6f3f2fe | 127 | }; |
e6f3f2fe | 128 | #endif |