CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch1/src/DQMOffline/Trigger/interface/HLTTauPostProcessor.h

Go to the documentation of this file.
00001 /*DQM For Tau HLT
00002  Author : Michail Bachtis
00003  University of Wisconsin-Madison
00004  bachtis@hep.wisc.edu
00005  */
00006 
00007 #include "FWCore/Framework/interface/EDAnalyzer.h"
00008 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00009 #include "DataFormats/Common/interface/Handle.h"
00010 #include "FWCore/Framework/interface/Event.h"
00011 #include "FWCore/Framework/interface/EventSetup.h"
00012 #include "FWCore/Framework/interface/ESHandle.h"
00013 #include "FWCore/MessageLogger/interface/MessageLogger.h"
00014 #include "FWCore/ServiceRegistry/interface/Service.h"
00015 #include "FWCore/Utilities/interface/Digest.h"
00016 
00017 //Plotters
00018 #include "DQMOffline/Trigger/interface/HLTTauDQMSummaryPlotter.h"
00019 
00020 //Automatic Configuration
00021 #include "DQMOffline/Trigger/interface/HLTTauDQMAutomation.h"
00022 
00023 class HLTTauPostProcessor : public edm::EDAnalyzer {
00024 public:
00025     HLTTauPostProcessor( const edm::ParameterSet& );
00026     ~HLTTauPostProcessor();
00027     
00028 protected:
00030     void beginJob();
00031     
00033     void beginRun(const edm::Run& r, const edm::EventSetup& c);
00034     
00036     void analyze(const edm::Event& e, const edm::EventSetup& c) ;
00037     
00039     void beginLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& iSetup);
00041     void endLuminosityBlock(const edm::LuminosityBlock& lumiSeg, const edm::EventSetup& iSetup);
00043     void endRun(const edm::Run& r, const edm::EventSetup& iSetup);
00044     
00046     void endJob();
00047     
00048     void harvest();
00049     
00050 private:
00051     //Helper function to retrieve data from the parameter set
00052     void processPSet( const edm::ParameterSet& pset );
00053     
00054     edm::ParameterSet ps_;
00055     std::vector<edm::ParameterSet> setup_;
00056     std::string dqmBaseFolder_;
00057     bool hltMenuChanged_;
00058     std::string hltProcessName_;
00059     std::string sourceModule_;
00060     
00061     double L1MatchDr_;
00062     double HLTMatchDr_;
00063     
00064     HLTConfigProvider HLTCP_;
00065     HLTTauDQMAutomation automation_;
00066         
00067     bool runAtEndJob_;
00068     bool runAtEndRun_;
00069         
00070     std::vector<HLTTauDQMSummaryPlotter*> summaryPlotters_;
00071 };