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