1 #ifndef ALICENTRALITYSELECTIONTASK_H
2 #define ALICENTRALITYSELECTIONTASK_H
4 /* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
7 //*****************************************************
8 // Class AliCentralitySelectionTask
9 // author: Alberica Toia
10 //*****************************************************
12 #include "AliAnalysisTaskSE.h"
21 class AliESDtrackCuts;
23 class AliCentralitySelectionTask : public AliAnalysisTaskSE {
27 AliCentralitySelectionTask();
28 AliCentralitySelectionTask(const char *name);
29 AliCentralitySelectionTask& operator= (const AliCentralitySelectionTask& ana);
30 AliCentralitySelectionTask(const AliCentralitySelectionTask& c);
31 virtual ~AliCentralitySelectionTask();
33 // Implementation of interface methods
34 virtual void UserCreateOutputObjects();
35 virtual void UserExec(Option_t *option);
36 virtual void Terminate(Option_t *option);
38 virtual void SetDebugLevel(Int_t level) {fDebug = level;}
39 void SetInput(const char* input) {fAnalysisInput = input;}
40 void SetMCInput() {fIsMCInput = kTRUE;}
42 void ReadCentralityHistos(TString filename);
43 void ReadCentralityHistos2(TString filename);
47 Int_t SetupRun(AliESDEvent* esd);
49 Int_t fDebug; // Debug flag
50 TString fAnalysisInput; // "ESD", "AOD"
51 Bool_t fIsMCInput; // true when input is MC
52 TFile *fFile; // file that holds the centrality vs multiplicity 1d
53 TFile *fFile2; // file that holds the centrality vs multiplicity 2d
54 Int_t fCurrentRun; // current run number
55 Int_t fRunNo; // reference run number
57 AliESDtrackCuts* fTrackCuts; //! optional track cuts
59 Float_t fCentV0M; // percentile centrality from V0
60 Float_t fCentFMD; // percentile centrality from FMD
61 Float_t fCentTRK; // percentile centrality from tracks
62 Float_t fCentTKL; // percentile centrality from tracklets
63 Float_t fCentCL0; // percentile centrality from clusters in layer 0
64 Float_t fCentCL1; // percentile centrality from clusters in layer 0
65 Float_t fCentV0MvsFMD; // percentile centrality from V0 vs FMD
66 Float_t fCentTKLvsV0M; // percentile centrality from tracklets vs V0
67 Float_t fCentZEMvsZDC; // percentile centrality from ZEM vs ZDC
69 TH1F *fHtempV0M; // histogram with centrality vs multiplicity using V0
70 TH1F *fHtempFMD; // histogram with centrality vs multiplicity using FMD
71 TH1F *fHtempTRK; // histogram with centrality vs multiplicity using tracks
72 TH1F *fHtempTKL; // histogram with centrality vs multiplicity using tracklets
73 TH1F *fHtempCL0; // histogram with centrality vs multiplicity using clusters in layer 0
74 TH1F *fHtempCL1; // histogram with centrality vs multiplicity using clusters in layer 0
75 TH1F *fHtempV0MvsFMD; // histogram with centrality vs multiplicity using V0 vs FMD
76 TH1F *fHtempTKLvsV0M; // histogram with centrality vs multiplicity using tracklets vs V0
77 TH1F *fHtempZEMvsZDC; // histogram with centrality vs multiplicity using ZEM vs ZDC
79 TList *fOutputList; // output list
81 TH1F *fHOutCentV0M ; //control histogram for centrality
82 TH1F *fHOutCentFMD ; //control histogram for centrality
83 TH1F *fHOutCentTRK ; //control histogram for centrality
84 TH1F *fHOutCentTKL ; //control histogram for centrality
85 TH1F *fHOutCentCL0 ; //control histogram for centrality
86 TH1F *fHOutCentCL1 ; //control histogram for centrality
87 TH1F *fHOutCentV0MvsFMD; //control histogram for centrality
88 TH1F *fHOutCentTKLvsV0M; //control histogram for centrality
89 TH1F *fHOutCentZEMvsZDC; //control histogram for centrality
91 TH1F *fHOutMultV0M ; //control histogram for multiplicity
92 TH1F *fHOutMultV0R ; //control histogram for multiplicity
93 TH1F *fHOutMultFMD ; //control histogram for multiplicity
94 TH1F *fHOutMultTRK ; //control histogram for multiplicity
95 TH1F *fHOutMultTKL ; //control histogram for multiplicity
96 TH1F *fHOutMultCL0 ; //control histogram for multiplicity
97 TH1F *fHOutMultCL1 ; //control histogram for multiplicity
99 TH2F *fHOutMultV0MvsZDC; //control histogram for multiplicity
100 TH2F *fHOutMultZEMvsZDC; //control histogram for multiplicity
101 TH2F *fHOutMultV0MvsCL1; //control histogram for multiplicity
102 TH2F *fHOutMultV0MvsTRK; //control histogram for multiplicity
103 TH2F *fHOutMultTRKvsCL1; //control histogram for multiplicity
105 ClassDef(AliCentralitySelectionTask,1);