CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/DQMServices/Components/plugins/DQMLumiMonitor.h

Go to the documentation of this file.
00001 /*
00002  * \class DQMLumiMonitor
00003  *
00004  * DQM Luminosity Monitoring 
00005  *
00006  * $Date: 2012/04/11 07:16:51 $
00007  * $Revision: 1.2 $
00008  * \author  S. Dutta
00009  *
00010 */
00011 
00012 #ifndef DQMLUMIMONITOR_H
00013 #define DQMLUMIMONITORH
00014 
00015 #include <string>
00016 #include <vector>
00017 #include <map>
00018 
00019 #include <FWCore/Framework/interface/EDAnalyzer.h>
00020 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00021 #include "DQMServices/Core/interface/DQMStore.h"
00022 #include "DQMServices/Core/interface/MonitorElement.h"
00023 #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h"
00024 
00025 //
00026 // class declaration
00027 //
00028 
00029 class DQMLumiMonitor : public edm::EDAnalyzer {
00030 public:
00031   DQMLumiMonitor( const edm::ParameterSet& );
00032   ~DQMLumiMonitor();
00033 
00034 protected:
00035 
00036   void beginJob();
00037   void beginRun(edm::Run const& iRun, edm::EventSetup const& iSetup);
00038   void analyze(edm::Event const& iEvent, edm::EventSetup const& iSetup);
00039   void endLuminosityBlock(edm::LuminosityBlock const& lumiSeg, edm::EventSetup const& eSetup);
00040   void endRun(edm::Run const& iRun,  edm::EventSetup const& iSetup);
00041   void endJob();
00042 
00043 private:
00044 
00045   void bookHistograms();
00046 
00047   edm::ParameterSet parameters_;
00048 
00049   std::string moduleName_;
00050   std::string folderName_;
00051   edm::InputTag pixelClusterInputTag_;
00052   std::string lumiRecordName_;
00053 
00054   DQMStore * dbe_;
00055  
00056   MonitorElement* nClusME_;
00057   MonitorElement* intLumiVsLSME_;
00058   MonitorElement* nClusVsLSME_;
00059   MonitorElement* corrIntLumiAndClusVsLSME_; 
00060 
00061   float intLumi_;
00062   int nLumi_;
00063   unsigned long long m_cacheID_;
00064 };
00065 
00066 #endif