CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/Validation/RecoTau/plugins/DQMHistEffProducer.h

Go to the documentation of this file.
00001 #ifndef TauDQMHistEffProducer_h
00002 #define TauDQMHistEffProducer_h
00003 
00013 // framework & common header files
00014 #include "FWCore/Framework/interface/EDAnalyzer.h"
00015 #include "FWCore/Framework/interface/Event.h"
00016 #include "FWCore/Framework/interface/EventSetup.h"
00017 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00018 
00019 #include "DQMServices/Core/interface/MonitorElement.h"
00020 
00021 #include <string>
00022 #include <vector>
00023 
00024 class TauDQMHistEffProducer : public edm::EDAnalyzer
00025 {
00026   struct cfgEntryPlot
00027   {
00028     explicit cfgEntryPlot(const edm::ParameterSet&);
00029     explicit cfgEntryPlot(const std::string&, const std::string&, const std::string&);
00030     std::string numerator_;
00031     std::string denominator_;
00032     std::string efficiency_;
00033   };
00034 
00035  public:
00036   explicit TauDQMHistEffProducer(const edm::ParameterSet&);
00037   virtual ~TauDQMHistEffProducer();
00038   virtual void analyze(const edm::Event&, const edm::EventSetup&);
00039   virtual void endJob(){}
00040   virtual void endRun(const edm::Run& r, const edm::EventSetup& c);
00041 
00042 private:
00043   std::vector<cfgEntryPlot> cfgEntryPlot_;
00044   std::vector<MonitorElement*> histoEfficiencyVector_;
00045 };
00046 
00047 #endif
00048 
00049