CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch1/src/DQM/HcalMonitorModule/interface/ZDCMonitorModule.h

Go to the documentation of this file.
00001 #ifndef ZDCMonitorModule_GUARD_H
00002 #define ZDCMonitorModule_GUARD_H
00003 
00004 /*
00005  * \file ZDCMonitorModule.h
00006  *
00007 
00008  * $Date: 2013/01/05 19:47:02 $
00009  * $Revision: 1.3 $
00010  * \author J. Temple
00011  *
00012 */
00013 
00014 #include "FWCore/Framework/interface/Frameworkfwd.h"
00015 #include "FWCore/Framework/interface/EDAnalyzer.h"
00016 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00017 #include "FWCore/Framework/interface/Event.h"
00018 
00019 #include "DQM/HcalMonitorTasks/interface/HcalEtaPhiHists.h"
00020 
00021 // forward declarations
00022 
00023 class DQMStore;
00024 class MonitorElement;
00025 class FEDRawDataCollection;
00026 class HcalElectronicsMap;
00027 
00028 class ZDCMonitorModule : public edm::EDAnalyzer
00029 {
00030 
00031 public:
00032 
00033   // Constructor
00034   ZDCMonitorModule(const edm::ParameterSet& ps);
00035 
00036   // Destructor
00037   ~ZDCMonitorModule();
00038 
00039  protected:
00040 
00041   // Analyze
00042   void analyze(const edm::Event& e, const edm::EventSetup& c);
00043 
00044   // BeginJob
00045   void beginJob();
00046 
00047   // BeginRun
00048   void beginRun(const edm::Run& run, const edm::EventSetup& c);
00049 
00050   // Begin LumiBlock
00051   void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
00052                             const edm::EventSetup& c) ;
00053 
00054   // End LumiBlock
00055   void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg,
00056                           const edm::EventSetup& c);
00057 
00058  // EndJob
00059   void endJob(void);
00060 
00061   // EndRun
00062   void endRun(const edm::Run& run, const edm::EventSetup& c);
00063 
00064   // Reset
00065   void reset(void);
00066 
00067   // cleanup
00068   void cleanup(void);
00069 
00070   // setup
00071   void setup(void);
00072   
00073   // CheckSubdetectorStatus
00074   void CheckSubdetectorStatus(const edm::Handle<FEDRawDataCollection>& rawraw,
00075                               const HcalElectronicsMap& emap);
00076 
00077  private:
00078 
00079   int ievt_;
00080   int runNumber_;
00081   int evtNumber_;
00082 
00083   // Not sure how many of these are needed for ZDC
00084 
00085   MonitorElement* meStatus_;
00086   MonitorElement* meRun_;
00087   MonitorElement* meEvt_;
00088   MonitorElement* meFEDS_;
00089   MonitorElement* meCalibType_;
00090   MonitorElement* meCurrentCalibType_;
00091   MonitorElement* meZDC_;
00092   MonitorElement* meIevt_;
00093   MonitorElement* meIevtHist_; 
00094   MonitorElement* meEvtsVsLS_;
00095   MonitorElement* meProcessedEndLumi_;
00096   MonitorElement* meOnline_;
00097 
00098   bool fedsListed_;
00099 
00100   bool Online_;
00101   bool mergeRuns_;
00102   bool enableCleanup_;
00103   int debug_;
00104   bool init_;
00105   edm::InputTag FEDRawDataCollection_;
00106   edm::InputTag inputLabelReport_;
00107   std::string prefixME_;
00108   int NLumiBlocks_;
00109 
00110   int ZDCpresent_;
00111   DQMStore* dbe_;
00112 
00113   const HcalElectronicsMap*    eMap_;
00114   //EtaPhiHists ChannelStatus;  // general Hcal Eta-Phi histograms not needed for ZDC Monitor Module.  Replace with ZDC-specific histogram?
00115 
00116 }; //class ZDCMonitorModule : public edm::EDAnalyzer
00117 
00118 #endif