]>
Commit | Line | Data |
---|---|---|
9a8aafa5 | 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 | ||
dcb23f7e | 16 | //============================================================================== |
17 | // AliHMPIDAnalysysTask - Class representing a basic analysis tool of HMPID data at | |
18 | // level of ESD. | |
19 | // A set of histograms is created. | |
20 | //============================================================================== | |
9a8aafa5 | 21 | |
dcb23f7e | 22 | #ifndef ALIHMPIDANALYSISTASK_H |
23 | #define ALIHMPIDANALYSISTASK_H | |
9a8aafa5 | 24 | |
25 | #include "AliAnalysisTaskSE.h" | |
740b6bde | 26 | #include "AliStack.h" |
9a8aafa5 | 27 | |
dcb23f7e | 28 | class TH1; |
740b6bde | 29 | class TParticle; |
30 | class TFile; | |
9a8aafa5 | 31 | class AliESDtrack; |
38b8c336 | 32 | class AliESDEvent; |
9a8aafa5 | 33 | |
34 | class AliHMPIDAnalysisTask : public AliAnalysisTaskSE { | |
35 | public: | |
36 | ||
37 | enum {kChamber = 7}; | |
38 | ||
39 | AliHMPIDAnalysisTask(); | |
40 | AliHMPIDAnalysisTask(const Char_t* name); | |
dcb23f7e | 41 | AliHMPIDAnalysisTask& operator= (const AliHMPIDAnalysisTask& c); |
42 | AliHMPIDAnalysisTask(const AliHMPIDAnalysisTask& c); | |
9a8aafa5 | 43 | virtual ~AliHMPIDAnalysisTask(); |
38b8c336 | 44 | |
f5dd9ecb | 45 | virtual void ConnectInputData(Option_t *); |
66cdae53 | 46 | virtual void UserCreateOutputObjects(); |
47 | virtual void UserExec(Option_t *option); | |
38b8c336 | 48 | virtual void Terminate(Option_t *); |
740b6bde | 49 | |
66cdae53 | 50 | void SetUseMC(Bool_t useMC) { fUseMC = useMC; } |
dcb23f7e | 51 | Bool_t Equal(Double_t x, Double_t y, Double_t tolerance); |
66cdae53 | 52 | |
38b8c336 | 53 | protected: |
54 | ||
55 | private: | |
56 | ||
740b6bde | 57 | AliESDEvent *fESD; //! ESD object |
58 | AliMCEvent *fMC; //! MC event | |
59 | ||
66cdae53 | 60 | Bool_t fUseMC; // decide whether use or not the MC information |
61 | ||
740b6bde | 62 | TList *fHmpHistList ; // list of histograms |
740b6bde | 63 | |
dcb23f7e | 64 | TH2F *fHmpPesdPhmp; // HMP momentum vs ESD momentum |
65 | TH2F *fHmpCkovPesd; // Ckov angle vs ESD momentum | |
66 | TH2F *fHmpCkovPhmp; // Ckov angle vs HMP momenutm | |
740b6bde | 67 | |
dcb23f7e | 68 | TH1F *fHmpMipTrkDist; // Track-Mip distance distribution |
69 | TH1F *fHmpMipTrkDistX; // Xtrk - Xmip | |
70 | TH1F *fHmpMipTrkDistY; // Ytrk - Ymip | |
740b6bde | 71 | TH1F *fHmpMipCharge3cm; // Mip charge with 3 cm distance cut |
dcb23f7e | 72 | TH1F *fHmpMipCharge1cm; // Mip charge with 1 cm distance cut |
73 | TH1F *fHmpNumPhots; // Number of reconstructed photo-electrons | |
74 | TH1F *fHmpTrkFlags; // track flags | |
740b6bde | 75 | |
76 | Int_t fN1; // number of points for pi and K | |
77 | Int_t fN2; // number of point for p | |
78 | TH1F *fPionEff; // identified pions | |
79 | TH1F *fKaonEff; // identified kaons | |
80 | TH1F *fProtEff; // identified protons | |
81 | TH1I *fPionTot; // total pions | |
82 | TH1I *fKaonTot; // total kaons | |
83 | TH1I *fProtTot; // total protons | |
84 | TH1F *fPionNot; // non-pion tracks | |
85 | TH1F *fKaonNot; // non-kaon tracks | |
86 | TH1F *fProtNot; // non-proton tracks | |
87 | TH1I *fPionCon; // tracks identified as pions | |
88 | TH1I *fKaonCon; // tracks identified as kaons | |
89 | TH1I *fProtCon; // tracks identified as protons | |
90 | TH2F *fThetavsPiFromK; // theta chkov of pis from Ks | |
91 | TH2F *fThetapivsPesd; // theta chkov of pions vs Pesd | |
92 | TH2F *fThetaKvsPesd; // theta chkov of kaons vs Pesd | |
93 | TH2F *fThetaPvsPesd; // theta chkov of protons vs Pesd | |
e7c33863 | 94 | TH1I *fProtGen; // generated protons from MC |
95 | TH1I *fPbarGen; // generated antiprotons from MC | |
96 | TH1I *fProtHmp; // protons into the HMPID | |
97 | TH1I *fPbarHmp; // antiprotons into the HMPID | |
740b6bde | 98 | |
f5dd9ecb | 99 | TTree *fTree; // tree with useful data for subsequent analysis |
e7c33863 | 100 | Float_t fVar[28]; // array of data to fill the tree |
740b6bde | 101 | |
f5dd9ecb | 102 | ClassDef(AliHMPIDAnalysisTask,4); |
9a8aafa5 | 103 | }; |
104 | ||
66cdae53 | 105 | #endif |