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