Fix for coverity (AdC)
[u/mrichter/AliRoot.git] / PWGJE / AliPWG4HighPtQATPConly.h
CommitLineData
b4691ee7 1 /**************************************************************************
fdceab34 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// This class compares the global reconstruction with the TPConly reconstruction
18// Author : Marta Verweij - UU
19//-----------------------------------------------------------------------
20
21#ifndef ALIPWG4HIGHPTQATPCONLY_H
22#define ALIPWG4HIGHPTQATPCONLY_H
23
24#include "AliAnalysisTask.h"
25
26class TH1F;
27class TH2F;
28class TH3F;
29class TList;
b4691ee7 30
fdceab34 31class AliESDEvent;
f4d11ac8 32class AliESDfriend;
33class AliESDfriendTrack;
b5cc0c6d 34class AliVEvent;
fdceab34 35class AliESDtrackCuts;
65e8ecdd 36class AliESDtrack;
36c36a0c 37class AliESDVertex;
b4691ee7 38
fdceab34 39class AliPWG4HighPtQATPConly: public AliAnalysisTask {
40
41 public:
42 AliPWG4HighPtQATPConly();
43 AliPWG4HighPtQATPConly(const char *name);
44 ~AliPWG4HighPtQATPConly() {;}
45
cc89bb69 46 virtual void LocalInit();
fdceab34 47 virtual void ConnectInputData(Option_t *);
48 virtual void CreateOutputObjects();
49 virtual void Exec(Option_t *option);
50 virtual void Terminate(Option_t *);
51
36c36a0c 52 Bool_t SelectEvent(); //decides if event is used for analysis
53
cc89bb69 54 void SetCutType(Int_t ctype) {fCutType = ctype;}
fdceab34 55 void SetCuts(AliESDtrackCuts* trackCuts) {fTrackCuts = trackCuts;}
56 void SetCutsITS(AliESDtrackCuts* trackCutsITS) {fTrackCutsITS = trackCutsITS;}
b1cd0099 57 void SetPtMax(Float_t ptmax) {fPtMax = ptmax;}
fdceab34 58
cc89bb69 59 Int_t GetCutType() {return fCutType;}
b1cd0099 60 Float_t GetPtMax() {return fPtMax;}
cc89bb69 61
fdceab34 62 protected:
63
64 private:
65
66 void InitHistPointers();
67 AliPWG4HighPtQATPConly(const AliPWG4HighPtQATPConly&);
68 AliPWG4HighPtQATPConly& operator=(const AliPWG4HighPtQATPConly&);
69
36c36a0c 70 AliESDEvent *fESD; //! ESD object
71 AliESDfriend *fESDfriend; //! ESD friend object
72
73 const AliESDVertex *fVtx; //! vertex object
74
cc89bb69 75 Int_t fCutType; // Cut Type set in AddTask*
fdceab34 76 AliESDtrackCuts *fTrackCuts; // TrackCuts for global vs TPConly comparison
77 AliESDtrackCuts *fTrackCutsITS; // TrackCuts including ITSrefit
b1cd0099 78
79 Float_t fPtMax; // Maximum pT for histograms
fdceab34 80
b5cc0c6d 81 TH1F *fNEventAll; //! Event counter
82 TH1F *fNEventSel; //! Event counter: Selected events for analysis
36c36a0c 83 TH1F *fNEventReject; //! Book keeping of reason of rejecting events
84
fdceab34 85 TH1F *fPtAll; //! Pt spectrum all charged particles
86 TH1F *fPtSel; //! Pt spectrum all selected charged particles by fTrackCuts
87 TH2F *fPtAllminPtTPCvsPtAll; //! Momentum resolution (global vs TPConly)
9f54dd56 88 TH3F *fPtAllminPtTPCvsPtAllEtaPos; //! Momentum resolution (global vs TPConly) vs Eta for positive particles
89 TH3F *fPtAllminPtTPCvsPtAllEtaNeg; //! Momentum resolution (global vs TPConly) vs Eta for negative particles
fdceab34 90 TH3F *fPtAllminPtTPCvsPtAllNPointTPC; //! Momentum resolution vs NPointTPC
91 TH3F *fPtAllminPtTPCvsPtAllDCAR; //! Momentum resolution vs DCAR
92 TH3F *fPtAllminPtTPCvsPtAllDCAZ; //! Momentum resolution vs DCAZ
93 TH3F *fPtAllminPtTPCvsPtAllPhi; //! Momentum resolution vs Phi
94 TH3F *fPtAllminPtTPCvsPtAllNPointITS; //! Momentum resolution vs NPointITS
95 TH3F *fPtAllminPtTPCvsPtAllNSigmaToVertex; //! Momentum resolution vs NSigmaToVertes
96 TH3F *fPtAllminPtTPCvsPtAllChi2C; //! Momentum resolution vs Chi2Constrained
97 TH3F *fPtAllminPtTPCvsPtAllRel1PtUncertainty; //! Momentum resolution vs relUncertainty1Pt
f4d11ac8 98 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusTPC; //! Momentum resolution vs Chi2PerNClusTPC
99 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITS; //! Momentum resolution vs Chi2PerNClusITS
65e8ecdd 100
9c8dfcb5 101 TH3F *fPtAllminPtTPCvsNPointTPCPhi; //! Momentum resolution vs NPointTPC vs Phi
102 TH3F *fPtAllminPtTPCvsNPointITSPhi; //! Momentum resolution vs NPointITS vs Phi
103 TH3F *fPtAllminPtTPCvsRel1PtUncertaintyPhi; //! Momentum resolution vs Rel1PtUncertainty vs Phi
104
f4d11ac8 105 TH2F *fEtaPhiOutliers; //! Eta Phi for outliers in momentum resolution
65e8ecdd 106
36c36a0c 107 TH1F *fPtSelITSouter; //! Pt at ITS outer wall for all selected charged particles by fTrackCuts
f4d11ac8 108 TH2F *fPtITSouterminPtTPCvsPtAll; //! Momentum resolution (global vs ITSouter-TPCinner)
9f54dd56 109 TH3F *fPtITSouterminPtTPCvsPtAllEtaPos; //! Momentum resolution (global vs ITSouter-TPCinner) vs Eta for positive particles
110 TH3F *fPtITSouterminPtTPCvsPtAllEtaNeg; //! Momentum resolution (global vs ITSouter-TPCinner) vs Eta for negative particles
f4d11ac8 111 TH3F *fPtITSouterminPtTPCvsPtAllNPointTPC; //! Momentum resolution vs NPointTPC
112 TH3F *fPtITSouterminPtTPCvsPtAllDCAR; //! Momentum resolution vs DCAR
113 TH3F *fPtITSouterminPtTPCvsPtAllDCAZ; //! Momentum resolution vs DCAZ
114 TH3F *fPtITSouterminPtTPCvsPtAllPhi; //! Momentum resolution vs Phi
115 TH3F *fPtITSouterminPtTPCvsPtAllNPointITS; //! Momentum resolution vs NPointITS
116 TH3F *fPtITSouterminPtTPCvsPtAllNSigmaToVertex; //! Momentum resolution vs NSigmaToVertes
117 TH3F *fPtITSouterminPtTPCvsPtAllChi2C; //! Momentum resolution vs Chi2Constrained
118 TH3F *fPtITSouterminPtTPCvsPtAllRel1PtUncertainty; //! Momentum resolution vs relUncertainty1Pt
119 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusTPC; //! Momentum resolution vs Chi2PerNClusTPC
120 TH3F *fPtITSouterminPtTPCvsPtAllChi2PerNClusITS; //! Momentum resolution vs Chi2PerNClusITS
121
36c36a0c 122 TH2F *fPtAllminPtTPCvsPtAllITSLayer0; //! Track has at least 1st SPD layer
123 TH2F *fPtAllminPtTPCvsPtAllITSLayer1; //! Track has at least 2nd SPD layer and not 1st SPD
124 TH2F *fPtAllminPtTPCvsPtAllITSLayer2; //! Track has at least 1st SDD layer and not SPD layers
125 TH2F *fPtAllminPtTPCvsPtAllITSLayer3; //! Track has at least 1st SDD layer and not SPD layers and not 1st SDD
126 TH2F *fPtAllminPtTPCvsPtAllITSLayer4; //! Track has at least 1st SSD layer and not SPD or SDD layers
127 TH2F *fPtAllminPtTPCvsPtAllITSLayer5; //! Track has at least 1st SSD layer and not SPD or SDD layers or 1st SSD
128
129 TH2F *fPtAllminPtTPCvsPtAllNoSPD; //! Track has no signal in SPD layers
130 TH2F *fPtAllminPtTPCvsPtAllNoSDD; //! Track has no signal in SDD layers
131 TH2F *fPtAllminPtTPCvsPtAllNoSSD; //! Track has no signal in SSD layers
132
133 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSLayer0; //! Track has at least 1st SPD layer
134 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSLayer1; //! Track has at least 2nd SPD layer and not 1st SPD
135 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSLayer2; //! Track has at least 1st SDD layer and not SPD layers
136 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSLayer3; //! Track has at least 1st SDD layer and not SPD layers and not 1st SDD
137 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSLayer4; //! Track has at least 1st SSD layer and not SPD or SDD layers
138 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSLayer5; //! Track has at least 1st SSD layer and not SPD or SDD layers or 1st SSD
139
140 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSNoSPD; //! Track has no signal in SPD layers
141 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSNoSDD; //! Track has no signal in SDD layers
142 TH3F *fPtAllminPtTPCvsPtAllChi2PerNClusITSNoSSD; //! Track has no signal in SSD layers
fdceab34 143
144 TList *fHistList; //! List of Histograms
145
146 TH1F *fPtAllTPC; //! Pt spectrum all charged particles
147 TH1F *fPtSelTPC; //! Pt spectrum all selected charged particles by fTrackCuts
148 TH1F *fPtSelTPCITS; //! Pt spectrum all selected charged particles by fTrackCutsITS
149 TList *fHistListTPC; //! List of Histograms
150
151 TH1F *fPtSelITS; //! Pt spectrum all selected charged particles by fTrackCutsITS
152 TH2F *fPtITSminPtTPCvsPtITS; //! Momentum resolution (global with ITSrefit vs TPConly)
9f54dd56 153 TH3F *fPtITSminPtTPCvsPtITSEtaPos; //! Momentum resolution (global with ITSrefit vs TPConly) vs Eta for positive particles
154 TH3F *fPtITSminPtTPCvsPtITSEtaNeg; //! Momentum resolution (global with ITSrefit vs TPConly) vs Eta for negative particles
fdceab34 155 TH3F *fPtITSminPtTPCvsPtITSNPointTPC; //! Momentum resolution vs NPointTPC
156 TH3F *fPtITSminPtTPCvsPtITSDCAR; //! Momentum resolution vs DCAR
157 TH3F *fPtITSminPtTPCvsPtITSDCAZ; //! Momentum resolution vs DCAZ
158 TH3F *fPtITSminPtTPCvsPtITSPhi; //! Momentum resolution vs Phi
159 TH3F *fPtITSminPtTPCvsPtITSNPointITS; //! Momentum resolution vs NPointITS
160 TH3F *fPtITSminPtTPCvsPtITSNSigmaToVertex; //! Momentum resolution vs NSigmaToVertex
161 TH3F *fPtITSminPtTPCvsPtITSChi2C; //! Momentum resolution vs Chi2Constrained
162 TH3F *fPtITSminPtTPCvsPtITSRel1PtUncertainty; //! Momentum resolution vs relUncertainty1Pt
f4d11ac8 163 TH3F *fPtITSminPtTPCvsPtITSChi2PerNClusTPC; //! Momentum resolution vs Chi2PerNClusTPC
9c8dfcb5 164 TH3F *fPtITSminPtTPCvsPtITSChi2PerNClusITS; //! Momentum resolution vs Chi2PerNClusITS
165
166 TH3F *fPtITSminPtTPCvsNPointTPCPhi; //! Momentum resolution vs NPointTPC vs Phi
167 TH3F *fPtITSminPtTPCvsNPointITSPhi; //! Momentum resolution vs NPointITS vs Phi
168 TH3F *fPtITSminPtTPCvsRel1PtUncertaintyPhi; //! Momentum resolution vs Rel1PtUncertainty vs Phi
f4d11ac8 169
f4d11ac8 170 TH3F *fPtRel1PtUncertaintyChi2PerClusTPC; //! Global Pt vs relUncertainty1Pt vs Chi2PerClusTPC
fdceab34 171
172 TList *fHistListITS; //! List of Histograms
173
fdceab34 174 ClassDef(AliPWG4HighPtQATPConly,1)
175
176};
177#endif