CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/DQMServices/Components/src/DQMMessageLogger.h

Go to the documentation of this file.
00001 
00002 #ifndef DQMMESSAGELOGGER_H
00003 #define DQMMESSAGELOGGER_H
00004 
00005 #include "FWCore/Framework/interface/Frameworkfwd.h"
00006 #include "FWCore/Framework/interface/EDAnalyzer.h"
00007 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00008 #include "FWCore/ServiceRegistry/interface/Service.h"
00009 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00010 #include "DataFormats/FWLite/interface/Event.h"
00011 #include<vector>
00012 #include <string>
00013 #include <map>
00014 
00015 class DQMStore;
00016 class MonitorElement;
00017 
00018 class DQMMessageLogger : public edm::EDAnalyzer {
00019  public:
00020 
00022   DQMMessageLogger(const edm::ParameterSet&);
00023   
00025   virtual ~DQMMessageLogger();
00026   
00028   void beginJob();
00029 
00031   void analyze(const edm::Event&, const edm::EventSetup&);
00032 
00033 
00035   void endRun(const edm::Run & r, const edm::EventSetup & c);
00036 
00038   void endJob();
00039 
00040  private:
00041 
00042 
00043   // ----------member data ---------------------------
00044   
00045   DQMStore* theDbe;
00046   // Switch for verbosity
00047   std::string metname;
00048   
00049   std::map<std::string,int> moduleMap;
00050   std::map<std::string,int> categoryMap;
00051   std::map<std::string,int> categoryWCount;
00052   std::map<std::string,int> categoryECount;
00053   // from parameters
00054   std::vector<std::string> categories_vector;
00055   std::string directoryName;
00056 
00057   //The histos
00058   MonitorElement *categories_errors;
00059   MonitorElement *categories_warnings;
00060   MonitorElement *modules_errors;
00061   MonitorElement *modules_warnings;
00062   MonitorElement *total_errors;
00063   MonitorElement *total_warnings;
00064 
00065   
00066 };
00067 #endif  
00068 
00069