Changing to centrality dependent corrections
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisTaskPIDqa.h
1 #ifndef ALIANALYSISTASKPIDQA_H\r
2 #define ALIANALYSISTASKPIDQA_H\r
3 \r
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *\r
5  * See cxx source for full Copyright notice                               */\r
6 \r
7 /* $Id: AliAnalysisTaskPIDqa.h 43642 2010-09-17 15:50:04Z wiechula $ */\r
8 // Author: Jens Wiechula, 24/02/2011\r
9 \r
10 //==============================================================================\r
11 //\r
12 //\r
13 //\r
14 //\r
15 //==============================================================================\r
16 \r
17 #include <TVectorDfwd.h>\r
18 \r
19 #ifndef ALIANALYSISTASKSE_H\r
20 #include "AliAnalysisTaskSE.h"\r
21 #endif\r
22 \r
23 class AliPIDResponse;\r
24 class TList;\r
25 class AliVEvent;\r
26 class AliESDv0KineCuts;\r
27 \r
28 class AliAnalysisTaskPIDqa : public AliAnalysisTaskSE {\r
29   \r
30   \r
31 public:\r
32   AliAnalysisTaskPIDqa();\r
33   AliAnalysisTaskPIDqa(const char *name);\r
34   virtual ~AliAnalysisTaskPIDqa();\r
35 \r
36   virtual void UserCreateOutputObjects();\r
37   \r
38   virtual void UserExec(Option_t */*option*/);\r
39 \r
40   \r
41 private: \r
42   AliPIDResponse *fPIDResponse;             //! PID response Handler\r
43   AliESDv0KineCuts *fV0cuts;                //! ESD V0 cuts\r
44 \r
45   TObjArray *fV0electrons;                  //! array with pointer to identified particles from V0 decays (electrons)\r
46   TObjArray *fV0pions;                      //! array with pointer to identified particles from V0 decays (pions)\r
47   TObjArray *fV0kaons;                      //! array with pointer to identified particles from V0 decays (kaons)\r
48   TObjArray *fV0protons;                    //! array with pointer to identified particles from V0 decays (ptotons)\r
49 \r
50   TList                 *fListQA;           //! list with all QA histograms\r
51   TList                 *fListQAits;        //! List with ITS QA histograms\r
52   TList                 *fListQAitsSA;      //! List with ITS SA QA histograms\r
53   TList                 *fListQAitsPureSA;  //! List with ITS pure SA QA histograms\r
54   TList                 *fListQAtpc;        //! List with TPC QA histograms\r
55   TList                 *fListQAtrd;        //! List with TRD QA histograms\r
56   TList                 *fListQAtof;        //! List with TOF QA histograms\r
57   TList                 *fListQAt0;         //! List with T0 QA histograms\r
58   TList                 *fListQAemcal;      //! List with EMCAL QA histograms\r
59   TList                 *fListQAhmpid;      //! List with EMCAL QA histograms\r
60   TList                 *fListQAtofhmpid;   //! List with EMCAL QA histograms\r
61   TList                 *fListQAtpctof;     //! List with combined PID from TPC + TOF\r
62   TList                 *fListQAV0;         //! List with V0 kine cuts QA histograms\r
63   TList                 *fListQAinfo;       //! List with information about loaded splines etc.\r
64 \r
65   \r
66   void ExecNewRun();\r
67 \r
68   //qa object initialisation\r
69   void SetupITSqa();\r
70   void SetupTPCqa();\r
71   void SetupTRDqa();\r
72   void SetupTOFqa();\r
73   void SetupT0qa();\r
74   void SetupEMCALqa();\r
75   void SetupHMPIDqa();\r
76   void SetupTOFHMPIDqa();\r
77   void SetupTPCTOFqa();\r
78   void SetupV0qa();\r
79   void SetupQAinfo();\r
80 \r
81   //\r
82   void FillV0PIDlist();\r
83   void ClearV0PIDlist();\r
84   //\r
85   void FillITSqa();\r
86   void FillTPCqa();\r
87   void FillTRDqa();\r
88   void FillTOFqa();\r
89   void FillT0qa();\r
90   void FillEMCALqa();\r
91   void FillHMPIDqa();\r
92   void FillTOFHMPIDqa();\r
93   void FillTPCTOFqa();\r
94   void FillQAinfo();\r
95   \r
96   //\r
97   void SetRecoInfo();\r
98   \r
99   //helper functions\r
100   TVectorD* MakeLogBinning(Int_t nbinsX, Double_t xmin, Double_t xmax);\r
101   TVectorD* MakeLinBinning(Int_t nbinsX, Double_t xmin, Double_t xmax);\r
102   TVectorD* MakeArbitraryBinning(const char* bins);\r
103   \r
104   \r
105   AliAnalysisTaskPIDqa(const AliAnalysisTaskPIDqa &other);\r
106   AliAnalysisTaskPIDqa& operator=(const AliAnalysisTaskPIDqa &other);\r
107   \r
108   ClassDef(AliAnalysisTaskPIDqa,2)  // Task to properly set the PID response functions of all detectors\r
109 };\r
110 #endif\r