00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #include "Alignment/CommonAlignmentMonitor/interface/AlignmentMonitorMuonSystemMap1D.h"
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 AlignmentMonitorMuonSystemMap1D::AlignmentMonitorMuonSystemMap1D(const edm::ParameterSet& cfg)
00028 : AlignmentMonitorBase(cfg, "AlignmentMonitorMuonSystemMap1D")
00029 , m_minTrackPt(cfg.getParameter<double>("minTrackPt"))
00030 , m_maxTrackPt(cfg.getParameter<double>("maxTrackPt"))
00031 , m_minTrackerHits(cfg.getParameter<int>("minTrackerHits"))
00032 , m_maxTrackerRedChi2(cfg.getParameter<double>("maxTrackerRedChi2"))
00033 , m_allowTIDTEC(cfg.getParameter<bool>("allowTIDTEC"))
00034 , m_minDT13Hits(cfg.getParameter<int>("minDT13Hits"))
00035 , m_minDT2Hits(cfg.getParameter<int>("minDT2Hits"))
00036 , m_minCSCHits(cfg.getParameter<int>("minCSCHits"))
00037 {}
00038
00039 std::string AlignmentMonitorMuonSystemMap1D::num02d(int num) {
00040 int tens = num / 10;
00041 int ones = num % 10;
00042
00043 std::string s_tens, s_ones;
00044 if (tens == 0) s_tens = std::string("0");
00045 if (tens == 1) s_tens = std::string("1");
00046 if (tens == 2) s_tens = std::string("2");
00047 if (tens == 3) s_tens = std::string("3");
00048 if (tens == 4) s_tens = std::string("4");
00049 if (tens == 5) s_tens = std::string("5");
00050 if (tens == 6) s_tens = std::string("6");
00051 if (tens == 7) s_tens = std::string("7");
00052 if (tens == 8) s_tens = std::string("8");
00053 if (tens == 9) s_tens = std::string("9");
00054
00055 if (ones == 0) s_ones = std::string("0");
00056 if (ones == 1) s_ones = std::string("1");
00057 if (ones == 2) s_ones = std::string("2");
00058 if (ones == 3) s_ones = std::string("3");
00059 if (ones == 4) s_ones = std::string("4");
00060 if (ones == 5) s_ones = std::string("5");
00061 if (ones == 6) s_ones = std::string("6");
00062 if (ones == 7) s_ones = std::string("7");
00063 if (ones == 8) s_ones = std::string("8");
00064 if (ones == 9) s_ones = std::string("9");
00065
00066 return s_tens + s_ones;
00067 }
00068
00069 void AlignmentMonitorMuonSystemMap1D::book() {
00070 for (int sector = 1; sector <= 14; sector++) {
00071 if (sector <= 12) {
00072 m_DTvsz_station1[sector-1] = new MuonSystemMapPlot1D(std::string("DTvsz_st1sec") + num02d(sector), this, 60, -660., 660., true); m_plots.push_back(m_DTvsz_station1[sector-1]);
00073 m_DTvsz_station2[sector-1] = new MuonSystemMapPlot1D(std::string("DTvsz_st2sec") + num02d(sector), this, 60, -660., 660., true); m_plots.push_back(m_DTvsz_station2[sector-1]);
00074 m_DTvsz_station3[sector-1] = new MuonSystemMapPlot1D(std::string("DTvsz_st3sec") + num02d(sector), this, 60, -660., 660., true); m_plots.push_back(m_DTvsz_station3[sector-1]);
00075 }
00076 m_DTvsz_station4[sector-1] = new MuonSystemMapPlot1D(std::string("DTvsz_st4sec") + num02d(sector), this, 60, -660., 660., false); m_plots.push_back(m_DTvsz_station4[sector-1]);
00077 }
00078
00079 for (int endcap = 1; endcap <= 2; endcap++) {
00080 for (int chamber = 1; chamber <= 36; chamber++) {
00081 m_CSCvsr_me1[endcap-1][chamber-1] = new MuonSystemMapPlot1D(std::string("CSCvsr_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("1ch") + num02d(chamber), this, 60, 100., 700., false); m_plots.push_back(m_CSCvsr_me1[endcap-1][chamber-1]);
00082 m_CSCvsr_me2[endcap-1][chamber-1] = new MuonSystemMapPlot1D(std::string("CSCvsr_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("2ch") + num02d(chamber), this, 60, 100., 700., false); m_plots.push_back(m_CSCvsr_me2[endcap-1][chamber-1]);
00083 m_CSCvsr_me3[endcap-1][chamber-1] = new MuonSystemMapPlot1D(std::string("CSCvsr_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("3ch") + num02d(chamber), this, 60, 100., 700., false); m_plots.push_back(m_CSCvsr_me3[endcap-1][chamber-1]);
00084 m_CSCvsr_me4[endcap-1][chamber-1] = new MuonSystemMapPlot1D(std::string("CSCvsr_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("4ch") + num02d(chamber), this, 60, 100., 700., false); m_plots.push_back(m_CSCvsr_me4[endcap-1][chamber-1]);
00085 }
00086 }
00087
00088 for (int wheel = -2; wheel <= 2; wheel++) {
00089 std::string s_wheel;
00090 if (wheel == -2) s_wheel = std::string("A");
00091 else if (wheel == -1) s_wheel = std::string("B");
00092 else if (wheel == 0) s_wheel = std::string("C");
00093 else if (wheel == +1) s_wheel = std::string("D");
00094 else if (wheel == +2) s_wheel = std::string("E");
00095
00096 m_DTvsphi_station1[wheel+2] = new MuonSystemMapPlot1D(std::string("DTvsphi_st1wh") + s_wheel, this, 180, -M_PI, M_PI, true); m_plots.push_back(m_DTvsphi_station1[wheel+2]);
00097 m_DTvsphi_station2[wheel+2] = new MuonSystemMapPlot1D(std::string("DTvsphi_st2wh") + s_wheel, this, 180, -M_PI, M_PI, true); m_plots.push_back(m_DTvsphi_station2[wheel+2]);
00098 m_DTvsphi_station3[wheel+2] = new MuonSystemMapPlot1D(std::string("DTvsphi_st3wh") + s_wheel, this, 180, -M_PI, M_PI, true); m_plots.push_back(m_DTvsphi_station3[wheel+2]);
00099 m_DTvsphi_station4[wheel+2] = new MuonSystemMapPlot1D(std::string("DTvsphi_st4wh") + s_wheel, this, 180, -M_PI, M_PI, false); m_plots.push_back(m_DTvsphi_station4[wheel+2]);
00100 }
00101
00102 for (int endcap = 1; endcap <= 2; endcap++) {
00103 m_CSCvsphi_me11[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("11"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me11[endcap-1]);
00104 m_CSCvsphi_me12[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("12"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me12[endcap-1]);
00105 m_CSCvsphi_me13[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("13"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me13[endcap-1]);
00106 m_CSCvsphi_me14[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("14"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me14[endcap-1]);
00107 m_CSCvsphi_me21[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("21"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me21[endcap-1]);
00108 m_CSCvsphi_me22[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("22"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me22[endcap-1]);
00109 m_CSCvsphi_me31[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("31"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me31[endcap-1]);
00110 m_CSCvsphi_me32[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("32"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me32[endcap-1]);
00111 m_CSCvsphi_me41[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("41"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me41[endcap-1]);
00112 m_CSCvsphi_me42[endcap-1] = new MuonSystemMapPlot1D(std::string("CSCvsphi_me") + (endcap == 1 ? std::string("p") : std::string("m")) + std::string("42"), this, 180, -M_PI, M_PI, false); m_plots.push_back(m_CSCvsphi_me42[endcap-1]);
00113 }
00114
00115 m_counter_event = 0;
00116 m_counter_track = 0;
00117 m_counter_trackpt = 0;
00118 m_counter_trackokay = 0;
00119 m_counter_dt = 0;
00120 m_counter_13numhits = 0;
00121 m_counter_2numhits = 0;
00122 m_counter_csc = 0;
00123 m_counter_cscnumhits = 0;
00124 }
00125
00126 void AlignmentMonitorMuonSystemMap1D::event(const edm::Event &iEvent, const edm::EventSetup &iSetup, const ConstTrajTrackPairCollection& trajtracks) {
00127 m_counter_event++;
00128
00129 edm::ESHandle<GlobalTrackingGeometry> globalGeometry;
00130 iSetup.get<GlobalTrackingGeometryRecord>().get(globalGeometry);
00131
00132 for (ConstTrajTrackPairCollection::const_iterator trajtrack = trajtracks.begin(); trajtrack != trajtracks.end(); ++trajtrack) {
00133 const Trajectory* traj = (*trajtrack).first;
00134 const reco::Track* track = (*trajtrack).second;
00135
00136 m_counter_track++;
00137
00138 if (m_minTrackPt < track->pt() && track->pt() < m_maxTrackPt) {
00139 char charge = (track->charge() > 0 ? 1 : -1);
00140
00141
00142 MuonResidualsFromTrack muonResidualsFromTrack(globalGeometry, traj, pNavigator(), 1000.);
00143
00144 m_counter_trackpt++;
00145
00146 if (muonResidualsFromTrack.trackerNumHits() >= m_minTrackerHits && muonResidualsFromTrack.trackerRedChi2() < m_maxTrackerRedChi2 && (m_allowTIDTEC || !muonResidualsFromTrack.contains_TIDTEC())) {
00147 std::vector<DetId> chamberIds = muonResidualsFromTrack.chamberIds();
00148
00149 m_counter_trackokay++;
00150
00151 for (std::vector<DetId>::const_iterator chamberId = chamberIds.begin(); chamberId != chamberIds.end(); ++chamberId) {
00152
00153 if (chamberId->det() == DetId::Muon && chamberId->subdetId() == MuonSubdetId::DT) {
00154 MuonChamberResidual *dt13 = muonResidualsFromTrack.chamberResidual(*chamberId, MuonChamberResidual::kDT13);
00155 MuonChamberResidual *dt2 = muonResidualsFromTrack.chamberResidual(*chamberId, MuonChamberResidual::kDT2);
00156 DTChamberId id(chamberId->rawId());
00157
00158 m_counter_dt++;
00159
00160 if (dt13 != NULL && dt13->numHits() >= m_minDT13Hits) {
00161 m_counter_13numhits++;
00162
00163 double residual = dt13->global_residual();
00164 double resslope = dt13->global_resslope();
00165 double chi2 = dt13->chi2();
00166 int dof = dt13->ndof();
00167
00168 GlobalPoint trackpos = dt13->global_trackpos();
00169 double phi = atan2(trackpos.y(), trackpos.x());
00170 double z = trackpos.z();
00171
00172 assert(1 <= id.sector() && id.sector() <= 14);
00173
00174 if (id.station() == 1) m_DTvsz_station1[id.sector()-1]->fill_x(charge, z, residual, chi2, dof);
00175 if (id.station() == 2) m_DTvsz_station2[id.sector()-1]->fill_x(charge, z, residual, chi2, dof);
00176 if (id.station() == 3) m_DTvsz_station3[id.sector()-1]->fill_x(charge, z, residual, chi2, dof);
00177 if (id.station() == 4) m_DTvsz_station4[id.sector()-1]->fill_x(charge, z, residual, chi2, dof);
00178
00179 if (id.station() == 1) m_DTvsz_station1[id.sector()-1]->fill_dxdz(charge, z, resslope, chi2, dof);
00180 if (id.station() == 2) m_DTvsz_station2[id.sector()-1]->fill_dxdz(charge, z, resslope, chi2, dof);
00181 if (id.station() == 3) m_DTvsz_station3[id.sector()-1]->fill_dxdz(charge, z, resslope, chi2, dof);
00182 if (id.station() == 4) m_DTvsz_station4[id.sector()-1]->fill_dxdz(charge, z, resslope, chi2, dof);
00183
00184 if (id.station() == 1) m_DTvsphi_station1[id.wheel()+2]->fill_x(charge, phi, residual, chi2, dof);
00185 if (id.station() == 2) m_DTvsphi_station2[id.wheel()+2]->fill_x(charge, phi, residual, chi2, dof);
00186 if (id.station() == 3) m_DTvsphi_station3[id.wheel()+2]->fill_x(charge, phi, residual, chi2, dof);
00187 if (id.station() == 4) m_DTvsphi_station4[id.wheel()+2]->fill_x(charge, phi, residual, chi2, dof);
00188
00189 if (id.station() == 1) m_DTvsphi_station1[id.wheel()+2]->fill_dxdz(charge, phi, resslope, chi2, dof);
00190 if (id.station() == 2) m_DTvsphi_station2[id.wheel()+2]->fill_dxdz(charge, phi, resslope, chi2, dof);
00191 if (id.station() == 3) m_DTvsphi_station3[id.wheel()+2]->fill_dxdz(charge, phi, resslope, chi2, dof);
00192 if (id.station() == 4) m_DTvsphi_station4[id.wheel()+2]->fill_dxdz(charge, phi, resslope, chi2, dof);
00193 }
00194
00195 if (dt2 != NULL && dt2->numHits() >= m_minDT2Hits) {
00196 m_counter_2numhits++;
00197
00198 double residual = dt2->global_residual();
00199 double resslope = dt2->global_resslope();
00200 double chi2 = dt2->chi2();
00201 int dof = dt2->ndof();
00202
00203 GlobalPoint trackpos = dt2->global_trackpos();
00204 double phi = atan2(trackpos.y(), trackpos.x());
00205 double z = trackpos.z();
00206
00207 assert(1 <= id.sector() && id.sector() <= 14);
00208
00209 if (id.station() == 1) m_DTvsz_station1[id.sector()-1]->fill_y(charge, z, residual, chi2, dof);
00210 if (id.station() == 2) m_DTvsz_station2[id.sector()-1]->fill_y(charge, z, residual, chi2, dof);
00211 if (id.station() == 3) m_DTvsz_station3[id.sector()-1]->fill_y(charge, z, residual, chi2, dof);
00212 if (id.station() == 4) m_DTvsz_station4[id.sector()-1]->fill_y(charge, z, residual, chi2, dof);
00213
00214 if (id.station() == 1) m_DTvsz_station1[id.sector()-1]->fill_dydz(charge, z, resslope, chi2, dof);
00215 if (id.station() == 2) m_DTvsz_station2[id.sector()-1]->fill_dydz(charge, z, resslope, chi2, dof);
00216 if (id.station() == 3) m_DTvsz_station3[id.sector()-1]->fill_dydz(charge, z, resslope, chi2, dof);
00217 if (id.station() == 4) m_DTvsz_station4[id.sector()-1]->fill_dydz(charge, z, resslope, chi2, dof);
00218
00219 if (id.station() == 1) m_DTvsphi_station1[id.wheel()+2]->fill_y(charge, phi, residual, chi2, dof);
00220 if (id.station() == 2) m_DTvsphi_station2[id.wheel()+2]->fill_y(charge, phi, residual, chi2, dof);
00221 if (id.station() == 3) m_DTvsphi_station3[id.wheel()+2]->fill_y(charge, phi, residual, chi2, dof);
00222 if (id.station() == 4) m_DTvsphi_station4[id.wheel()+2]->fill_y(charge, phi, residual, chi2, dof);
00223
00224 if (id.station() == 1) m_DTvsphi_station1[id.wheel()+2]->fill_dydz(charge, phi, resslope, chi2, dof);
00225 if (id.station() == 2) m_DTvsphi_station2[id.wheel()+2]->fill_dydz(charge, phi, resslope, chi2, dof);
00226 if (id.station() == 3) m_DTvsphi_station3[id.wheel()+2]->fill_dydz(charge, phi, resslope, chi2, dof);
00227 if (id.station() == 4) m_DTvsphi_station4[id.wheel()+2]->fill_dydz(charge, phi, resslope, chi2, dof);
00228 }
00229 }
00230
00231 else if (chamberId->det() == DetId::Muon && chamberId->subdetId() == MuonSubdetId::CSC) {
00232 MuonChamberResidual *csc = muonResidualsFromTrack.chamberResidual(*chamberId, MuonChamberResidual::kCSC);
00233 CSCDetId id(chamberId->rawId());
00234
00235 m_counter_csc++;
00236
00237 if (csc != NULL && csc->numHits() >= m_minCSCHits) {
00238 m_counter_cscnumhits++;
00239
00240 double residual = csc->global_residual();
00241 double resslope = csc->global_resslope();
00242 double chi2 = csc->chi2();
00243 int dof = csc->ndof();
00244
00245 GlobalPoint trackpos = csc->global_trackpos();
00246 double phi = atan2(trackpos.y(), trackpos.x());
00247 double R = sqrt(pow(trackpos.x(), 2) + pow(trackpos.y(), 2));
00248
00249 int chamber = id.chamber() - 1;
00250 if (id.station() > 1 && id.ring() == 1) chamber *= 2;
00251
00252 assert(1 <= id.endcap() && id.endcap() <= 2 && 0 <= chamber && chamber <= 35);
00253
00254 if (id.station() == 1) m_CSCvsr_me1[id.endcap()-1][chamber]->fill_x(charge, R, residual, chi2, dof);
00255 if (id.station() == 2) m_CSCvsr_me2[id.endcap()-1][chamber]->fill_x(charge, R, residual, chi2, dof);
00256 if (id.station() == 3) m_CSCvsr_me3[id.endcap()-1][chamber]->fill_x(charge, R, residual, chi2, dof);
00257 if (id.station() == 4) m_CSCvsr_me4[id.endcap()-1][chamber]->fill_x(charge, R, residual, chi2, dof);
00258
00259 if (id.station() == 1) m_CSCvsr_me1[id.endcap()-1][chamber]->fill_dxdz(charge, R, resslope, chi2, dof);
00260 if (id.station() == 2) m_CSCvsr_me2[id.endcap()-1][chamber]->fill_dxdz(charge, R, resslope, chi2, dof);
00261 if (id.station() == 3) m_CSCvsr_me3[id.endcap()-1][chamber]->fill_dxdz(charge, R, resslope, chi2, dof);
00262 if (id.station() == 4) m_CSCvsr_me4[id.endcap()-1][chamber]->fill_dxdz(charge, R, resslope, chi2, dof);
00263
00264 if (id.station() == 1 && id.ring() == 1) m_CSCvsphi_me11[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00265 if (id.station() == 1 && id.ring() == 2) m_CSCvsphi_me12[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00266 if (id.station() == 1 && id.ring() == 3) m_CSCvsphi_me13[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00267 if (id.station() == 1 && id.ring() == 4) m_CSCvsphi_me14[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00268 if (id.station() == 2 && id.ring() == 1) m_CSCvsphi_me21[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00269 if (id.station() == 2 && id.ring() == 2) m_CSCvsphi_me22[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00270 if (id.station() == 3 && id.ring() == 1) m_CSCvsphi_me31[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00271 if (id.station() == 3 && id.ring() == 2) m_CSCvsphi_me32[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00272 if (id.station() == 4 && id.ring() == 1) m_CSCvsphi_me41[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00273 if (id.station() == 4 && id.ring() == 2) m_CSCvsphi_me42[id.endcap()-1]->fill_x(charge, phi, residual, chi2, dof);
00274
00275 if (id.station() == 1 && id.ring() == 1) m_CSCvsphi_me11[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00276 if (id.station() == 1 && id.ring() == 2) m_CSCvsphi_me12[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00277 if (id.station() == 1 && id.ring() == 3) m_CSCvsphi_me13[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00278 if (id.station() == 1 && id.ring() == 4) m_CSCvsphi_me14[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00279 if (id.station() == 2 && id.ring() == 1) m_CSCvsphi_me21[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00280 if (id.station() == 2 && id.ring() == 2) m_CSCvsphi_me22[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00281 if (id.station() == 3 && id.ring() == 1) m_CSCvsphi_me31[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00282 if (id.station() == 3 && id.ring() == 2) m_CSCvsphi_me32[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00283 if (id.station() == 4 && id.ring() == 1) m_CSCvsphi_me41[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00284 if (id.station() == 4 && id.ring() == 2) m_CSCvsphi_me42[id.endcap()-1]->fill_dxdz(charge, phi, resslope, chi2, dof);
00285 }
00286 }
00287
00288 else { assert(false); }
00289
00290 }
00291 }
00292 }
00293 }
00294 }
00295
00296 void AlignmentMonitorMuonSystemMap1D::afterAlignment(const edm::EventSetup &iSetup) {
00297 std::cout << "monitor m_counter_event = " << m_counter_event << std::endl;
00298 std::cout << "monitor m_counter_track = " << m_counter_track << std::endl;
00299 std::cout << "monitor m_counter_trackpt = " << m_counter_trackpt << std::endl;
00300 std::cout << "monitor m_counter_trackokay = " << m_counter_trackokay << std::endl;
00301 std::cout << "monitor m_counter_dt = " << m_counter_dt << std::endl;
00302 std::cout << "monitor m_counter_13numhits = " << m_counter_13numhits << std::endl;
00303 std::cout << "monitor m_counter_2numhits = " << m_counter_2numhits << std::endl;
00304 std::cout << "monitor m_counter_csc = " << m_counter_csc << std::endl;
00305 std::cout << "monitor m_counter_cscnumhits = " << m_counter_cscnumhits << std::endl;
00306 }
00307
00308
00309
00310
00311
00312
00313
00314
00315
00316
00317
00318
00319
00320
00321
00322
00323
00324
00325
00326
00327
00328
00329
00330
00331
00332
00333
00334
00335
00336
00337
00338
00339
00340
00341 DEFINE_EDM_PLUGIN(AlignmentMonitorPluginFactory, AlignmentMonitorMuonSystemMap1D, "AlignmentMonitorMuonSystemMap1D");