]>
Commit | Line | Data |
---|---|---|
896d3200 | 1 | #ifndef AliAnalysisTaskPi0_cxx |
2 | #define AliAnalysisTaskPi0_cxx | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | /* $Id$ */ | |
7 | ||
8 | // Analysis task for pi0 and eta meson analysis in pp collisions | |
9 | // Authors: Yuri Kharlov, Dmitri Peressounko | |
10 | ||
11 | class TObjArray; | |
12 | class TH1F; | |
13 | class TH2I; | |
14 | class TH2F; | |
15 | class TH3F; | |
16 | class AliESDtrackCuts; | |
17 | class AliPHOSGeometry; | |
18 | class AliTriggerAnalysis; | |
19 | ||
20 | #include "TH2I.h" | |
21 | #include "AliAnalysisTaskSE.h" | |
22 | #include "AliLog.h" | |
23 | ||
24 | class AliAnalysisTaskPi0 : public AliAnalysisTaskSE { | |
25 | public: | |
26 | AliAnalysisTaskPi0(const char *name = "AliAnalysisTaskPi0"); | |
27 | virtual ~AliAnalysisTaskPi0() {} | |
28 | ||
29 | virtual void UserCreateOutputObjects(); | |
30 | virtual void UserExec(Option_t *option); | |
31 | virtual void Terminate(Option_t *); | |
32 | void SetBCgap(const Double_t bcgap) {fBCgap = bcgap;} | |
33 | void SetRecalib(const Int_t mod, const Double_t recalib) | |
34 | { | |
35 | if (mod<1 || mod>5) AliFatal(Form("Wrong module number: %d",mod)); | |
36 | else fRecalib[mod-1] = recalib; | |
37 | } | |
38 | void SetPHOSBadMap(Int_t mod,TH2I * h) | |
39 | { | |
40 | if(fPHOSBadMap[mod]) delete fPHOSBadMap[mod] ; | |
41 | fPHOSBadMap[mod]=new TH2I(*h) ; | |
42 | printf("Set %s \n",fPHOSBadMap[mod]->GetName()); | |
43 | } | |
44 | ||
45 | private: | |
46 | AliAnalysisTaskPi0(const AliAnalysisTaskPi0&); // not implemented | |
47 | AliAnalysisTaskPi0& operator=(const AliAnalysisTaskPi0&); // not implemented | |
48 | Bool_t IsGoodChannel(const char * det, Int_t mod,Int_t ix, Int_t iz); | |
49 | void FillHistogram(const char * key,Double_t x) const ; //Fill 1D histogram witn name key | |
50 | void FillHistogram(const char * key,Double_t x, Double_t y) const ; //Fill 2D histogram witn name key | |
51 | void FillHistogram(const char * key,Double_t x, Double_t y, Double_t z) const ; //Fill 3D histogram witn name key | |
52 | Bool_t TestLambda(Double_t l1,Double_t l2) ; | |
53 | Int_t TestBC(Double_t tof) ; | |
54 | ||
55 | private: | |
56 | AliESDtrackCuts *fESDtrackCuts; // Track cut | |
57 | TList * fOutputContainer; //final histogram container | |
58 | TList * fPHOSEvents[10][2] ; //Container for PHOS photons | |
59 | TClonesArray * fPHOSEvent ; //PHOS photons in current event | |
60 | ||
61 | Int_t fnCINT1B; // Number of CINT1B triggers | |
62 | Int_t fnCINT1A; // Number of CINT1A triggers | |
63 | Int_t fnCINT1C; // Number of CINT1C triggers | |
64 | Int_t fnCINT1E; // Number of CINT1E triggers | |
65 | ||
66 | Double_t fBCgap; // time gap between BC in seconds | |
67 | Double_t fRecalib[5]; // Correction for abs.calibration per module | |
68 | ||
69 | TH2I *fPHOSBadMap[6] ; //Container for PHOS bad channels map | |
70 | ||
71 | AliPHOSGeometry *fPHOSGeo; // PHOS geometry | |
72 | Int_t fEventCounter; // number of analyzed events | |
73 | AliTriggerAnalysis *fTriggerAnalysis; //! Trigger Analysis for Normalisation | |
74 | ||
75 | ClassDef(AliAnalysisTaskPi0, 3); // PHOS analysis task | |
76 | }; | |
77 | ||
78 | #endif |