]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGGA/PHOSTasks/PHOS_pp_pi0/AliAnalysisTaskPi0.h
Transition PWG4 --> PWGGA
[u/mrichter/AliRoot.git] / PWGGA / PHOSTasks / PHOS_pp_pi0 / AliAnalysisTaskPi0.h
1 #ifndef AliAnalysisTaskPi0_cxx\r
2 #define AliAnalysisTaskPi0_cxx\r
3 \r
4 // example of an analysis task creating a p_t spectrum\r
5 // Authors: Panos Cristakoglou, Jan Fiete Grosse-Oetringhaus, Christian Klein-Boesing\r
6 \r
7 class TObjArray;\r
8 class TH1F;\r
9 class TH2I;\r
10 class TH2F;\r
11 class TH3F;\r
12 class AliESDtrackCuts;\r
13 class AliPHOSGeometry;\r
14 class AliTriggerAnalysis;\r
15 \r
16 #include "TH2I.h"\r
17 #include "AliAnalysisTaskSE.h"\r
18 \r
19 class AliAnalysisTaskPi0 : public AliAnalysisTaskSE {\r
20 public:\r
21   AliAnalysisTaskPi0(const char *name = "AliAnalysisTaskPi0");\r
22   virtual ~AliAnalysisTaskPi0() {}\r
23   \r
24   virtual void   UserCreateOutputObjects();\r
25   virtual void   UserExec(Option_t *option);\r
26   virtual void   Terminate(Option_t *);\r
27   void SetPHOSBadMap(Int_t mod,TH2I * h)\r
28   {\r
29     if(fPHOSBadMap[mod]) delete fPHOSBadMap[mod] ;\r
30     fPHOSBadMap[mod]=new TH2I(*h) ;\r
31     printf("Set %s \n",fPHOSBadMap[mod]->GetName());\r
32   }\r
33   \r
34 private:\r
35   AliAnalysisTaskPi0(const AliAnalysisTaskPi0&); // not implemented\r
36   AliAnalysisTaskPi0& operator=(const AliAnalysisTaskPi0&); // not implemented\r
37   Bool_t IsGoodChannel(const char * det, Int_t mod,Int_t ix, Int_t iz);\r
38   void FillHistogram(const char * key,Double_t x) const ; //Fill 1D histogram witn name key\r
39   void FillHistogram(const char * key,Double_t x, Double_t y) const ; //Fill 2D histogram witn name key\r
40   void FillHistogram(const char * key,Double_t x, Double_t y, Double_t z) const ; //Fill 3D histogram witn name key\r
41   Bool_t TestLambda(Double_t l1,Double_t l2) ;\r
42 \r
43  \r
44 private:\r
45   AliESDtrackCuts *fESDtrackCuts; // Track cut\r
46   TList * fOutputContainer;       //final histogram container\r
47   TList * fPHOSEvents[10][2] ;    //Container for PHOS photons\r
48   TClonesArray * fPHOSEvent ;     //PHOS photons in current event\r
49  \r
50   Int_t fnCINT1B;           // Number of CINT1B triggers\r
51   Int_t fnCINT1A;           // Number of CINT1A triggers\r
52   Int_t fnCINT1C;           // Number of CINT1C triggers\r
53   Int_t fnCINT1E;           // Number of CINT1E triggers\r
54 \r
55   TH2I *fPHOSBadMap[6] ;    //Container for PHOS bad channels map\r
56 \r
57   AliPHOSGeometry  *fPHOSGeo;  // PHOS geometry\r
58   Int_t fEventCounter;         // number of analyzed events\r
59   AliTriggerAnalysis *fTriggerAnalysis; //! Trigger Analysis for Normalisation\r
60 \r
61   ClassDef(AliAnalysisTaskPi0, 2); // PHOS analysis task\r
62 };\r
63 \r
64 #endif\r