Move HMPID QA code to PWG1.
[u/mrichter/AliRoot.git] / PWG1 / HMPID / AliHMPIDTaskQA.h
CommitLineData
3882540a 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
27class TH1;
28class TParticle;
29class TFile;
30class AliESDtrack;
31class AliESDEvent;
32
33class 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 TH1F *fHmpMipTrkDistX; // Xtrk - Xmip
64 TH1F *fHmpMipTrkDistY; // Ytrk - Ymip
65 TH1F *fHmpMipCharge3cm; // Mip charge with 3 cm distance cut
66 TH1F *fHmpTrkFlags; // track flags
67
68 Int_t fN1; // number of points for pi and K
69 Int_t fN2; // number of point for p
70 TH1F *fPionEff; // identified pions
71 TH1F *fKaonEff; // identified kaons
72 TH1F *fProtEff; // identified protons
73 TH1I *fPionTot; // total pions
74 TH1I *fKaonTot; // total kaons
75 TH1I *fProtTot; // total protons
76 TH1F *fPionNot; // non-pion tracks
77 TH1F *fKaonNot; // non-kaon tracks
78 TH1F *fProtNot; // non-proton tracks
79 TH1I *fPionCon; // tracks identified as pions
80 TH1I *fKaonCon; // tracks identified as kaons
81 TH1I *fProtCon; // tracks identified as protons
82
83 TTree *fTree; // tree with useful data for subsequent analysis
84 Float_t fVar[28]; // array of data to fill the tree
85
86 ClassDef(AliHMPIDTaskQA,1);
87};
88
89#endif