1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
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 **************************************************************************/
16 //==============================================================================
17 // AliHMPIDAnalysysTask - Class representing a basic analysis tool of HMPID data at
19 // A set of histograms is created.
20 //==============================================================================
22 #ifndef ALIHMPIDANALYSISTASK_H
23 #define ALIHMPIDANALYSISTASK_H
25 #include "AliAnalysisTaskSE.h"
34 class AliHMPIDAnalysisTask : public AliAnalysisTaskSE {
39 AliHMPIDAnalysisTask();
40 AliHMPIDAnalysisTask(const Char_t* name);
41 AliHMPIDAnalysisTask& operator= (const AliHMPIDAnalysisTask& c);
42 AliHMPIDAnalysisTask(const AliHMPIDAnalysisTask& c);
43 virtual ~AliHMPIDAnalysisTask();
45 virtual void ConnectInputData(Option_t *);
46 virtual void UserCreateOutputObjects();
47 virtual void UserExec(Option_t *option);
48 virtual void Terminate(Option_t *);
50 void SetUseMC(Bool_t useMC) { fUseMC = useMC; }
51 Bool_t Equal(Double_t x, Double_t y, Double_t tolerance);
57 AliESDEvent *fESD; //! ESD object
58 AliMCEvent *fMC; //! MC event
60 Bool_t fUseMC; // decide whether use or not the MC information
62 TList *fHmpHistList ; // list of histograms
64 TH2F *fHmpPesdPhmp; // HMP momentum vs ESD momentum
65 TH2F *fHmpCkovPesd; // Ckov angle vs ESD momentum
66 TH2F *fHmpCkovPhmp; // Ckov angle vs HMP momenutm
68 TH1F *fHmpMipTrkDist; // Track-Mip distance distribution
69 TH1F *fHmpMipTrkDistX; // Xtrk - Xmip
70 TH1F *fHmpMipTrkDistY; // Ytrk - Ymip
71 TH1F *fHmpMipCharge3cm; // Mip charge with 3 cm distance cut
72 TH1F *fHmpMipCharge1cm; // Mip charge with 1 cm distance cut
73 TH1F *fHmpNumPhots; // Number of reconstructed photo-electrons
74 TH1F *fHmpTrkFlags; // track flags
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
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
99 TTree *fTree; // tree with useful data for subsequent analysis
100 Float_t fVar[28]; // array of data to fill the tree
102 ClassDef(AliHMPIDAnalysisTask,4);