]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HMPID/AliHMPIDAnalysisTask.h
DA rpms
[u/mrichter/AliRoot.git] / HMPID / AliHMPIDAnalysisTask.h
CommitLineData
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 28class TH1;
740b6bde 29class TParticle;
30class TFile;
9a8aafa5 31class AliESDtrack;
38b8c336 32class AliESDEvent;
9a8aafa5 33
34class 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