CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_4_4_5_patch3/src/HLTriggerOffline/Egamma/interface/EmDQMFeeder.h

Go to the documentation of this file.
00001 //
00002 // Package:    EmDQMFeeder
00003 // Class:      EmDQMFeeder
00004 // 
00012 //
00013 // Original Author:  Thomas Reis,40 4-B24,+41227671567,
00014 //         Created:  Tue Mar 15 12:24:11 CET 2011
00015 // $Id: EmDQMFeeder.h,v 1.3 2011/05/26 08:58:51 treis Exp $
00016 //
00017 //
00018 
00019 
00020 // system include files
00021 #include <memory>
00022 #include <iostream>
00023 #include <string>
00024 #include <vector>
00025 #include <math.h>
00026 #include <boost/regex.hpp>
00027 #include <boost/lexical_cast.hpp>
00028 
00029 // user include files
00030 #include "FWCore/Framework/interface/Frameworkfwd.h"
00031 #include "FWCore/Framework/interface/EDAnalyzer.h"
00032 
00033 #include "FWCore/Framework/interface/Event.h"
00034 #include "FWCore/Framework/interface/MakerMacros.h"
00035 
00036 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00037 
00038 #include "HLTrigger/HLTcore/interface/HLTConfigProvider.h"
00039 #include "HLTriggerOffline/Egamma/interface/EmDQM.h"
00040 #include "DataFormats/HLTReco/interface/TriggerTypeDefs.h"
00041 
00042 //
00043 // class declaration
00044 //
00045 class EmDQMFeeder : public edm::EDAnalyzer {
00046    public:
00047       explicit EmDQMFeeder(const edm::ParameterSet&);
00048       ~EmDQMFeeder();
00049 
00050       static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
00051 
00052    private:
00053       virtual void beginJob() ;
00054       virtual void analyze(const edm::Event&, const edm::EventSetup&);
00055       virtual void endJob() ;
00056 
00057       virtual void beginRun(edm::Run const&, edm::EventSetup const&);
00058       virtual void endRun(edm::Run const&, edm::EventSetup const&);
00059       virtual void beginLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&);
00060       virtual void endLuminosityBlock(edm::LuminosityBlock const&, edm::EventSetup const&);
00061 
00062       // ----------member data ---------------------------
00063 
00064       const edm::ParameterSet& iConfig;
00065 
00066       //std::string processName_; // process name of (HLT) process for which to get HLT configuration
00067       edm::InputTag triggerObject_;
00069       HLTConfigProvider hltConfig_;
00070 
00071       std::vector<std::vector<std::string> > findEgammaPaths();
00072       std::vector<std::string> getFilterModules(const std::string&);
00073       double getPrimaryEtCut(const std::string&);
00074 
00075       edm::ParameterSet makePSetForL1SeedFilter(const std::string&);
00076       edm::ParameterSet makePSetForL1SeedToSuperClusterMatchFilter(const std::string&);
00077       edm::ParameterSet makePSetForEtFilter(const std::string&);
00078       edm::ParameterSet makePSetForOneOEMinusOneOPFilter(const std::string&);
00079       edm::ParameterSet makePSetForPixelMatchFilter(const std::string&);
00080       edm::ParameterSet makePSetForEgammaGenericFilter(const std::string&);
00081       edm::ParameterSet makePSetForEgammaGenericQuadraticFilter(const std::string&);
00082       edm::ParameterSet makePSetForElectronGenericFilter(const std::string&);
00083       edm::ParameterSet makePSetForEgammaDoubleEtDeltaPhiFilter(const std::string&);
00084 
00085       std::vector<EmDQM*> emDQMmodules;
00086 
00087       static const unsigned TYPE_SINGLE_ELE = 0;
00088       static const unsigned TYPE_DOUBLE_ELE = 1;
00089       static const unsigned TYPE_SINGLE_PHOTON = 2;
00090       static const unsigned TYPE_DOUBLE_PHOTON = 3;
00091       static const unsigned TYPE_TRIPLE_ELE = 4;
00092 
00093       unsigned verbosity_;
00094       static const unsigned OUTPUT_SILENT = 0;
00095       static const unsigned OUTPUT_ERRORS = 1;
00096       static const unsigned OUTPUT_WARNINGS = 2;
00097       static const unsigned OUTPUT_ALL = 3;
00098 
00099 };
00100 
00101 //
00102 // constants, enums and typedefs
00103 //
00104 
00105 //
00106 // static data member definitions
00107 //
00108 
00109