CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_3/src/Alignment/LaserDQM/plugins/LaserDQM.cc

Go to the documentation of this file.
00001 
00009 #include "Alignment/LaserDQM/plugins/LaserDQM.h"
00010 #include "FWCore/ParameterSet/interface/ParameterSet.h" 
00011 
00012 #include "FWCore/Framework/interface/MakerMacros.h"
00013 #include "FWCore/ServiceRegistry/interface/Service.h"
00014 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00015 
00016 
00017 
00018 LaserDQM::LaserDQM(edm::ParameterSet const& theConf) 
00019   : theDebugLevel(theConf.getUntrackedParameter<int>("DebugLevel",0)),
00020     theSearchPhiTIB(theConf.getUntrackedParameter<double>("SearchWindowPhiTIB",0.05)),
00021     theSearchPhiTOB(theConf.getUntrackedParameter<double>("SearchWindowPhiTOB",0.05)),
00022     theSearchPhiTEC(theConf.getUntrackedParameter<double>("SearchWindowPhiTEC",0.05)),
00023     theSearchZTIB(theConf.getUntrackedParameter<double>("SearchWindowZTIB",1.0)),
00024     theSearchZTOB(theConf.getUntrackedParameter<double>("SearchWindowZTOB",1.0)),
00025     theDigiProducersList(theConf.getParameter<Parameters>("DigiProducersList")),
00026     theDQMFileName(theConf.getUntrackedParameter<std::string>("DQMFileName","testDQM.root")),
00027     theDaqMonitorBEI(),
00028     theMEBeam0Ring4Disc1PosAdcCounts(0),
00029     theMEBeam0Ring4Disc2PosAdcCounts(0),
00030     theMEBeam0Ring4Disc3PosAdcCounts(0),
00031     theMEBeam0Ring4Disc4PosAdcCounts(0),
00032     theMEBeam0Ring4Disc5PosAdcCounts(0),
00033     theMEBeam0Ring4Disc6PosAdcCounts(0),
00034     theMEBeam0Ring4Disc7PosAdcCounts(0),
00035     theMEBeam0Ring4Disc8PosAdcCounts(0),
00036     theMEBeam0Ring4Disc9PosAdcCounts(0),
00037     // Adc counts for Beam 1 in Ring 4
00038     theMEBeam1Ring4Disc1PosAdcCounts(0),
00039     theMEBeam1Ring4Disc2PosAdcCounts(0),
00040     theMEBeam1Ring4Disc3PosAdcCounts(0),
00041     theMEBeam1Ring4Disc4PosAdcCounts(0),
00042     theMEBeam1Ring4Disc5PosAdcCounts(0),
00043     theMEBeam1Ring4Disc6PosAdcCounts(0),
00044     theMEBeam1Ring4Disc7PosAdcCounts(0),
00045     theMEBeam1Ring4Disc8PosAdcCounts(0),
00046     theMEBeam1Ring4Disc9PosAdcCounts(0),
00047     // plots for TEC2TEC
00048     theMEBeam1Ring4Disc1PosTEC2TECAdcCounts(0),
00049     theMEBeam1Ring4Disc2PosTEC2TECAdcCounts(0),
00050     theMEBeam1Ring4Disc3PosTEC2TECAdcCounts(0),
00051     theMEBeam1Ring4Disc4PosTEC2TECAdcCounts(0),
00052     theMEBeam1Ring4Disc5PosTEC2TECAdcCounts(0),
00053     // Adc counts for Beam 2 in Ring 4
00054     theMEBeam2Ring4Disc1PosAdcCounts(0),
00055     theMEBeam2Ring4Disc2PosAdcCounts(0),
00056     theMEBeam2Ring4Disc3PosAdcCounts(0),
00057     theMEBeam2Ring4Disc4PosAdcCounts(0),
00058     theMEBeam2Ring4Disc5PosAdcCounts(0),
00059     theMEBeam2Ring4Disc6PosAdcCounts(0),
00060     theMEBeam2Ring4Disc7PosAdcCounts(0),
00061     theMEBeam2Ring4Disc8PosAdcCounts(0),
00062     theMEBeam2Ring4Disc9PosAdcCounts(0),
00063     // plots for TEC2TEC
00064     theMEBeam2Ring4Disc1PosTEC2TECAdcCounts(0),
00065     theMEBeam2Ring4Disc2PosTEC2TECAdcCounts(0),
00066     theMEBeam2Ring4Disc3PosTEC2TECAdcCounts(0),
00067     theMEBeam2Ring4Disc4PosTEC2TECAdcCounts(0),
00068     theMEBeam2Ring4Disc5PosTEC2TECAdcCounts(0),
00069     // Adc counts for Beam 3 in Ring 4
00070     theMEBeam3Ring4Disc1PosAdcCounts(0),
00071     theMEBeam3Ring4Disc2PosAdcCounts(0),
00072     theMEBeam3Ring4Disc3PosAdcCounts(0),
00073     theMEBeam3Ring4Disc4PosAdcCounts(0),
00074     theMEBeam3Ring4Disc5PosAdcCounts(0),
00075     theMEBeam3Ring4Disc6PosAdcCounts(0),
00076     theMEBeam3Ring4Disc7PosAdcCounts(0),
00077     theMEBeam3Ring4Disc8PosAdcCounts(0),
00078     theMEBeam3Ring4Disc9PosAdcCounts(0),
00079     // Adc counts for Beam 4 in Ring 4
00080     theMEBeam4Ring4Disc1PosAdcCounts(0),
00081     theMEBeam4Ring4Disc2PosAdcCounts(0),
00082     theMEBeam4Ring4Disc3PosAdcCounts(0),
00083     theMEBeam4Ring4Disc4PosAdcCounts(0),
00084     theMEBeam4Ring4Disc5PosAdcCounts(0),
00085     theMEBeam4Ring4Disc6PosAdcCounts(0),
00086     theMEBeam4Ring4Disc7PosAdcCounts(0),
00087     theMEBeam4Ring4Disc8PosAdcCounts(0),
00088     theMEBeam4Ring4Disc9PosAdcCounts(0),
00089     // plots for TEC2TEC
00090     theMEBeam4Ring4Disc1PosTEC2TECAdcCounts(0),
00091     theMEBeam4Ring4Disc2PosTEC2TECAdcCounts(0),
00092     theMEBeam4Ring4Disc3PosTEC2TECAdcCounts(0),
00093     theMEBeam4Ring4Disc4PosTEC2TECAdcCounts(0),
00094     theMEBeam4Ring4Disc5PosTEC2TECAdcCounts(0),
00095     // Adc counts for Beam 5 in Ring 4
00096     theMEBeam5Ring4Disc1PosAdcCounts(0),
00097     theMEBeam5Ring4Disc2PosAdcCounts(0),
00098     theMEBeam5Ring4Disc3PosAdcCounts(0),
00099     theMEBeam5Ring4Disc4PosAdcCounts(0),
00100     theMEBeam5Ring4Disc5PosAdcCounts(0),
00101     theMEBeam5Ring4Disc6PosAdcCounts(0),
00102     theMEBeam5Ring4Disc7PosAdcCounts(0),
00103     theMEBeam5Ring4Disc8PosAdcCounts(0),
00104     theMEBeam5Ring4Disc9PosAdcCounts(0),
00105     // Adc counts for Beam 6 in Ring 4
00106     theMEBeam6Ring4Disc1PosAdcCounts(0),
00107     theMEBeam6Ring4Disc2PosAdcCounts(0),
00108     theMEBeam6Ring4Disc3PosAdcCounts(0),
00109     theMEBeam6Ring4Disc4PosAdcCounts(0),
00110     theMEBeam6Ring4Disc5PosAdcCounts(0),
00111     theMEBeam6Ring4Disc6PosAdcCounts(0),
00112     theMEBeam6Ring4Disc7PosAdcCounts(0),
00113     theMEBeam6Ring4Disc8PosAdcCounts(0),
00114     theMEBeam6Ring4Disc9PosAdcCounts(0),
00115     // plots for TEC2TEC
00116     theMEBeam6Ring4Disc1PosTEC2TECAdcCounts(0),
00117     theMEBeam6Ring4Disc2PosTEC2TECAdcCounts(0),
00118     theMEBeam6Ring4Disc3PosTEC2TECAdcCounts(0),
00119     theMEBeam6Ring4Disc4PosTEC2TECAdcCounts(0),
00120     theMEBeam6Ring4Disc5PosTEC2TECAdcCounts(0),
00121     // Adc counts for Beam 7 in Ring 4
00122     theMEBeam7Ring4Disc1PosAdcCounts(0),
00123     theMEBeam7Ring4Disc2PosAdcCounts(0),
00124     theMEBeam7Ring4Disc3PosAdcCounts(0),
00125     theMEBeam7Ring4Disc4PosAdcCounts(0),
00126     theMEBeam7Ring4Disc5PosAdcCounts(0),
00127     theMEBeam7Ring4Disc6PosAdcCounts(0),
00128     theMEBeam7Ring4Disc7PosAdcCounts(0),
00129     theMEBeam7Ring4Disc8PosAdcCounts(0),
00130     theMEBeam7Ring4Disc9PosAdcCounts(0),
00131     // plots for TEC2TEC
00132     theMEBeam7Ring4Disc1PosTEC2TECAdcCounts(0),
00133     theMEBeam7Ring4Disc2PosTEC2TECAdcCounts(0),
00134     theMEBeam7Ring4Disc3PosTEC2TECAdcCounts(0),
00135     theMEBeam7Ring4Disc4PosTEC2TECAdcCounts(0),
00136     theMEBeam7Ring4Disc5PosTEC2TECAdcCounts(0),
00137     // Adc counts for Beam 0 in Ring 6
00138     theMEBeam0Ring6Disc1PosAdcCounts(0),
00139     theMEBeam0Ring6Disc2PosAdcCounts(0),
00140     theMEBeam0Ring6Disc3PosAdcCounts(0),
00141     theMEBeam0Ring6Disc4PosAdcCounts(0),
00142     theMEBeam0Ring6Disc5PosAdcCounts(0),
00143     theMEBeam0Ring6Disc6PosAdcCounts(0),
00144     theMEBeam0Ring6Disc7PosAdcCounts(0),
00145     theMEBeam0Ring6Disc8PosAdcCounts(0),
00146     theMEBeam0Ring6Disc9PosAdcCounts(0),
00147     // Adc counts for Beam 1 in Ring 6
00148     theMEBeam1Ring6Disc1PosAdcCounts(0),
00149     theMEBeam1Ring6Disc2PosAdcCounts(0),
00150     theMEBeam1Ring6Disc3PosAdcCounts(0),
00151     theMEBeam1Ring6Disc4PosAdcCounts(0),
00152     theMEBeam1Ring6Disc5PosAdcCounts(0),
00153     theMEBeam1Ring6Disc6PosAdcCounts(0),
00154     theMEBeam1Ring6Disc7PosAdcCounts(0),
00155     theMEBeam1Ring6Disc8PosAdcCounts(0),
00156     theMEBeam1Ring6Disc9PosAdcCounts(0),
00157     // Adc counts for Beam 2 in Ring 6
00158     theMEBeam2Ring6Disc1PosAdcCounts(0),
00159     theMEBeam2Ring6Disc2PosAdcCounts(0),
00160     theMEBeam2Ring6Disc3PosAdcCounts(0),
00161     theMEBeam2Ring6Disc4PosAdcCounts(0),
00162     theMEBeam2Ring6Disc5PosAdcCounts(0),
00163     theMEBeam2Ring6Disc6PosAdcCounts(0),
00164     theMEBeam2Ring6Disc7PosAdcCounts(0),
00165     theMEBeam2Ring6Disc8PosAdcCounts(0),
00166     theMEBeam2Ring6Disc9PosAdcCounts(0),
00167     // Adc counts for Beam 3 in Ring 6
00168     theMEBeam3Ring6Disc1PosAdcCounts(0),
00169     theMEBeam3Ring6Disc2PosAdcCounts(0),
00170     theMEBeam3Ring6Disc3PosAdcCounts(0),
00171     theMEBeam3Ring6Disc4PosAdcCounts(0),
00172     theMEBeam3Ring6Disc5PosAdcCounts(0),
00173     theMEBeam3Ring6Disc6PosAdcCounts(0),
00174     theMEBeam3Ring6Disc7PosAdcCounts(0),
00175     theMEBeam3Ring6Disc8PosAdcCounts(0),
00176     theMEBeam3Ring6Disc9PosAdcCounts(0),
00177     // Adc counts for Beam 4 in Ring 6
00178     theMEBeam4Ring6Disc1PosAdcCounts(0),
00179     theMEBeam4Ring6Disc2PosAdcCounts(0),
00180     theMEBeam4Ring6Disc3PosAdcCounts(0),
00181     theMEBeam4Ring6Disc4PosAdcCounts(0),
00182     theMEBeam4Ring6Disc5PosAdcCounts(0),
00183     theMEBeam4Ring6Disc6PosAdcCounts(0),
00184     theMEBeam4Ring6Disc7PosAdcCounts(0),
00185     theMEBeam4Ring6Disc8PosAdcCounts(0),
00186     theMEBeam4Ring6Disc9PosAdcCounts(0),
00187     // Adc counts for Beam 5 in Ring 6
00188     theMEBeam5Ring6Disc1PosAdcCounts(0),
00189     theMEBeam5Ring6Disc2PosAdcCounts(0),
00190     theMEBeam5Ring6Disc3PosAdcCounts(0),
00191     theMEBeam5Ring6Disc4PosAdcCounts(0),
00192     theMEBeam5Ring6Disc5PosAdcCounts(0),
00193     theMEBeam5Ring6Disc6PosAdcCounts(0),
00194     theMEBeam5Ring6Disc7PosAdcCounts(0),
00195     theMEBeam5Ring6Disc8PosAdcCounts(0),
00196     theMEBeam5Ring6Disc9PosAdcCounts(0),
00197     // Adc counts for Beam 6 in Ring 6
00198     theMEBeam6Ring6Disc1PosAdcCounts(0),
00199     theMEBeam6Ring6Disc2PosAdcCounts(0),
00200     theMEBeam6Ring6Disc3PosAdcCounts(0),
00201     theMEBeam6Ring6Disc4PosAdcCounts(0),
00202     theMEBeam6Ring6Disc5PosAdcCounts(0),
00203     theMEBeam6Ring6Disc6PosAdcCounts(0),
00204     theMEBeam6Ring6Disc7PosAdcCounts(0),
00205     theMEBeam6Ring6Disc8PosAdcCounts(0),
00206     theMEBeam6Ring6Disc9PosAdcCounts(0),
00207     // Adc counts for Beam 7 in Ring 6
00208     theMEBeam7Ring6Disc1PosAdcCounts(0),
00209     theMEBeam7Ring6Disc2PosAdcCounts(0),
00210     theMEBeam7Ring6Disc3PosAdcCounts(0),
00211     theMEBeam7Ring6Disc4PosAdcCounts(0),
00212     theMEBeam7Ring6Disc5PosAdcCounts(0),
00213     theMEBeam7Ring6Disc6PosAdcCounts(0),
00214     theMEBeam7Ring6Disc7PosAdcCounts(0),
00215     theMEBeam7Ring6Disc8PosAdcCounts(0),
00216     theMEBeam7Ring6Disc9PosAdcCounts(0),
00217     /* Laser Beams in TEC- */
00218     // Adc counts for Beam 0 in Ring 4
00219     theMEBeam0Ring4Disc1NegAdcCounts(0),
00220     theMEBeam0Ring4Disc2NegAdcCounts(0),
00221     theMEBeam0Ring4Disc3NegAdcCounts(0),
00222     theMEBeam0Ring4Disc4NegAdcCounts(0),
00223     theMEBeam0Ring4Disc5NegAdcCounts(0),
00224     theMEBeam0Ring4Disc6NegAdcCounts(0),
00225     theMEBeam0Ring4Disc7NegAdcCounts(0),
00226     theMEBeam0Ring4Disc8NegAdcCounts(0),
00227     theMEBeam0Ring4Disc9NegAdcCounts(0),
00228     // Adc counts for Beam 1 in Ring 4
00229     theMEBeam1Ring4Disc1NegAdcCounts(0),
00230     theMEBeam1Ring4Disc2NegAdcCounts(0),
00231     theMEBeam1Ring4Disc3NegAdcCounts(0),
00232     theMEBeam1Ring4Disc4NegAdcCounts(0),
00233     theMEBeam1Ring4Disc5NegAdcCounts(0),
00234     theMEBeam1Ring4Disc6NegAdcCounts(0),
00235     theMEBeam1Ring4Disc7NegAdcCounts(0),
00236     theMEBeam1Ring4Disc8NegAdcCounts(0),
00237     theMEBeam1Ring4Disc9NegAdcCounts(0),
00238     // plots for TEC2TEC
00239     theMEBeam1Ring4Disc1NegTEC2TECAdcCounts(0),
00240     theMEBeam1Ring4Disc2NegTEC2TECAdcCounts(0),
00241     theMEBeam1Ring4Disc3NegTEC2TECAdcCounts(0),
00242     theMEBeam1Ring4Disc4NegTEC2TECAdcCounts(0),
00243     theMEBeam1Ring4Disc5NegTEC2TECAdcCounts(0),
00244     // Adc counts for Beam 2 in Ring 4
00245     theMEBeam2Ring4Disc1NegAdcCounts(0),
00246     theMEBeam2Ring4Disc2NegAdcCounts(0),
00247     theMEBeam2Ring4Disc3NegAdcCounts(0),
00248     theMEBeam2Ring4Disc4NegAdcCounts(0),
00249     theMEBeam2Ring4Disc5NegAdcCounts(0),
00250     theMEBeam2Ring4Disc6NegAdcCounts(0),
00251     theMEBeam2Ring4Disc7NegAdcCounts(0),
00252     theMEBeam2Ring4Disc8NegAdcCounts(0),
00253     theMEBeam2Ring4Disc9NegAdcCounts(0),
00254     // plots for TEC2TEC
00255     theMEBeam2Ring4Disc1NegTEC2TECAdcCounts(0),
00256     theMEBeam2Ring4Disc2NegTEC2TECAdcCounts(0),
00257     theMEBeam2Ring4Disc3NegTEC2TECAdcCounts(0),
00258     theMEBeam2Ring4Disc4NegTEC2TECAdcCounts(0),
00259     theMEBeam2Ring4Disc5NegTEC2TECAdcCounts(0),
00260     // Adc counts for Beam 3 in Ring 4
00261     theMEBeam3Ring4Disc1NegAdcCounts(0),
00262     theMEBeam3Ring4Disc2NegAdcCounts(0),
00263     theMEBeam3Ring4Disc3NegAdcCounts(0),
00264     theMEBeam3Ring4Disc4NegAdcCounts(0),
00265     theMEBeam3Ring4Disc5NegAdcCounts(0),
00266     theMEBeam3Ring4Disc6NegAdcCounts(0),
00267     theMEBeam3Ring4Disc7NegAdcCounts(0),
00268     theMEBeam3Ring4Disc8NegAdcCounts(0),
00269     theMEBeam3Ring4Disc9NegAdcCounts(0),
00270     // Adc counts for Beam 4 in Ring 4
00271     theMEBeam4Ring4Disc1NegAdcCounts(0),
00272     theMEBeam4Ring4Disc2NegAdcCounts(0),
00273     theMEBeam4Ring4Disc3NegAdcCounts(0),
00274     theMEBeam4Ring4Disc4NegAdcCounts(0),
00275     theMEBeam4Ring4Disc5NegAdcCounts(0),
00276     theMEBeam4Ring4Disc6NegAdcCounts(0),
00277     theMEBeam4Ring4Disc7NegAdcCounts(0),
00278     theMEBeam4Ring4Disc8NegAdcCounts(0),
00279     theMEBeam4Ring4Disc9NegAdcCounts(0),
00280     // plots for TEC2TEC
00281     theMEBeam4Ring4Disc1NegTEC2TECAdcCounts(0),
00282     theMEBeam4Ring4Disc2NegTEC2TECAdcCounts(0),
00283     theMEBeam4Ring4Disc3NegTEC2TECAdcCounts(0),
00284     theMEBeam4Ring4Disc4NegTEC2TECAdcCounts(0),
00285     theMEBeam4Ring4Disc5NegTEC2TECAdcCounts(0),
00286     // Adc counts for Beam 5 in Ring 4
00287     theMEBeam5Ring4Disc1NegAdcCounts(0),
00288     theMEBeam5Ring4Disc2NegAdcCounts(0),
00289     theMEBeam5Ring4Disc3NegAdcCounts(0),
00290     theMEBeam5Ring4Disc4NegAdcCounts(0),
00291     theMEBeam5Ring4Disc5NegAdcCounts(0),
00292     theMEBeam5Ring4Disc6NegAdcCounts(0),
00293     theMEBeam5Ring4Disc7NegAdcCounts(0),
00294     theMEBeam5Ring4Disc8NegAdcCounts(0),
00295     theMEBeam5Ring4Disc9NegAdcCounts(0),
00296     // Adc counts for Beam 6 in Ring 4
00297     theMEBeam6Ring4Disc1NegAdcCounts(0),
00298     theMEBeam6Ring4Disc2NegAdcCounts(0),
00299     theMEBeam6Ring4Disc3NegAdcCounts(0),
00300     theMEBeam6Ring4Disc4NegAdcCounts(0),
00301     theMEBeam6Ring4Disc5NegAdcCounts(0),
00302     theMEBeam6Ring4Disc6NegAdcCounts(0),
00303     theMEBeam6Ring4Disc7NegAdcCounts(0),
00304     theMEBeam6Ring4Disc8NegAdcCounts(0),
00305     theMEBeam6Ring4Disc9NegAdcCounts(0),
00306     // plots for TEC2TEC
00307     theMEBeam6Ring4Disc1NegTEC2TECAdcCounts(0),
00308     theMEBeam6Ring4Disc2NegTEC2TECAdcCounts(0),
00309     theMEBeam6Ring4Disc3NegTEC2TECAdcCounts(0),
00310     theMEBeam6Ring4Disc4NegTEC2TECAdcCounts(0),
00311     theMEBeam6Ring4Disc5NegTEC2TECAdcCounts(0),
00312     // Adc counts for Beam 7 in Ring 4
00313     theMEBeam7Ring4Disc1NegAdcCounts(0),
00314     theMEBeam7Ring4Disc2NegAdcCounts(0),
00315     theMEBeam7Ring4Disc3NegAdcCounts(0),
00316     theMEBeam7Ring4Disc4NegAdcCounts(0),
00317     theMEBeam7Ring4Disc5NegAdcCounts(0),
00318     theMEBeam7Ring4Disc6NegAdcCounts(0),
00319     theMEBeam7Ring4Disc7NegAdcCounts(0),
00320     theMEBeam7Ring4Disc8NegAdcCounts(0),
00321     theMEBeam7Ring4Disc9NegAdcCounts(0),
00322     // plots for TEC2TEC
00323     theMEBeam7Ring4Disc1NegTEC2TECAdcCounts(0),
00324     theMEBeam7Ring4Disc2NegTEC2TECAdcCounts(0),
00325     theMEBeam7Ring4Disc3NegTEC2TECAdcCounts(0),
00326     theMEBeam7Ring4Disc4NegTEC2TECAdcCounts(0),
00327     theMEBeam7Ring4Disc5NegTEC2TECAdcCounts(0),
00328     // Adc counts for Beam 0 in Ring 6
00329     theMEBeam0Ring6Disc1NegAdcCounts(0),
00330     theMEBeam0Ring6Disc2NegAdcCounts(0),
00331     theMEBeam0Ring6Disc3NegAdcCounts(0),
00332     theMEBeam0Ring6Disc4NegAdcCounts(0),
00333     theMEBeam0Ring6Disc5NegAdcCounts(0),
00334     theMEBeam0Ring6Disc6NegAdcCounts(0),
00335     theMEBeam0Ring6Disc7NegAdcCounts(0),
00336     theMEBeam0Ring6Disc8NegAdcCounts(0),
00337     theMEBeam0Ring6Disc9NegAdcCounts(0),
00338     // Adc counts for Beam 1 in Ring 6
00339     theMEBeam1Ring6Disc1NegAdcCounts(0),
00340     theMEBeam1Ring6Disc2NegAdcCounts(0),
00341     theMEBeam1Ring6Disc3NegAdcCounts(0),
00342     theMEBeam1Ring6Disc4NegAdcCounts(0),
00343     theMEBeam1Ring6Disc5NegAdcCounts(0),
00344     theMEBeam1Ring6Disc6NegAdcCounts(0),
00345     theMEBeam1Ring6Disc7NegAdcCounts(0),
00346     theMEBeam1Ring6Disc8NegAdcCounts(0),
00347     theMEBeam1Ring6Disc9NegAdcCounts(0),
00348     // Adc counts for Beam 2 in Ring 6
00349     theMEBeam2Ring6Disc1NegAdcCounts(0),
00350     theMEBeam2Ring6Disc2NegAdcCounts(0),
00351     theMEBeam2Ring6Disc3NegAdcCounts(0),
00352     theMEBeam2Ring6Disc4NegAdcCounts(0),
00353     theMEBeam2Ring6Disc5NegAdcCounts(0),
00354     theMEBeam2Ring6Disc6NegAdcCounts(0),
00355     theMEBeam2Ring6Disc7NegAdcCounts(0),
00356     theMEBeam2Ring6Disc8NegAdcCounts(0),
00357     theMEBeam2Ring6Disc9NegAdcCounts(0),
00358     // Adc counts for Beam 3 in Ring 6
00359     theMEBeam3Ring6Disc1NegAdcCounts(0),
00360     theMEBeam3Ring6Disc2NegAdcCounts(0),
00361     theMEBeam3Ring6Disc3NegAdcCounts(0),
00362     theMEBeam3Ring6Disc4NegAdcCounts(0),
00363     theMEBeam3Ring6Disc5NegAdcCounts(0),
00364     theMEBeam3Ring6Disc6NegAdcCounts(0),
00365     theMEBeam3Ring6Disc7NegAdcCounts(0),
00366     theMEBeam3Ring6Disc8NegAdcCounts(0),
00367     theMEBeam3Ring6Disc9NegAdcCounts(0),
00368     // Adc counts for Beam 4 in Ring 6
00369     theMEBeam4Ring6Disc1NegAdcCounts(0),
00370     theMEBeam4Ring6Disc2NegAdcCounts(0),
00371     theMEBeam4Ring6Disc3NegAdcCounts(0),
00372     theMEBeam4Ring6Disc4NegAdcCounts(0),
00373     theMEBeam4Ring6Disc5NegAdcCounts(0),
00374     theMEBeam4Ring6Disc6NegAdcCounts(0),
00375     theMEBeam4Ring6Disc7NegAdcCounts(0),
00376     theMEBeam4Ring6Disc8NegAdcCounts(0),
00377     theMEBeam4Ring6Disc9NegAdcCounts(0),
00378     // Adc counts for Beam 5 in Ring 6
00379     theMEBeam5Ring6Disc1NegAdcCounts(0),
00380     theMEBeam5Ring6Disc2NegAdcCounts(0),
00381     theMEBeam5Ring6Disc3NegAdcCounts(0),
00382     theMEBeam5Ring6Disc4NegAdcCounts(0),
00383     theMEBeam5Ring6Disc5NegAdcCounts(0),
00384     theMEBeam5Ring6Disc6NegAdcCounts(0),
00385     theMEBeam5Ring6Disc7NegAdcCounts(0),
00386     theMEBeam5Ring6Disc8NegAdcCounts(0),
00387     theMEBeam5Ring6Disc9NegAdcCounts(0),
00388     // Adc counts for Beam 6 in Ring 6
00389     theMEBeam6Ring6Disc1NegAdcCounts(0),
00390     theMEBeam6Ring6Disc2NegAdcCounts(0),
00391     theMEBeam6Ring6Disc3NegAdcCounts(0),
00392     theMEBeam6Ring6Disc4NegAdcCounts(0),
00393     theMEBeam6Ring6Disc5NegAdcCounts(0),
00394     theMEBeam6Ring6Disc6NegAdcCounts(0),
00395     theMEBeam6Ring6Disc7NegAdcCounts(0),
00396     theMEBeam6Ring6Disc8NegAdcCounts(0),
00397     theMEBeam6Ring6Disc9NegAdcCounts(0),
00398     // Adc counts for Beam 7 in Ring 6
00399     theMEBeam7Ring6Disc1NegAdcCounts(0),
00400     theMEBeam7Ring6Disc2NegAdcCounts(0),
00401     theMEBeam7Ring6Disc3NegAdcCounts(0),
00402     theMEBeam7Ring6Disc4NegAdcCounts(0),
00403     theMEBeam7Ring6Disc5NegAdcCounts(0),
00404     theMEBeam7Ring6Disc6NegAdcCounts(0),
00405     theMEBeam7Ring6Disc7NegAdcCounts(0),
00406     theMEBeam7Ring6Disc8NegAdcCounts(0),
00407     theMEBeam7Ring6Disc9NegAdcCounts(0),
00408     // TOB Beams
00409     // Adc counts for Beam 0
00410     theMEBeam0TOBPosition1AdcCounts(0),
00411     theMEBeam0TOBPosition2AdcCounts(0),
00412     theMEBeam0TOBPosition3AdcCounts(0),
00413     theMEBeam0TOBPosition4AdcCounts(0),
00414     theMEBeam0TOBPosition5AdcCounts(0),
00415     theMEBeam0TOBPosition6AdcCounts(0),
00416     // Adc counts for Beam 1
00417     theMEBeam1TOBPosition1AdcCounts(0),
00418     theMEBeam1TOBPosition2AdcCounts(0),
00419     theMEBeam1TOBPosition3AdcCounts(0),
00420     theMEBeam1TOBPosition4AdcCounts(0),
00421     theMEBeam1TOBPosition5AdcCounts(0),
00422     theMEBeam1TOBPosition6AdcCounts(0),
00423     // Adc counts for Beam 2
00424     theMEBeam2TOBPosition1AdcCounts(0),
00425     theMEBeam2TOBPosition2AdcCounts(0),
00426     theMEBeam2TOBPosition3AdcCounts(0),
00427     theMEBeam2TOBPosition4AdcCounts(0),
00428     theMEBeam2TOBPosition5AdcCounts(0),
00429     theMEBeam2TOBPosition6AdcCounts(0),
00430     // Adc counts for Beam 3
00431     theMEBeam3TOBPosition1AdcCounts(0),
00432     theMEBeam3TOBPosition2AdcCounts(0),
00433     theMEBeam3TOBPosition3AdcCounts(0),
00434     theMEBeam3TOBPosition4AdcCounts(0),
00435     theMEBeam3TOBPosition5AdcCounts(0),
00436     theMEBeam3TOBPosition6AdcCounts(0),
00437     // Adc counts for Beam 4
00438     theMEBeam4TOBPosition1AdcCounts(0),
00439     theMEBeam4TOBPosition2AdcCounts(0),
00440     theMEBeam4TOBPosition3AdcCounts(0),
00441     theMEBeam4TOBPosition4AdcCounts(0),
00442     theMEBeam4TOBPosition5AdcCounts(0),
00443     theMEBeam4TOBPosition6AdcCounts(0),
00444     // Adc counts for Beam 5
00445     theMEBeam5TOBPosition1AdcCounts(0),
00446     theMEBeam5TOBPosition2AdcCounts(0),
00447     theMEBeam5TOBPosition3AdcCounts(0),
00448     theMEBeam5TOBPosition4AdcCounts(0),
00449     theMEBeam5TOBPosition5AdcCounts(0),
00450     theMEBeam5TOBPosition6AdcCounts(0),
00451     // Adc counts for Beam 6
00452     theMEBeam6TOBPosition1AdcCounts(0),
00453     theMEBeam6TOBPosition2AdcCounts(0),
00454     theMEBeam6TOBPosition3AdcCounts(0),
00455     theMEBeam6TOBPosition4AdcCounts(0),
00456     theMEBeam6TOBPosition5AdcCounts(0),
00457     theMEBeam6TOBPosition6AdcCounts(0),
00458     // Adc counts for Beam 7
00459     theMEBeam7TOBPosition1AdcCounts(0),
00460     theMEBeam7TOBPosition2AdcCounts(0),
00461     theMEBeam7TOBPosition3AdcCounts(0),
00462     theMEBeam7TOBPosition4AdcCounts(0),
00463     theMEBeam7TOBPosition5AdcCounts(0),
00464     theMEBeam7TOBPosition6AdcCounts(0),
00465     // TIB Beams
00466     // Adc counts for Beam 0
00467     theMEBeam0TIBPosition1AdcCounts(0),
00468     theMEBeam0TIBPosition2AdcCounts(0),
00469     theMEBeam0TIBPosition3AdcCounts(0),
00470     theMEBeam0TIBPosition4AdcCounts(0),
00471     theMEBeam0TIBPosition5AdcCounts(0),
00472     theMEBeam0TIBPosition6AdcCounts(0),
00473     // Adc counts for Beam 1
00474     theMEBeam1TIBPosition1AdcCounts(0),
00475     theMEBeam1TIBPosition2AdcCounts(0),
00476     theMEBeam1TIBPosition3AdcCounts(0),
00477     theMEBeam1TIBPosition4AdcCounts(0),
00478     theMEBeam1TIBPosition5AdcCounts(0),
00479     theMEBeam1TIBPosition6AdcCounts(0),
00480     // Adc counts for Beam 2
00481     theMEBeam2TIBPosition1AdcCounts(0),
00482     theMEBeam2TIBPosition2AdcCounts(0),
00483     theMEBeam2TIBPosition3AdcCounts(0),
00484     theMEBeam2TIBPosition4AdcCounts(0),
00485     theMEBeam2TIBPosition5AdcCounts(0),
00486     theMEBeam2TIBPosition6AdcCounts(0),
00487     // Adc counts for Beam 3
00488     theMEBeam3TIBPosition1AdcCounts(0),
00489     theMEBeam3TIBPosition2AdcCounts(0),
00490     theMEBeam3TIBPosition3AdcCounts(0),
00491     theMEBeam3TIBPosition4AdcCounts(0),
00492     theMEBeam3TIBPosition5AdcCounts(0),
00493     theMEBeam3TIBPosition6AdcCounts(0),
00494     // Adc counts for Beam 4
00495     theMEBeam4TIBPosition1AdcCounts(0),
00496     theMEBeam4TIBPosition2AdcCounts(0),
00497     theMEBeam4TIBPosition3AdcCounts(0),
00498     theMEBeam4TIBPosition4AdcCounts(0),
00499     theMEBeam4TIBPosition5AdcCounts(0),
00500     theMEBeam4TIBPosition6AdcCounts(0),
00501     // Adc counts for Beam 5
00502     theMEBeam5TIBPosition1AdcCounts(0),
00503     theMEBeam5TIBPosition2AdcCounts(0),
00504     theMEBeam5TIBPosition3AdcCounts(0),
00505     theMEBeam5TIBPosition4AdcCounts(0),
00506     theMEBeam5TIBPosition5AdcCounts(0),
00507     theMEBeam5TIBPosition6AdcCounts(0),
00508     // Adc counts for Beam 6
00509     theMEBeam6TIBPosition1AdcCounts(0),
00510     theMEBeam6TIBPosition2AdcCounts(0),
00511     theMEBeam6TIBPosition3AdcCounts(0),
00512     theMEBeam6TIBPosition4AdcCounts(0),
00513     theMEBeam6TIBPosition5AdcCounts(0),
00514     theMEBeam6TIBPosition6AdcCounts(0),
00515     // Adc counts for Beam 7
00516     theMEBeam7TIBPosition1AdcCounts(0),
00517     theMEBeam7TIBPosition2AdcCounts(0),
00518     theMEBeam7TIBPosition3AdcCounts(0),
00519     theMEBeam7TIBPosition4AdcCounts(0),
00520     theMEBeam7TIBPosition5AdcCounts(0),
00521     theMEBeam7TIBPosition6AdcCounts(0)
00522 {
00523   // load the configuration from the ParameterSet  
00524   edm::LogInfo("LaserDQM") << "==========================================================="
00525                            << "\n===                Start configuration                  ==="
00526                            << "\n    theDebugLevel              = " << theDebugLevel
00527                            << "\n    theSearchPhiTIB            = " << theSearchPhiTIB
00528                            << "\n    theSearchPhiTOB            = " << theSearchPhiTOB
00529                            << "\n    theSearchPhiTEC            = " << theSearchPhiTEC
00530                            << "\n    theSearchZTIB              = " << theSearchZTIB
00531                            << "\n    theSearchZTOB              = " << theSearchZTOB
00532                            << "\n    DQM filename               = " << theDQMFileName
00533                            << "\n===========================================================";
00534 
00535 }
00536 
00537 LaserDQM::~LaserDQM() {}
00538 
00539 void LaserDQM::analyze(edm::Event const& theEvent, edm::EventSetup const& theSetup) 
00540 {
00541   // do the Tracker Statistics
00542   trackerStatistics(theEvent, theSetup);
00543 }
00544 
00545 void LaserDQM::beginJob()
00546 {
00547   // get hold of DQM Backend interface
00548   theDaqMonitorBEI = edm::Service<DQMStore>().operator->();
00549       
00550   // initialize the Monitor Elements
00551   initMonitors();
00552 }
00553 
00554 void LaserDQM::endJob(void)
00555 {
00556   theDaqMonitorBEI->save(theDQMFileName.c_str());
00557 }
00558 
00559 void LaserDQM::fillAdcCounts(MonitorElement * theMonitor, 
00560                              edm::DetSet<SiStripDigi>::const_iterator digiRangeIterator,
00561                              edm::DetSet<SiStripDigi>::const_iterator digiRangeIteratorEnd)
00562 {
00563   // get the ROOT object from the MonitorElement
00564   TH1F * theMEHistogram = theMonitor->getTH1F();
00565 
00566   // loop over all the digis in this det
00567   for (; digiRangeIterator != digiRangeIteratorEnd; ++digiRangeIterator) 
00568     {
00569       const SiStripDigi *digi = &*digiRangeIterator;
00570       
00571       if ( theDebugLevel > 4 ) 
00572         { std::cout << " Channel " << digi->channel() << " has " << digi->adc() << " adc counts " << std::endl; }
00573 
00574       // fill the number of adc counts in the histogram
00575       if (digi->channel() < 512)
00576         {
00577           Double_t theBinContent = theMEHistogram->GetBinContent(digi->channel()) + digi->adc();
00578           theMEHistogram->SetBinContent(digi->channel(), theBinContent);
00579         }
00580     }
00581 }
00582 
00583 // define the SEAL module
00584 
00585 DEFINE_FWK_MODULE(LaserDQM);