]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG1/HMPID/AliHMPIDTaskQA.h
8635e00084e15ae6da0cdd2c7770aaa2cfce70fd
[u/mrichter/AliRoot.git] / PWG1 / HMPID / AliHMPIDTaskQA.h
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  *
14  **************************************************************************/
15
16 //==============================================================================
17 // AliHMPIDTaskQA - Class representing a quality check tool of HMPID
18 // A set of histograms is created.
19 //==============================================================================
20
21 #ifndef ALIHMPIDTASKQA_H
22 #define ALIHMPIDTASKQA_H
23
24 #include "AliAnalysisTaskSE.h"
25 #include "AliStack.h"
26
27 class TH1;
28 class TParticle;
29 class TFile;
30 class AliESDtrack;
31 class AliESDEvent;
32
33 class AliHMPIDTaskQA : public AliAnalysisTaskSE {
34   public:
35
36   enum {kChamber = 7};
37
38   AliHMPIDTaskQA();
39   AliHMPIDTaskQA(const Char_t* name);
40   AliHMPIDTaskQA& operator= (const AliHMPIDTaskQA& c);
41   AliHMPIDTaskQA(const AliHMPIDTaskQA& c);
42   virtual ~AliHMPIDTaskQA();
43   
44   virtual void   ConnectInputData(Option_t *);
45   virtual void   UserCreateOutputObjects();
46   virtual void   UserExec(Option_t *option);
47   virtual void   Terminate(Option_t *);
48
49           void   SetUseMC(Bool_t useMC) { fUseMC = useMC; }
50           Bool_t Equal(Double_t x, Double_t y, Double_t tolerance);
51
52  protected:
53      
54  private:     
55  
56   AliESDEvent *fESD;                    //! ESD object
57   AliMCEvent  *fMC;                     //! MC event
58
59   Bool_t       fUseMC;                  // decide whether use or not the MC information
60
61   TList         *fHmpHistList ;         // list of histograms
62
63   TH2F          *fHmpPesdPhmp;          // HMP momentum vs ESD momentum
64   TH2F          *fHmpCkovPesd;          // Ckov angle vs ESD momentum
65   TH2F          *fHmpCkovPhmp;          // Ckov angle vs HMP momenutm
66   TH1F          *fHmpMipTrkDistX;       // Xtrk - Xmip
67   TH1F          *fHmpMipTrkDistPosY[7]; // Ytrk - Ymip of positive tracks
68   TH1F          *fHmpMipTrkDistNegY[7]; // Ytrk - Ymip of negative tracks
69   TH1F          *fHmpMipCharge3cm;      // Mip charge with 3 cm distance cut
70   TH1F          *fHmpTrkFlags;          // track flags
71
72   Int_t          fN1;                   // number of points for pi and K
73   Int_t          fN2;                   // number of point for p
74   TH1F          *fPionEff;              // identified pions
75   TH1F          *fKaonEff;              // identified kaons
76   TH1F          *fProtEff;              // identified protons
77   TH1I          *fPionTot;              // total pions
78   TH1I          *fKaonTot;              // total kaons
79   TH1I          *fProtTot;              // total protons
80   TH1F          *fPionNot;              // non-pion tracks
81   TH1F          *fKaonNot;              // non-kaon tracks
82   TH1F          *fProtNot;              // non-proton tracks
83   TH1I          *fPionCon;              // tracks identified as pions
84   TH1I          *fKaonCon;              // tracks identified as kaons
85   TH1I          *fProtCon;              // tracks identified as protons
86
87   ClassDef(AliHMPIDTaskQA,1);
88 };
89
90 #endif