]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONTrackerQADataMakerRec.h
Oups. Linux misses an include. And increasing the version number will not hurt either
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackerQADataMakerRec.h
CommitLineData
ece56eb9 1#ifndef ALIMUONTRACKERQADATAMAKERREC_H
2#define ALIMUONTRACKERQADATAMAKERREC_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6// $Id: AliMUONTrackerQADataMakerRec.h 35760 2009-10-21 21:45:42Z ivana $
7
8/// \ingroup rec
9/// \class AliMUONTrackerQADataMakerRec
10/// \brief MUON Quality assurance data maker
11///
12
13// --- AliRoot header files ---
14#include "AliMUONVQADataMakerRec.h"
15#include "AliMUONRecoParam.h"
16
17class AliMUONDigitMaker;
18class AliMUONVClusterStore;
19class AliMUONVDigitStore;
20class AliMUONVStore;
21class AliMUONVTrackerData;
22class AliMUONVTrackerDataMaker;
23class AliMUONCalibrationData;
24class AliMUONQAMappingCheck;
25
26class AliMUONTrackerQADataMakerRec: public AliMUONVQADataMakerRec {
27
28public:
29 AliMUONTrackerQADataMakerRec(AliQADataMakerRec* master);
30 virtual ~AliMUONTrackerQADataMakerRec();
31
32 AliMUONVTrackerData* GetTrackerData() const;
33
34 virtual void InitDigits();
35 virtual void InitESDs();
36 virtual void InitRaws();
37 virtual void InitRecPoints();
38
39 void EndOfDetectorCycleRaws(Int_t specie, TObjArray** list);
40 void EndOfDetectorCycleRecPoints(Int_t specie, TObjArray** list);
41 void EndOfDetectorCycleESDs(Int_t specie, TObjArray** list);
3e1866ad 42
43 /// Empty implementation
ece56eb9 44 void EndOfDetectorCycleDigits(Int_t, TObjArray**) {}
45
46 virtual void MakeDigits(TTree* dig);
47 virtual void MakeESDs(AliESDEvent* esd) ;
48 virtual void MakeRaws(AliRawReader* rawReader);
49 virtual void MakeRecPoints(TTree* recpo);
50
51public:
52
53 /// Raw histograms indices
54 enum ERaw {
55 kTrackerData = 3, ///< Accumulated data
56 kTrackerBusPatchOccupancy = 4, ///< Bus patch occupancies
57 kTrackerBusPatchNofPads = 5, ///< Number of pads per bus patch
58 kTrackerBusPatchNofManus = 6, ///< Number of manus per bus patch
ffaafee5 59 kTrackerBusPatchConfig = 7 ///< Configuration of the tracker
ece56eb9 60 };
61
62 /// Rec points histograms indices
63 enum ERecPoints {
64 kTrackerNumberOfClustersPerChamber = 100, ///< Tracker: number of clusters per chamber
65 kTrackerClusterMultiplicityPerChMean = 101, ///< cluster size per Ch: mean
66 kTrackerClusterMultiplicityPerChSigma = 102, ///< cluster size per Ch: dispersion
67 kTrackerClusterChargePerChMean = 103, ///< cluster charge per Ch: mean
68 kTrackerClusterChargePerChSigma = 104, ///< cluster charge per Ch: dispersion
69
70 kTrackerRecPoints = 105, ///< Tracker : tracker data of clusters (all and mono-cathode ones)
71
72 kTrackerClusterMultiplicityPerChamber = 200, ///< Tracker: cluster multiplicity per chamber
73 kTrackerClusterChargePerChamber = 300, ///< Tracker: cluster charge per chamber
74 kTrackerClusterHitMapPerChamber = 400, ///< Tracker: cluster position distribution per chamber
75
76 kTrackerNumberOfClustersPerDE = 1000, ///< Tracker : number of clusters per DE
77 kTrackerClusterMultiplicityPerDEMean = 1001, ///< cluster size per DE: mean
78 kTrackerClusterChargePerDEMean = 1002, ///< cluster charge per DE: mean
79
80 kTrackerClusterMultiplicityPerDE = 3000, ///< Tracker : cluster multiplicity per DE
81 kTrackerClusterChargePerDE = 5000 ///< Tracker : cluster charge per DE
82
83 };
84
85 /// ESD histograms indices
86 enum EESD {
87 kESDnTracks = 0, ///< number of tracks
88 kESDMatchTrig = 1, ///< number of tracks matched with trigger
89 kESDMomentum = 2, ///< P distribution
90 kESDPt = 3, ///< Pt distribution
91 kESDRapidity = 4, ///< rapidity distribution
92 kESDChi2 = 5, ///< normalized chi2 distribution
93 kESDProbChi2 = 6, ///< distribution of probability of chi2
94
95 kESDClusterHitMap = 7, ///< cluster position distribution in chamber i
96 kESDnClustersPerTrack = 17, ///< number of clusters per track
97 kESDnClustersPerCh = 18, ///< number of clusters per chamber per track
98 kESDnClustersPerDE = 19, ///< number of clusters per DE per track
99 kESDClusterChargeInCh = 20, ///< cluster charge distribution in chamber i
100 kESDClusterChargePerChMean = 30, ///< cluster charge per Ch: mean
101 kESDClusterChargePerChSigma = 31, ///< cluster charge per Ch: dispersion
102 kESDClusterChargePerDE = 32, ///< cluster charge per DE: mean
103 kESDClusterSizeInCh = 33, ///< cluster size distribution in chamber i
104 kESDClusterSizePerChMean = 43, ///< cluster size per Ch: mean
105 kESDClusterSizePerChSigma = 44, ///< cluster size per Ch: dispersion
106 kESDClusterSizePerDE = 45, ///< cluster size per DE: mean
107
108 kESDResidualXInCh = 46, ///< cluster-track residual-X distribution in chamber i
109 kESDResidualYInCh = 56, ///< cluster-track residual-Y distribution in chamber i
110 kESDResidualXPerChMean = 66, ///< cluster-track residual-X per Ch: mean
111 kESDResidualYPerChMean = 67, ///< cluster-track residual-Y per Ch: mean
112 kESDResidualXPerChSigma = 68, ///< cluster-track residual-X per Ch: dispersion
113 kESDResidualYPerChSigma = 69, ///< cluster-track residual-Y per Ch: dispersion
114 kESDResidualXPerDEMean = 70, ///< cluster-track residual-X per DE: mean
115 kESDResidualYPerDEMean = 71, ///< cluster-track residual-Y per DE: mean
116 kESDResidualXPerDESigma = 72, ///< cluster-track residual-X per DE: dispersion
117 kESDResidualYPerDESigma = 73, ///< cluster-track residual-Y per DE: dispersion
118 kESDLocalChi2XInCh = 74, ///< local chi2-X distribution in chamber i
119 kESDLocalChi2YInCh = 84, ///< local chi2-Y distribution in chamber i
120 kESDLocalChi2XPerChMean = 94, ///< local chi2-X per Ch: mean
121 kESDLocalChi2YPerChMean = 95, ///< local chi2-Y per Ch: mean
122 kESDLocalChi2XPerDEMean = 96, ///< local chi2-X per DE: mean
123 kESDLocalChi2YPerDEMean = 97, ///< local chi2-Y per DE: mean
124 kESDLocalChi2InCh = 98, ///< local chi2-X distribution in chamber i
125 kESDLocalChi2PerChMean = 108, ///< local chi2 per Ch: mean
126 kESDLocalChi2PerDEMean = 109, ///< local chi2 per DE: mean
127
128 kESDThetaX = 110, ///< thetaX distribution
129 kESDThetaY = 111, ///< thetaY distribution
130
131 kESDnTotClustersPerCh = 1000, ///< total number of associated clusters per chamber
132 kESDnTotClustersPerDE = 1001, ///< total number of associated clusters per DE
133 kESDnTotFullClustersPerDE = 1002, ///< total number of associated clusters containing pad info per DE
134 kESDSumClusterChargePerDE = 1003, ///< sum of cluster charge per DE
135 kESDSumClusterSizePerDE = 1004, ///< sum of cluster size per DE
136 kESDSumResidualXPerDE = 1005, ///< sum of cluster-track residual-X per DE
137 kESDSumResidualYPerDE = 1006, ///< sum of cluster-track residual-Y per DE
138 kESDSumResidualX2PerDE = 1007, ///< sum of cluster-track residual-X**2 per DE
139 kESDSumResidualY2PerDE = 1008, ///< sum of cluster-track residual-Y**2 per DE
140 kESDSumLocalChi2XPerDE = 1009, ///< sum of local chi2-X per DE
141 kESDSumLocalChi2YPerDE = 1010, ///< sum of local chi2-Y per DE
142 kESDSumLocalChi2PerDE = 1011 ///< sum of local chi2 per DE
143 };
144
145private:
146
147 void InsertTrackerData(Int_t specie, TObjArray** list, TObject* object,
148 Int_t indexNumber, Bool_t replace=kFALSE);
149
150private:
3e1866ad 151 /// Not implemented
152 AliMUONTrackerQADataMakerRec(const AliMUONTrackerQADataMakerRec& rhs);
153 /// Not implemented
154 AliMUONTrackerQADataMakerRec& operator=(const AliMUONTrackerQADataMakerRec& rhs);
ece56eb9 155
156 AliMUONVDigitStore* fDigitStore; //!< pointer to digits store
157 AliMUONDigitMaker* fDigitMaker; //!< pointer to digit maker
158 AliMUONVClusterStore* fClusterStore; //!< pointer to cluster store
159
160 AliMUONVTrackerDataMaker* fTrackerDataMaker; //!< tracker data accumulation (Raw)
161
162 AliMUONQAMappingCheck* fMappingCheckRecPoints; //!< mapping cross-checker (RecPoints)
163
164 AliMUONCalibrationData* fCalibrationData; //!< Used to load Local, Regional and Global masks
165
166 ClassDef(AliMUONTrackerQADataMakerRec,1) // MUON Quality assurance data maker
167
168};
169#endif