CMS 3D CMS Logo

CSCHLTMonitorModule.h

Go to the documentation of this file.
00001 /*
00002  * =====================================================================================
00003  *
00004  *       Filename:  CSCHLTMonitorModule.h
00005  *
00006  *    Description: Main object of CSC HLT DQM Monitor 
00007  *
00008  *        Version:  1.0
00009  *        Created:  09/15/2008 01:30:00 PM
00010  *       Revision:  none
00011  *       Compiler:  gcc
00012  *
00013  *         Author:  Valdas Rapsevicius (VR), Valdas.Rapsevicius@cern.ch
00014  *        Company:  CERN, CH
00015  *
00016  * =====================================================================================
00017  */
00018 
00019 #ifndef CSCHLTMonitorModule_H
00020 #define CSCHLTMonitorModule_H
00021 
00026 #include <memory>
00027 #include <iostream>
00028 #include <sstream>
00029 #include <fstream>
00030 #include <string>
00031 #include <vector>
00032 #include <set>
00033 #include <map>
00034 #include <bitset>
00035 
00036 #include <FWCore/Framework/interface/EDAnalyzer.h>
00037 #include <DQMServices/Core/interface/DQMStore.h>
00038 #include <DQMServices/Core/interface/MonitorElement.h>
00039 #include <FWCore/ServiceRegistry/interface/Service.h>
00040 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00041 #include <FWCore/MessageLogger/interface/MessageLogger.h>
00042 
00043 #include "FWCore/Framework/interface/Event.h"
00044 #include "FWCore/Framework/interface/EventSetup.h"
00045 #include "FWCore/Framework/interface/Frameworkfwd.h"
00046 #include "DataFormats/FEDRawData/interface/FEDRawData.h"
00047 #include "DataFormats/FEDRawData/interface/FEDNumbering.h"
00048 #include "DataFormats/FEDRawData/interface/FEDRawDataCollection.h"
00049 #include "EventFilter/CSCRawToDigi/interface/CSCDCCEventData.h"
00050 #include "EventFilter/CSCRawToDigi/interface/CSCDCCExaminer.h"
00051 #include "EventFilter/CSCRawToDigi/interface/CSCCFEBData.h"
00052 #include "EventFilter/CSCRawToDigi/interface/CSCCFEBTimeSlice.h"
00053 
00054 #include "CondFormats/CSCObjects/interface/CSCCrateMap.h"
00055 
00056 #include "FWCore/Framework/interface/ESHandle.h"
00057 #include "DQM/CSCMonitorModule/interface/CSCUtility.h"
00058 #include "CondFormats/DataRecord/interface/CSCCrateMapRcd.h"
00059 
00064 #define LOGERROR(cat)      edm::LogError (cat)
00065 #define LOGWARNING(cat)    edm::LogWarning (cat)
00066 #define LOGINFO(cat)       edm::LogInfo (cat)
00067 #define LOGDEBUG(cat)      LogDebug (cat)
00068 
00069 #define FED_FOLDER "FEDIntegrity"
00070 
00075 typedef std::bitset<32> Bitset32;
00076 typedef std::map<const std::string, MonitorElement*> MeMap;
00077 
00082 class CSCHLTMonitorModule: public edm::EDAnalyzer {
00083 
00084   public:
00085 
00086     CSCHLTMonitorModule(const edm::ParameterSet& ps);
00087     virtual ~CSCHLTMonitorModule();
00088 
00089   protected:
00090 
00091     void beginJob(const edm::EventSetup& c);
00092     void beginRun(const edm::Run& r, const edm::EventSetup& c);
00093     void setup();
00094     void analyze(const edm::Event& e, const edm::EventSetup& c) ;
00095     void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& context) ;
00096     void endRun(const edm::Run& r, const edm::EventSetup& c);
00097     void endJob();
00098 
00099   private:
00100 
00102     void monitorEvent(const edm::Event& e) ;
00103 
00105     MeMap mes;
00106 
00108     edm::ParameterSet  parameters;
00109     DQMStore*          dbe;
00110     std::string        monitorName;
00111     std::string        rootDir;
00112 
00114     bool init;
00115 
00117     edm::InputTag   inputObjectsTag;
00118 
00120     unsigned int    examinerMask;
00121     bool            examinerForce;
00122     bool            examinerOutput;
00123     Bitset32        examinerCRCKey;
00124 
00126     uint32_t        nEvents;
00127     uint32_t        fedIdMin;
00128     uint32_t        fedIdMax;
00129     
00130 };
00131 
00132 #endif

Generated on Tue Jun 9 17:32:32 2009 for CMSSW by  doxygen 1.5.4