]>
Commit | Line | Data |
---|---|---|
450dbb9c | 1 | #ifndef AliAnalysisTaskPi0Calib_cxx\r |
2 | #define AliAnalysisTaskPi0Calib_cxx\r | |
3 | \r | |
4 | // PHOS calibration with pi0\r | |
5 | // Authors: DP, YK\r | |
6 | \r | |
7 | class TObjArray;\r | |
8 | class TH1F;\r | |
9 | class TH2I;\r | |
10 | class TH2F;\r | |
11 | class TH2D;\r | |
12 | class TH3F;\r | |
13 | class TF1 ;\r | |
14 | class AliPHOSGeometry;\r | |
15 | class AliESDEvent ;\r | |
16 | #include "AliPHOSCalibData.h"\r | |
17 | #include "AliCDBManager.h"\r | |
18 | \r | |
19 | #include "AliAnalysisTaskSE.h"\r | |
20 | \r | |
21 | class AliAnalysisTaskPi0Calib : public AliAnalysisTaskSE {\r | |
22 | public:\r | |
23 | AliAnalysisTaskPi0Calib(const char *name = "PHOS");\r | |
24 | virtual ~AliAnalysisTaskPi0Calib() ;\r | |
25 | \r | |
26 | virtual void UserCreateOutputObjects();\r | |
27 | virtual void UserExec(Option_t *option);\r | |
28 | virtual void Terminate(Option_t *);\r | |
29 | void SetPHOSBadMap(Int_t mod,TH2I * h)\r | |
30 | {\r | |
31 | if(fPHOSBadMap[mod]) delete fPHOSBadMap[mod] ;\r | |
32 | fPHOSBadMap[mod]=new TH2I(*h) ;\r | |
33 | printf("Set %s \n",fPHOSBadMap[mod]->GetName());\r | |
34 | }\r | |
35 | \r | |
36 | void SetPHOSCalib(Int_t mod,TH2D * h)\r | |
37 | {\r | |
38 | if(fPHOSAmp[mod]) delete fPHOSAmp[mod] ;\r | |
39 | fPHOSAmp[mod]=new TH2D(*h) ;\r | |
40 | printf("Set %s \n",fPHOSAmp[mod]->GetName());\r | |
41 | }\r | |
42 | \r | |
43 | \r | |
44 | private:\r | |
45 | \r | |
46 | AliAnalysisTaskPi0Calib(const AliAnalysisTaskPi0Calib&); // not implemented\r | |
47 | AliAnalysisTaskPi0Calib& operator=(const AliAnalysisTaskPi0Calib&); // not implemented\r | |
48 | Bool_t IsGoodChannel(const char * det, Int_t mod,Int_t ix, Int_t iz); //Use addisional bad map for PHOS\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 TestTOF(Double_t e,Double_t tof) ; //Evaluate TOF cut\r | |
53 | Bool_t TestLambda(Double_t pt,Double_t l1,Double_t l2) ; //Evaluate Dispersion cuts for photons\r | |
54 | Double_t TestCPV(Double_t dx, Double_t dz, Double_t pt, Int_t charge);\r | |
55 | Int_t ConvertRunNumber(Int_t run) ; \r | |
56 | \r | |
57 | private:\r | |
58 | TList * fOutputContainer; //! final histogram container\r | |
59 | TList * fPHOSEvents; //! Containers for events with PHOS photons\r | |
60 | TClonesArray * fPHOSEvent ; //! PHOS photons in current event\r | |
61 | AliPHOSCalibData * fPHOSCalibData; //! PHOS calibration object\r | |
62 | TH2I * fPHOSBadMap[6] ; //Container for PHOS bad channels map\r | |
63 | TH2D * fPHOSAmp[6] ; //Container for PHOS bad channels map\r | |
64 | \r | |
65 | AliPHOSGeometry * fPHOSGeo; //! PHOS geometry\r | |
66 | Int_t fEventCounter; // number of analyzed events\r | |
67 | \r | |
68 | ClassDef(AliAnalysisTaskPi0Calib, 1); // PHOS analysis task\r | |
69 | };\r | |
70 | \r | |
71 | #endif\r |