00001 /* HLTTau Path Analyzer 00002 Michail Bachtis 00003 University of Wisconsin - Madison 00004 bachtis@hep.wisc.edu 00005 */ 00006 00007 #ifndef HLTTauDQMPathPlotter_h 00008 #define HLTTauDQMPathPlotter_h 00009 00010 #include "DQMOffline/Trigger/interface/HLTTauDQMPlotter.h" 00011 00012 #include "DataFormats/HLTReco/interface/TriggerEventWithRefs.h" 00013 #include "DataFormats/HLTReco/interface/TriggerRefsCollections.h" 00014 #include "DataFormats/L1Trigger/interface/L1JetParticle.h" 00015 #include "DataFormats/L1Trigger/interface/L1JetParticleFwd.h" 00016 #include "DataFormats/L1Trigger/interface/L1EmParticle.h" 00017 #include "DataFormats/L1Trigger/interface/L1EmParticleFwd.h" 00018 #include "DataFormats/L1Trigger/interface/L1MuonParticle.h" 00019 #include "DataFormats/L1Trigger/interface/L1MuonParticleFwd.h" 00020 #include "DataFormats/EgammaCandidates/interface/Electron.h" 00021 #include "DataFormats/RecoCandidate/interface/RecoChargedCandidate.h" 00022 #include "DataFormats/TauReco/interface/PFTauFwd.h" 00023 #include "DataFormats/TauReco/interface/PFTau.h" 00024 00025 class HLTTauDQMPathPlotter : public HLTTauDQMPlotter { 00026 public: 00027 HLTTauDQMPathPlotter( const edm::ParameterSet&, bool, std::string ); 00028 ~HLTTauDQMPathPlotter(); 00029 const std::string name() { return name_; } 00030 void analyze( const edm::Event&, const edm::EventSetup&, const std::map<int,LVColl>& ); 00031 00032 private: 00033 void endJob() ; 00034 LVColl getFilterCollection( size_t, int, const trigger::TriggerEventWithRefs& ); 00035 00036 //InputTag of TriggerEventWithRefs to analyze 00037 edm::InputTag triggerEventObject_; 00038 00039 //The filters 00040 std::vector<edm::ParameterSet> filters_; 00041 std::vector<HLTTauDQMPlotter::FilterObject> filterObjs_; 00042 00043 //Reference parameters 00044 edm::ParameterSet reference_; 00045 bool doRefAnalysis_; 00046 unsigned int refNTriggeredTaus_; 00047 unsigned int refNTriggeredLeptons_; 00048 double refTauPt_; 00049 double refLeptonPt_; 00050 00051 //MonitorElements 00052 MonitorElement *accepted_events; 00053 MonitorElement *accepted_events_matched; 00054 }; 00055 #endif