]>
Commit | Line | Data |
---|---|---|
586fc924 | 1 | #ifndef ALIANALYSISTASKPI0EFFICIENCY_H |
2 | #define ALIANALYSISTASKPI0EFFICIENCY_H | |
3 | ||
7063ee4d | 4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
5 | * See cxx source for full Copyright notice */ | |
586fc924 | 6 | // example of an analysis task creating a p_t spectrum |
7063ee4d | 7 | // Authors: D.Peressounko, S.Nikolaev |
586fc924 | 8 | |
9 | class TObjArray; | |
7063ee4d | 10 | class THashList; |
586fc924 | 11 | class TH1F; |
12 | class TH2I; | |
13 | class TH2F; | |
14 | class TH3F; | |
15 | class TF1 ; | |
16 | class AliStack ; | |
17 | class AliESDtrackCuts; | |
18 | class AliPHOSGeometry; | |
19 | class AliAODEvent ; | |
20 | class AliPHOSCalibData; | |
21 | class AliAODTrack ; | |
22 | class AliPHOSAodCluster ; | |
23 | ||
24 | ||
25 | #include "AliAnalysisTaskSE.h" | |
26 | ||
27 | class AliAnalysisTaskPi0Efficiency : public AliAnalysisTaskSE { | |
28 | public: | |
29 | AliAnalysisTaskPi0Efficiency(const char *name = "AliAnalysisTaskPi0Efficiency"); | |
30 | virtual ~AliAnalysisTaskPi0Efficiency() {} | |
31 | ||
32 | virtual void UserCreateOutputObjects(); | |
33 | virtual void UserExec(Option_t *option); | |
34 | virtual void Terminate(Option_t *); | |
35 | void SetPHOSBadMap(Int_t mod,TH2I * h) | |
36 | { | |
37 | if(fPHOSBadMap[mod]) delete fPHOSBadMap[mod] ; | |
38 | fPHOSBadMap[mod]=new TH2I(*h) ; | |
39 | printf("Set %s \n",fPHOSBadMap[mod]->GetName()); | |
40 | } | |
41 | ||
42 | private: | |
43 | AliAnalysisTaskPi0Efficiency(const AliAnalysisTaskPi0Efficiency&); // not implemented | |
44 | AliAnalysisTaskPi0Efficiency& operator=(const AliAnalysisTaskPi0Efficiency&); // not implemented | |
45 | ||
46 | protected: | |
47 | Bool_t IsGoodChannel(const char * det, Int_t mod,Int_t ix, Int_t iz); //Use addisional bad map for PHOS | |
48 | void FillHistogram(const char * key,Double_t x) const ; //Fill 1D histogram witn name key | |
49 | void FillHistogram(const char * key,Double_t x, Double_t y) const ; //Fill 2D histogram witn name key | |
50 | void FillHistogram(const char * key,Double_t x, Double_t y, Double_t z) const ; //Fill 3D histogram witn name key | |
51 | Bool_t TestLambda(Double_t e,Double_t l1,Double_t l2) ; //Evaluate Dispersion cuts for photons | |
52 | Bool_t TestLambda2(Double_t e,Double_t l1,Double_t l2) ; //Evaluate Dispersion cuts for photons | |
53 | void ProcessMC() ; | |
54 | Double_t CoreEnergy(AliPHOSAodCluster * clu); | |
55 | ||
56 | protected: | |
57 | AliStack * fStack ; | |
7063ee4d | 58 | THashList * fOutputContainer; //final histogram container |
586fc924 | 59 | TList * fPHOSEvents[1][10][11] ; //Containers for events with PHOS photons |
60 | TClonesArray * fPHOSEvent ; //PHOS photons in current event | |
61 | AliPHOSCalibData *fPHOSCalibData; // PHOS calibration object | |
62 | TF1 *fNonLinCorr; // Non-linearity correction | |
63 | ||
64 | //Reaction plain for v2 | |
65 | Float_t fRPfull ; //!Reaction plain calculated with full TPC | |
66 | Float_t fRPA ; //!Reaction plain calculated with A-side TPC: eta>0.15 | |
67 | Float_t fRPC ; //!Reaction plain calculated with C-side TPC: eta<-0.15 | |
68 | Float_t fRPFar ; //!Reaction plain calculated with TPC: eta>0.6 | |
69 | Float_t fRPAFar ; //!Reaction plain calculated with A-side TPC: eta>0.6 | |
70 | Float_t fRPCFar ; //!Reaction plain calculated with C-side TPC: eta<-0.6 | |
71 | ||
72 | Float_t fCentrality ; //!Centrality of the currecnt event | |
73 | ||
74 | Int_t fCenBin ; //! Current centrality bin | |
75 | ||
76 | TH2I *fPHOSBadMap[6] ; //Container for PHOS bad channels map | |
77 | ||
78 | AliPHOSGeometry *fPHOSGeo; //! PHOS geometry | |
79 | Int_t fEventCounter; // number of analyzed events | |
80 | ||
81 | ClassDef(AliAnalysisTaskPi0Efficiency, 1); // PHOS analysis task | |
82 | }; | |
83 | ||
84 | #endif |