1 #ifndef ALIANALYSISTASKPI0EFFICIENCY_H
2 #define ALIANALYSISTASKPI0EFFICIENCY_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6 // example of an analysis task creating a p_t spectrum
7 // Authors: D.Peressounko, S.Nikolaev
17 class AliESDtrackCuts;
18 class AliPHOSGeometry;
20 class AliPHOSCalibData;
22 class AliPHOSAodCluster ;
25 #include "AliAnalysisTaskSE.h"
27 class AliAnalysisTaskPi0Efficiency : public AliAnalysisTaskSE {
29 AliAnalysisTaskPi0Efficiency(const char *name = "AliAnalysisTaskPi0Efficiency");
30 virtual ~AliAnalysisTaskPi0Efficiency() {}
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)
37 if(fPHOSBadMap[mod]) delete fPHOSBadMap[mod] ;
38 fPHOSBadMap[mod]=new TH2I(*h) ;
39 printf("Set %s \n",fPHOSBadMap[mod]->GetName());
43 AliAnalysisTaskPi0Efficiency(const AliAnalysisTaskPi0Efficiency&); // not implemented
44 AliAnalysisTaskPi0Efficiency& operator=(const AliAnalysisTaskPi0Efficiency&); // not implemented
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
54 Double_t CoreEnergy(AliPHOSAodCluster * clu);
58 THashList * fOutputContainer; //final histogram container
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
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
72 Float_t fCentrality ; //!Centrality of the currecnt event
74 Int_t fCenBin ; //! Current centrality bin
76 TH2I *fPHOSBadMap[6] ; //Container for PHOS bad channels map
78 AliPHOSGeometry *fPHOSGeo; //! PHOS geometry
79 Int_t fEventCounter; // number of analyzed events
81 ClassDef(AliAnalysisTaskPi0Efficiency, 1); // PHOS analysis task