Fixing memory leak
[u/mrichter/AliRoot.git] / MUON / AliMUONQAIndices.h
CommitLineData
6482f70b 1#ifndef ALIMUONQAINDICES_H
2#define ALIMUONQAINDICES_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5* See cxx source for full Copyright notice */
6
7// $Id$
8
9dc24aa6 9/// \ingroup base
6482f70b 10///
11/// Definition of enums needed by the MUON QA data makers and checkers (both
12/// tracker and trigger)
13///
14/// \author Laurent Aphecetche and Diego Stocco, Subatech
15
16namespace AliMUONQAIndices
17{
b3d57767 18 /// Raw/digits histograms indices
6482f70b 19 enum ERaw {
b3d57767 20
21 kTrackerData = 3, ///< Accumulated data
22 kTrackerBusPatchOccupancy = 4, ///< Bus patch occupancies
23 kTrackerReadoutStatusPerEvent = 6, ///< as kTrackerReadoutStatus but normalized by the number of events
24 kTrackerBusPatchConfig = 7, ///< Configuration of the tracker
25 kTrackerBusPatchParityErrors = 8, ///< Parity errors during readout of the tracker
26 kTrackerBusPatchTokenLostErrors = 9, ///< Token lost errors during readout of the tracker
27 kTrackerBusPatchPaddingErrors = 10, ///< Padding errors during readout of the tracker
28 kTrackerNofPhysicsEventsSeen = 11, ///< Number of events seen
29 kTrackerReadoutStatus = 12, ///< Status of readout (errors, missing pads, etc...)
30 kTrackerDDLOccupancy = 13, ///< DDL occupancy in percent
31 kTrackerDDLNofEventsSeen = 14, ///< nof of events per DDL (seen)
32 kTrackerDDLEventSize = 300, ///< event size per DDL
33 kTrackerDDLEventSizePerEvent = 15, ///< event size per DDL per event
34 kTrackerNofGoodPhysicsEventsUsed = 401, ///< Number of good physics events seen (and used) *WARNING* let 401 be unique in all levels, i.e. Raws,Digits,RecPoints
35 kTrackerDDLNofEventsUsed = 402, ///< nof of events per DDL (used)
36
6482f70b 37 kTriggerScalersTime = 22, ///< Trigger scalers acquisition time index
38 kTriggerScalers = 23, ///< Trigger scalers histogram per plane index
39 kTriggerScalersDisplay = 31, ///< Trigger scalers display histogram per plane index
40 kTriggerCalibSummary = 40, ///< Number of responding strips/boards and noisy strips
41 kTriggerCalibSummaryNorm = 41, ///< Percentage of responding strips/boards and noisy strips
42 kTriggerErrorLocalXPos = 50, ///< Local board: Number of XPos Error vs Local Board Id
43 kTriggerErrorLocalYPos = 51, ///< Local board: Number of YPos Error vs Local Board Id
44 kTriggerErrorLocalDev = 52, ///< Local board: Number of Deviation Error vs Local Board
45 kTriggerErrorLocalTriggerDec = 53, ///< Local board: Number of Trigger Decision (All Pt) Error vs Local Board Id
46 kTriggerErrorLocalLPtLSB = 54, ///< Local board: Number of LSB Low Pt Error vs Local Board Id
47 kTriggerErrorLocalLPtMSB = 55, ///< Local board: Number of MSB Low Pt Error vs Local Board Id
48 kTriggerErrorLocalHPtLSB = 56, ///< Local board: Number of LSB High Pt Error vs Local Board Id
49 kTriggerErrorLocalHPtMSB = 57, ///< Local board: Number of MSB High Pt Error vs Local Board Id
50 kTriggerErrorLocalTrigY = 58, ///< Local board: Number of TrigY Error vs Local Board Id
51 kTriggerErrorLocal2RegionalLPtLSB = 59, ///< Local to Regional: Number of LPt LSB error vs Local Board Id
52 kTriggerErrorLocal2RegionalLPtMSB = 60, ///< Local to Regional: Number of LPt MSB error vs Local Board Id
53 kTriggerErrorLocal2RegionalHPtLSB = 61, ///< Local to Regional: Number of HPt LSB error vs Local Board Id
54 kTriggerErrorLocal2RegionalHPtMSB = 62, ///< Local to Regional: Number of HPt MSB error vs Local Board Id
c39cf12d 55 kTriggerErrorOutGlobalFromInGlobal = 63, ///< Global board: Number of error vs output bit with a re-reconstruction from Global inputs
56 kTriggerErrorOutGlobalFromInLocal = 64, ///< Global board: Number of error vs output bit with a re-reconstruction from Local inputs
57 kTriggerErrorSummary = 65, ///< Number of errors for each trigger decision level (Local, Reg->Local, Reg, Reg->Glob, Global)
58 kTriggerErrorSummaryNorm = 66, ///< Percentage of errors for each trigger decision level
6482f70b 59 kTriggerErrorLocalYCopy = 67, ///< Local board: Number of Y Copy Error vs Local Board Id
60 kTriggerErrorLocalYCopyTest = 68, ///< Local Board: Number of Y copy error tests (for normalization)
61 kTriggerErrorLocalYCopyNorm = 69, ///< Local Board: Number of Y Copy Error vs Local Board Id Normalized to the number of tests
62 kTriggeredBoards = 70, ///< Triggered boards histogram index
63 kTriggerBoardsDisplay = 71, ///< Triggered boards display histogram index
64 kTriggerReadOutErrors = 80, ///< Number of read-out errors
65 kTriggerReadOutErrorsNorm = 81, ///< Percentage of read-out errors
66 kTriggerGlobalOutput = 90, ///< Number of Global outputs and Global algo errors
67 kTriggerGlobalOutputNorm = 91, ///< Percentage of Global outputs and Global algo errors
c39cf12d 68 kTriggerRawNAnalyzedEvents= 100, ///< Number of analyzed events per event specie
2e010e03 69 kTriggerLocalRatio4434 = 101, ///< Ratio 44/34 vs Local Board Id
c39cf12d 70 kTriggerRatio4434AllEvents = 102, ///< Ratio 44/34 since the beginning of the run vs Event Number
2e010e03 71 kTriggerRatio4434SinceLastUpdate = 103, ///< Ratio 44/34 for the last kUpdateRatio4434 events vs Event Number
72 kTriggerNumberOf34Dec = 104, ///< Number of Decision in coincidence 3/4 vs Local Board
73 kTriggerNumberOf44Dec = 105 ///< Number of Decision in coincidence 4/4 vs Local Board
b3d57767 74
6482f70b 75 };
76
77 /// Rec points histograms indices
78 enum ERecPoints {
79 kTrackerNumberOfClustersPerChamber = 100, ///< Tracker: number of clusters per chamber
80 kTrackerClusterMultiplicityPerChMean = 101, ///< cluster size per Ch: mean
81 kTrackerClusterMultiplicityPerChSigma = 102, ///< cluster size per Ch: dispersion
82 kTrackerClusterChargePerChMean = 103, ///< cluster charge per Ch: mean
83 kTrackerClusterChargePerChSigma = 104, ///< cluster charge per Ch: dispersion
84
85 kTrackerRecPoints = 105, ///< Tracker : tracker data of clusters (all and mono-cathode ones)
86
87 kTrackerClusterMultiplicityPerChamber = 200, ///< Tracker: cluster multiplicity per chamber
88 kTrackerClusterChargePerChamber = 300, ///< Tracker: cluster charge per chamber
89 kTrackerClusterHitMapPerChamber = 400, ///< Tracker: cluster position distribution per chamber
90
91 kTrackerNumberOfClustersPerDE = 1000, ///< Tracker : number of clusters per DE
92 kTrackerClusterMultiplicityPerDEMean = 1001, ///< cluster size per DE: mean
93 kTrackerClusterChargePerDEMean = 1002, ///< cluster charge per DE: mean
94
95 kTrackerClusterMultiplicityPerDE = 3000, ///< Tracker : cluster multiplicity per DE
96 kTrackerClusterChargePerDE = 5000, ///< Tracker : cluster charge per DE
97
98 kTriggerNAnalyzedEvents = 0, ///< Number of analyzed events per event specie
99 kTriggerRPCtrips = 1, ///< Trips in trigger chambers
100 kTriggerRPChv = 2 ///< Trigger chamber HV index
101
102 };
103
104 /// ESD histograms indices
105 enum EESD {
106 kESDnTracks = 0, ///< number of tracks
107 kESDMatchTrig = 1, ///< number of tracks matched with trigger
108 kESDMomentum = 2, ///< P distribution
109 kESDPt = 3, ///< Pt distribution
110 kESDRapidity = 4, ///< rapidity distribution
111 kESDChi2 = 5, ///< normalized chi2 distribution
112 kESDProbChi2 = 6, ///< distribution of probability of chi2
113
114 kESDClusterHitMap = 7, ///< cluster position distribution in chamber i
115 kESDnClustersPerTrack = 17, ///< number of clusters per track
116 kESDnClustersPerCh = 18, ///< number of clusters per chamber per track
117 kESDnClustersPerDE = 19, ///< number of clusters per DE per track
118 kESDClusterChargeInCh = 20, ///< cluster charge distribution in chamber i
119 kESDClusterChargePerChMean = 30, ///< cluster charge per Ch: mean
120 kESDClusterChargePerChSigma = 31, ///< cluster charge per Ch: dispersion
121 kESDClusterChargePerDE = 32, ///< cluster charge per DE: mean
122 kESDClusterSizeInCh = 33, ///< cluster size distribution in chamber i
123 kESDClusterSizePerChMean = 43, ///< cluster size per Ch: mean
124 kESDClusterSizePerChSigma = 44, ///< cluster size per Ch: dispersion
125 kESDClusterSizePerDE = 45, ///< cluster size per DE: mean
126
127 kESDResidualXInCh = 46, ///< cluster-track residual-X distribution in chamber i
128 kESDResidualYInCh = 56, ///< cluster-track residual-Y distribution in chamber i
129 kESDResidualXPerChMean = 66, ///< cluster-track residual-X per Ch: mean
130 kESDResidualYPerChMean = 67, ///< cluster-track residual-Y per Ch: mean
131 kESDResidualXPerChSigma = 68, ///< cluster-track residual-X per Ch: dispersion
132 kESDResidualYPerChSigma = 69, ///< cluster-track residual-Y per Ch: dispersion
133 kESDResidualXPerDEMean = 70, ///< cluster-track residual-X per DE: mean
134 kESDResidualYPerDEMean = 71, ///< cluster-track residual-Y per DE: mean
135 kESDResidualXPerDESigma = 72, ///< cluster-track residual-X per DE: dispersion
136 kESDResidualYPerDESigma = 73, ///< cluster-track residual-Y per DE: dispersion
137 kESDLocalChi2XInCh = 74, ///< local chi2-X distribution in chamber i
138 kESDLocalChi2YInCh = 84, ///< local chi2-Y distribution in chamber i
139 kESDLocalChi2XPerChMean = 94, ///< local chi2-X per Ch: mean
140 kESDLocalChi2YPerChMean = 95, ///< local chi2-Y per Ch: mean
141 kESDLocalChi2XPerDEMean = 96, ///< local chi2-X per DE: mean
142 kESDLocalChi2YPerDEMean = 97, ///< local chi2-Y per DE: mean
143 kESDLocalChi2InCh = 98, ///< local chi2-X distribution in chamber i
144 kESDLocalChi2PerChMean = 108, ///< local chi2 per Ch: mean
145 kESDLocalChi2PerDEMean = 109, ///< local chi2 per DE: mean
146
147 kESDThetaX = 110, ///< thetaX distribution
148 kESDThetaY = 111, ///< thetaY distribution
149
150 kESDnTotClustersPerCh = 1000, ///< total number of associated clusters per chamber
151 kESDnTotClustersPerDE = 1001, ///< total number of associated clusters per DE
152 kESDnTotFullClustersPerDE = 1002, ///< total number of associated clusters containing pad info per DE
153 kESDSumClusterChargePerDE = 1003, ///< sum of cluster charge per DE
154 kESDSumClusterSizePerDE = 1004, ///< sum of cluster size per DE
155 kESDSumResidualXPerDE = 1005, ///< sum of cluster-track residual-X per DE
156 kESDSumResidualYPerDE = 1006, ///< sum of cluster-track residual-Y per DE
157 kESDSumResidualX2PerDE = 1007, ///< sum of cluster-track residual-X**2 per DE
158 kESDSumResidualY2PerDE = 1008, ///< sum of cluster-track residual-Y**2 per DE
159 kESDSumLocalChi2XPerDE = 1009, ///< sum of local chi2-X per DE
160 kESDSumLocalChi2YPerDE = 1010, ///< sum of local chi2-Y per DE
161 kESDSumLocalChi2PerDE = 1011 ///< sum of local chi2 per DE
162 };
163
164 // Bins for summary histos
165 enum {
166 kTriggerRespStrips, ///< Bin for % of responding trigger strips
167 kTriggerRespLocal, ///< Bin for % of responding trigger local boards
168 kTriggerRespRegional, ///< Bin for % of responding trigger regional boards
169 kTriggerRespGlobal, ///< Bin for % of responding trigger global boards
170 kTriggerNoisyStrips, ///< Bin for % of noisy trigger strips
171 kNtrigCalibSummaryBins ///< Total number of bins for trigger calibration summary
172 };
173
174 // Bins for algorithm error histos
175 enum {
176 kAlgoLocalX, ///< Bin for % of local board X pos errors
177 kAlgoLocalY, ///< Bin for % of local board Y pos errors
178 kAlgoLocalLUT, ///< Bin for % of local board deviation errors
179 kAlgoLocalYCopy, ///< Bin for % of local board Y copy errors
180 kAlgoLocalToRegional, ///< Bin for % of local to regional errors
181 kAlgoRegional, ///< Bin for % of regional board errors
182 kAlgoRegionalToGlobal, ///< Bin for % of regional to global errors
183 kAlgoGlobalFromGlobal, ///< Bin for % of global from global board errors
184 kAlgoGlobalFromLocal, ///< Bin for % of global from local board errors
185 kAlgoGlobalFromRegional, ///< Bin for % of global from regional board errors
186 kNtrigAlgoErrorBins ///< Total number of bins for trigger error summary
187 };
188
189 enum {
190 kLocalStructError, ///< Bin for % of errors in local struct
191 kRegionalStructError, ///< Bin for % of errors in regional struct
192 kGlobalStructError, ///< Bin for % of errors in global struct
193 kDarcStructError, ///< Bin for % of errors in darc struct
194 kNtrigStructErrorBins ///< Total number of bins for struct error summary
195 };
196
f2e6387f 197 // Bins for tracker readout errors
b3d57767 198 enum ETrackerReadoutStatus
f2e6387f 199 {
200 kTrackerRawNofGlitchErrors = 0, ///< Bin for number of glitch errors
201 kTrackerRawNofTokenLostErrors = 1, ///< Bin for number of token lost errors
202 kTrackerRawNofParityErrors = 2, ///< Bin for number of parity errors
b3d57767 203 kTrackerRawNofPaddingErrors = 3, ///< Bin for number of padding errors
204 kTrackerRawNofEmptyEvents = 4, ///< Bin for number of empty events
205 kTrackerRawNofMissingBusPatchesFromConfig = 5 , ///< Bin for number of missing bus patches (in config)
206 kTrackerRawNofMissingBusPatchesFromDataStream = 6 ///< Bin for number of missing bus patches (in actual data)
f2e6387f 207 };
6482f70b 208
209}
210
211#endif