CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_9_patch3/src/DQM/DTMonitorClient/src/DTNoiseAnalysisTest.h

Go to the documentation of this file.
00001 #ifndef DTNoiseAnalysisTest_H
00002 #define DTNoiseAnalysisTest_H
00003 
00004 
00016 #include "FWCore/Framework/interface/Frameworkfwd.h"
00017 #include <FWCore/Framework/interface/EDAnalyzer.h>
00018 #include <FWCore/Framework/interface/ESHandle.h>
00019 
00020 
00021 #include <iostream>
00022 #include <string>
00023 #include <map>
00024 
00025 
00026 
00027 
00028 class DTGeometry;
00029 class DTChamberId;
00030 class DTSuperLayerId;
00031 class DQMStore;
00032 class MonitorElement;
00033 
00034 class DTNoiseAnalysisTest: public edm::EDAnalyzer{
00035 
00036 public:
00037 
00039   DTNoiseAnalysisTest(const edm::ParameterSet& ps);
00040   
00042   virtual ~DTNoiseAnalysisTest();
00043 
00044 protected:
00045 
00047   void beginJob();
00048 
00050   void beginRun(edm::Run const& run, edm::EventSetup const& context) ;
00051 
00053   void analyze(const edm::Event& e, const edm::EventSetup& c);
00054 
00056   void bookHistos();
00057 
00058   void beginLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& context) ;
00059 
00061   void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& c);
00062 
00063 
00064 private:
00065 
00067   std::string getMEName(const DTChamberId & chID);
00068   std::string getSynchNoiseMEName(int wheelId) const;
00069 
00070 
00071   int nevents;
00072   int nMinEvts;
00073   
00074   DQMStore* dbe;
00075   
00076   // the dt geometry
00077   edm::ESHandle<DTGeometry> muonGeom;
00078 
00079   // paramaters from cfg
00080   int noisyCellDef;
00081 
00082   // wheel summary histograms  
00083   std::map< int, MonitorElement* > noiseHistos;
00084   std::map< int, MonitorElement* > noisyCellHistos;
00085   MonitorElement* summaryNoiseHisto;
00086   MonitorElement* threshChannelsHisto;
00087   MonitorElement* summarySynchNoiseHisto;
00088   MonitorElement* glbSummarySynchNoiseHisto;
00089 
00090   bool doSynchNoise;
00091   bool detailedAnalysis;
00092   double maxSynchNoiseRate;
00093 };
00094 
00095 #endif