DQM configure file
[u/mrichter/AliRoot.git] / MUON / AliMUONQAIndices.h
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
9 /// \ingroup base
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
16 namespace AliMUONQAIndices
17 {
18   /// Histogram indices common to raw and digits and/or recpoints.
19   ///
20   /// WARNING ! Those ones should not be reused anywhere else below.
21   /// Numbers from 1 to 49 are thus reserved for ECommon enum !
22   ///
23   enum ECommon {
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
35     kTrackerIsThere                   = 12, ///< whether we're making QA of tracker or not
36     kTriggerIsThere                   = 13  ///< whether we're making QA of trigger or not
37   };
38   
39   /// Raw/digits histograms indices
40   enum ERaw { 
41     
42     kTrackerReadoutStatusPerEvent     = 51, ///< as kTrackerReadoutStatus but normalized by the number of events
43     kTrackerReadoutStatus             = 52, ///< Status of readout (errors, missing pads, etc...)
44     kTrackerDDLEventSize             =  53, ///< event size per DDL
45     kTrackerDDLEventSizePerEvent     =  54, ///< event size per DDL per event
46
47     kTriggerScalersTime       = 60, ///< Trigger scalers acquisition time index
48     kTriggerScalers           = 61, ///< Trigger scalers histogram per plane index
49     kTriggerScalersDisplay    = 71, ///< Trigger scalers display histogram per plane index
50     kTriggerCalibSummary      = 80, ///< Number of responding strips/boards and noisy strips 
51     kTriggerCalibSummaryNorm  = 81, ///< Percentage of responding strips/boards and noisy strips
52     kTriggerErrorLocalXPos = 82, ///< Local board: Number of XPos Error vs Local Board Id
53     kTriggerErrorLocalYPos = 83, ///< Local board: Number of YPos Error vs Local Board Id
54     kTriggerErrorLocalDev  = 84, ///< Local board: Number of Deviation Error vs Local Board
55     kTriggerErrorLocalTriggerDec = 85, ///< Local board: Number of Trigger Decision (All Pt) Error vs Local Board Id
56     kTriggerErrorLocalLPtLSB = 86, ///< Local board: Number of LSB Low Pt Error vs Local Board Id
57     kTriggerErrorLocalLPtMSB = 87, ///< Local board: Number of MSB Low Pt Error vs Local Board Id
58     kTriggerErrorLocalHPtLSB = 88, ///< Local board: Number of LSB High Pt Error vs Local Board Id
59     kTriggerErrorLocalHPtMSB = 89, ///< Local board: Number of MSB High Pt Error vs Local Board Id
60     kTriggerErrorLocalTrigY  = 90, ///< Local board: Number of TrigY Error vs Local Board Id
61     kTriggerErrorLocal2RegionalLPtLSB  = 91, ///< Local to Regional: Number of LPt LSB error vs Local Board Id
62     kTriggerErrorLocal2RegionalLPtMSB  = 92, ///< Local to Regional: Number of LPt MSB error vs Local Board Id
63     kTriggerErrorLocal2RegionalHPtLSB  = 93, ///< Local to Regional: Number of HPt LSB error vs Local Board Id
64     kTriggerErrorLocal2RegionalHPtMSB  = 94, ///< Local to Regional: Number of HPt MSB error vs Local Board Id
65     kTriggerErrorOutGlobalFromInGlobal = 95, ///< Global board: Number of error vs output bit    with a re-reconstruction from Global inputs
66     kTriggerErrorOutGlobalFromInLocal = 96, ///< Global board: Number of error vs output bit  with a re-reconstruction from Local inputs
67     kTriggerErrorSummary      = 97,  ///< Number of errors for each trigger decision level (Local, Reg->Local, Reg, Reg->Glob, Global)
68     kTriggerErrorSummaryNorm  = 98,  ///< Percentage of errors for each trigger decision level
69     kTriggerErrorLocalYCopy     = 99, ///< Local board: Number of Y Copy Error vs Local Board Id
70     kTriggerErrorLocalYCopyTest = 100, ///< Local Board: Number of Y copy error tests (for normalization)
71     kTriggerErrorLocalYCopyNorm = 101, ///< Local Board: Number of Y Copy Error vs Local Board Id Normalized to the number of tests
72     kTriggeredBoards          = 102,  ///< Triggered boards histogram index
73     kTriggerBoardsDisplay     = 103,  ///< Triggered boards display histogram index
74     kTriggerReadOutErrors     = 104,  ///< Number of read-out errors
75     kTriggerReadOutErrorsNorm = 105,  ///< Percentage of read-out errors
76     kTriggerGlobalOutput      = 106,  ///< Number of Global outputs and Global algo errors
77     kTriggerGlobalOutputNorm  = 107,  ///< Percentage of Global outputs and Global algo errors
78     kTriggerRawNAnalyzedEvents= 108,  ///< Number of analyzed events per event specie
79     kTriggerLocalRatio4434           = 109,  ///< Ratio 44/34 vs Local Board Id
80     kTriggerRatio4434AllEvents       = 110,  ///< Ratio 44/34 since the beginning of the run vs Event Number
81     kTriggerRatio4434SinceLastUpdate = 111,  ///< Ratio 44/34 for the last kUpdateRatio4434 events vs Event Number
82     kTriggerNumberOf34Dec            = 112,  ///< Number of Decision in coincidence 3/4 vs Local Board
83     kTriggerNumberOf44Dec            = 113,  ///< Number of Decision in coincidence 4/4 vs Local Board
84     kTriggerGlobalScalers            = 114,  ///< Number of L0 counts
85     kTriggerGlobalScalersNorm        = 115   ///< L0 scaler rates
86     
87   };
88   
89   /// Rec points histograms indices
90   enum ERecPoints { 
91     kTrackerNumberOfClustersPerChamber    = 100, ///< Tracker: number of clusters per chamber
92     kTrackerClusterMultiplicityPerChMean  = 101, ///< cluster size per Ch: mean
93     kTrackerClusterMultiplicityPerChSigma = 102, ///< cluster size per Ch: dispersion
94     kTrackerClusterChargePerChMean        = 103, ///< cluster charge per Ch: mean
95     kTrackerClusterChargePerChSigma       = 104, ///< cluster charge per Ch: dispersion
96     
97     kTrackerRecPoints = 105, ///< Tracker : tracker data of clusters (all and mono-cathode ones)
98     
99     kTrackerClusterMultiplicityPerChamber = 200, ///< Tracker: cluster multiplicity per chamber
100     kTrackerClusterChargePerChamber       = 300, ///< Tracker: cluster charge per chamber
101     kTrackerClusterHitMapPerChamber       = 400, ///< Tracker: cluster position distribution per chamber
102     
103     kTrackerNumberOfClustersPerDE        = 500, ///< Tracker : number of clusters per DE                
104     kTrackerClusterMultiplicityPerDEMean = 501, ///< cluster size per DE: mean
105     kTrackerClusterChargePerDEMean       = 502, ///< cluster charge per DE: mean
106     
107     kTrackerClusterMultiplicityPerDE = 3000, ///< Tracker : cluster multiplicity per DE         
108     kTrackerClusterChargePerDE       = 5000,  ///< Tracker : cluster charge per DE
109     
110     kTriggerNAnalyzedEvents           = 50, ///< Number of analyzed events per event specie
111     kTriggerRPCtrips           = 51, ///< Trips in trigger chambers
112     kTriggerRPChv              = 52  ///< Trigger chamber HV index
113     
114   };
115   
116   /// ESD histograms indices
117   enum EESD { 
118     kESDnTracks                 =  50,  ///< number of tracks
119     kESDMatchTrig               =  51,  ///< number of tracks matched with trigger
120     kESDMomentum                =  52,  ///< P distribution
121     kESDPt                      =  53,  ///< Pt distribution
122     kESDRapidity                =  54,  ///< rapidity distribution
123     kESDChi2                    =  55,  ///< normalized chi2 distribution
124     kESDProbChi2                =  56,  ///< distribution of probability of chi2
125     
126     kESDClusterHitMap           =  57,  ///< cluster position distribution in chamber i
127     kESDnClustersPerTrack       =  67, ///< number of clusters per track
128     kESDnClustersPerCh          =  68, ///< number of clusters per chamber per track
129     kESDnClustersPerDE          =  69, ///< number of clusters per DE per track
130     kESDClusterChargeInCh       =  70, ///< cluster charge distribution in chamber i
131     kESDClusterChargePerChMean  =  80, ///< cluster charge per Ch: mean
132     kESDClusterChargePerChSigma =  81, ///< cluster charge per Ch: dispersion
133     kESDClusterChargePerDE      =  82, ///< cluster charge per DE: mean
134     kESDClusterSizeInCh         =  83, ///< cluster size distribution in chamber i
135     kESDClusterSizePerChMean    =  93, ///< cluster size per Ch: mean
136     kESDClusterSizePerChSigma   =  94, ///< cluster size per Ch: dispersion
137     kESDClusterSizePerDE        =  95, ///< cluster size per DE: mean
138     
139     kESDResidualXInCh           =  96, ///< cluster-track residual-X distribution in chamber i
140     kESDResidualYInCh           = 106, ///< cluster-track residual-Y distribution in chamber i
141     kESDResidualXPerChMean      = 116, ///< cluster-track residual-X per Ch: mean
142     kESDResidualYPerChMean      = 117, ///< cluster-track residual-Y per Ch: mean
143     kESDResidualXPerChSigma     = 118, ///< cluster-track residual-X per Ch: dispersion
144     kESDResidualYPerChSigma     = 119, ///< cluster-track residual-Y per Ch: dispersion
145     kESDResidualXPerDEMean      = 120, ///< cluster-track residual-X per DE: mean
146     kESDResidualYPerDEMean      = 121, ///< cluster-track residual-Y per DE: mean
147     kESDResidualXPerDESigma     = 122, ///< cluster-track residual-X per DE: dispersion
148     kESDResidualYPerDESigma     = 123, ///< cluster-track residual-Y per DE: dispersion
149     kESDLocalChi2XInCh          = 124, ///< local chi2-X distribution in chamber i
150     kESDLocalChi2YInCh          = 134, ///< local chi2-Y distribution in chamber i
151     kESDLocalChi2XPerChMean     = 144, ///< local chi2-X per Ch: mean
152     kESDLocalChi2YPerChMean     = 145, ///< local chi2-Y per Ch: mean
153     kESDLocalChi2XPerDEMean     = 146, ///< local chi2-X per DE: mean
154     kESDLocalChi2YPerDEMean     = 147, ///< local chi2-Y per DE: mean
155     kESDLocalChi2InCh           = 148, ///< local chi2-X distribution in chamber i
156     kESDLocalChi2PerChMean      = 158, ///< local chi2 per Ch: mean
157     kESDLocalChi2PerDEMean      = 159, ///< local chi2 per DE: mean
158     
159     kESDThetaX                  = 160, ///< thetaX distribution
160     kESDThetaY                  = 161, ///< thetaY distribution
161     
162     kESDnTotClustersPerCh       = 1000, ///< total number of associated clusters per chamber
163     kESDnTotClustersPerDE       = 1001, ///< total number of associated clusters per DE
164     kESDnTotFullClustersPerDE   = 1002, ///< total number of associated clusters containing pad info per DE
165     kESDSumClusterChargePerDE   = 1003, ///< sum of cluster charge per DE
166     kESDSumClusterSizePerDE     = 1004, ///< sum of cluster size per DE
167     kESDSumResidualXPerDE       = 1005, ///< sum of cluster-track residual-X per DE
168     kESDSumResidualYPerDE       = 1006, ///< sum of cluster-track residual-Y per DE
169     kESDSumResidualX2PerDE      = 1007, ///< sum of cluster-track residual-X**2 per DE
170     kESDSumResidualY2PerDE      = 1008, ///< sum of cluster-track residual-Y**2 per DE
171     kESDSumLocalChi2XPerDE      = 1009, ///< sum of local chi2-X per DE
172     kESDSumLocalChi2YPerDE      = 1010, ///< sum of local chi2-Y per DE
173     kESDSumLocalChi2PerDE       = 1011  ///< sum of local chi2 per DE
174   };
175   
176   // Bins for summary histos
177   enum {
178     kTriggerRespStrips,    ///< Bin for % of responding trigger strips
179     kTriggerRespLocal,     ///< Bin for % of responding trigger local boards
180     kTriggerRespRegional,  ///< Bin for % of responding trigger regional boards
181     kTriggerRespGlobal,    ///< Bin for % of responding trigger global boards
182     kTriggerNoisyStrips,   ///< Bin for % of noisy trigger strips
183     kNtrigCalibSummaryBins ///< Total number of bins for trigger calibration summary
184   };
185   
186   // Bins for algorithm error histos
187   enum {
188     kAlgoLocalX,             ///< Bin for % of local board X pos errors
189     kAlgoLocalY,             ///< Bin for % of local board Y pos errors
190     kAlgoLocalLUT,           ///< Bin for % of local board deviation errors
191     kAlgoLocalYCopy,         ///< Bin for % of local board Y copy errors
192     kAlgoLocalToRegional,    ///< Bin for % of local to regional errors
193     kAlgoRegional,           ///< Bin for % of regional board errors 
194     kAlgoRegionalToGlobal,   ///< Bin for % of regional to global errors 
195     kAlgoGlobalFromGlobal,   ///< Bin for % of global from global board errors 
196     kAlgoGlobalFromLocal,    ///< Bin for % of global from local board errors 
197     kAlgoGlobalFromRegional, ///< Bin for % of global from regional board errors 
198     kNtrigAlgoErrorBins      ///< Total number of bins for trigger error summary
199   };
200   
201   enum {
202     kLocalStructError,    ///< Bin for % of errors in local struct
203     kRegionalStructError, ///< Bin for % of errors in regional struct
204     kGlobalStructError,   ///< Bin for % of errors in global struct
205     kDarcStructError,     ///< Bin for % of errors in darc struct
206     kNtrigStructErrorBins ///< Total number of bins for struct error summary
207   };
208     
209   // Bins for tracker readout errors
210   enum ETrackerReadoutStatus
211   {
212     kTrackerRawNofGlitchErrors = 0, ///< Bin for number of glitch errors
213     kTrackerRawNofTokenLostErrors = 1, ///< Bin for number of token lost errors
214     kTrackerRawNofParityErrors = 2, ///< Bin for number of parity errors
215     kTrackerRawNofPaddingErrors = 3, ///< Bin for number of padding errors
216     kTrackerRawNofEmptyEvents = 4, ///< Bin for number of empty events
217     kTrackerRawNofMissingBusPatchesFromConfig = 5 , ///< Bin for number of missing bus patches (in config)
218     kTrackerRawNofMissingBusPatchesFromDataStream = 6 ///< Bin for number of missing bus patches (in actual data)
219   };
220   
221 }
222
223 #endif