CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/DQM/TrackingMonitor/plugins/LogMessageMonitor.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // Package:    LogMessageMonitor
00004 // Class:      LogMessageMonitor
00005 // 
00013 //
00014 // Original Author:  Mia Tosi,40 3-B32,+41227671609,
00015 //         Created:  Thu Mar  8 14:34:13 CET 2012
00016 // $Id: LogMessageMonitor.h,v 1.1 2012/03/28 22:59:42 tosi Exp $
00017 //
00018 //
00019 
00020 // system include files
00021 #include <memory>
00022 
00023 // user include files
00024 #include "FWCore/Framework/interface/Frameworkfwd.h"
00025 #include "FWCore/Framework/interface/EDAnalyzer.h"
00026 
00027 #include "FWCore/Framework/interface/Event.h"
00028 #include "FWCore/Framework/interface/EventSetup.h"
00029 #include "FWCore/Framework/interface/MakerMacros.h"
00030 
00031 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00032 
00033 #include "FWCore/ServiceRegistry/interface/Service.h"
00034 #include "DQMServices/Core/interface/MonitorElement.h"
00035 
00036 #include<vector>
00037 #include <string>
00038 #include <map>
00039 
00040 class DQMStore;
00041 class GenericTriggerEventFlag;
00042 
00043 class GetLumi;
00044 
00045 //
00046 // class declaration
00047 //
00048 
00049 class LogMessageMonitor : public edm::EDAnalyzer {
00050    public:
00051       explicit LogMessageMonitor(const edm::ParameterSet&);
00052       ~LogMessageMonitor();
00053 
00054       static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
00055 
00056 
00057    private:
00058       virtual void beginJob() ;
00059       virtual void analyze(const edm::Event&, const edm::EventSetup&);
00060       virtual void endJob() ;
00061 
00062       virtual void beginRun(edm::Run const&, edm::EventSetup const&);
00063       virtual void endRun(edm::Run const&, edm::EventSetup const&);
00064       virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&);
00065       virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&);
00066 
00067       // ----------member data ---------------------------
00068       std::string histname;  //for naming the histograms according to algorithm used
00069       
00070       DQMStore * dqmStore_;
00071       edm::ParameterSet conf_;
00072 
00073       std::map<std::string,int> allmodulesMap;
00074       std::map<std::string,int> modulesMap;
00075 
00076       // from parameters
00077       std::vector<std::string> modules_vector_;
00078 
00079       GetLumi* lumiDetails_;
00080       GenericTriggerEventFlag* genTriggerEventFlag_;
00081 
00082       // MEs
00083       std::vector<MonitorElement*> ModulesErrorsVsBXlumi;
00084       std::vector<MonitorElement*> ModulesWarningsVsBXlumi;
00085 
00086       bool doWarningsPlots_;
00087       
00088 };