File indexing completed on 2024-04-09 22:33:51
0001
0002 #ifndef DQMOffline_Trigger_HLTTauDQMPathPlotter_h
0003 #define DQMOffline_Trigger_HLTTauDQMPathPlotter_h
0004
0005 #include "DQMOffline/Trigger/interface/HLTTauDQMPlotter.h"
0006 #include "DQMOffline/Trigger/interface/HLTTauDQMPath.h"
0007 #include "DQMOffline/Trigger/interface/HistoWrapper.h"
0008
0009 namespace edm {
0010 class Event;
0011 class EventSetup;
0012 class TriggerResults;
0013 }
0014
0015 namespace trigger {
0016 class TriggerEvent;
0017 }
0018
0019 class HLTConfigProvider;
0020
0021 class HLTTauDQMPathPlotter : private HLTTauDQMPlotter {
0022 public:
0023 HLTTauDQMPathPlotter(const std::string &pathName,
0024 const HLTConfigProvider &HLTCP,
0025 bool doRefAnalysis,
0026 const std::string &dqmBaseFolder,
0027 const std::string &hltProcess,
0028 int ptbins,
0029 int etabins,
0030 int phibins,
0031 double ptmax,
0032 double highptmax,
0033 double l1MatchDr,
0034 double hltMatchDr);
0035 ~HLTTauDQMPathPlotter();
0036
0037 using HLTTauDQMPlotter::isValid;
0038
0039 void bookHistograms(HistoWrapper &iWrapper, DQMStore::IBooker &iBooker);
0040
0041 void analyze(const edm::TriggerResults &triggerResults,
0042 const trigger::TriggerEvent &triggerEvent,
0043 const HLTTauDQMOfflineObjects &refCollection);
0044
0045 const HLTTauDQMPath *getPathObject() const { return &hltPath_; }
0046
0047 typedef std::tuple<std::string, size_t> FilterIndex;
0048
0049 private:
0050 const int ptbins_;
0051 const int etabins_;
0052 const int phibins_;
0053 const double ptmax_;
0054 const double highptmax_;
0055 const double l1MatchDr_;
0056 const double hltMatchDr_;
0057 const bool doRefAnalysis_;
0058
0059 HLTTauDQMPath hltPath_;
0060
0061 MonitorElement *hCounter_;
0062 MonitorElement *hAcceptedEvents_;
0063 MonitorElement *hTrigTauEt_;
0064 MonitorElement *hTrigTauEta_;
0065 MonitorElement *hTrigTauPhi_;
0066 MonitorElement *hTrigMuonEt_;
0067 MonitorElement *hTrigMuonEta_;
0068 MonitorElement *hTrigMuonPhi_;
0069 MonitorElement *hTrigElectronEt_;
0070 MonitorElement *hTrigElectronEta_;
0071 MonitorElement *hTrigElectronPhi_;
0072 MonitorElement *hTrigMETEt_;
0073 MonitorElement *hTrigMETPhi_;
0074 MonitorElement *hMass_;
0075
0076 MonitorElement *hL2TrigTauEtEffNum_;
0077 MonitorElement *hL2TrigTauEtEffDenom_;
0078 MonitorElement *hL2TrigTauHighEtEffNum_;
0079 MonitorElement *hL2TrigTauHighEtEffDenom_;
0080 MonitorElement *hL2TrigTauEtaEffNum_;
0081 MonitorElement *hL2TrigTauEtaEffDenom_;
0082 MonitorElement *hL2TrigTauPhiEffNum_;
0083 MonitorElement *hL2TrigTauPhiEffDenom_;
0084
0085 MonitorElement *hL3TrigTauEtEffNum_;
0086 MonitorElement *hL3TrigTauEtEffDenom_;
0087 MonitorElement *hL3TrigTauHighEtEffNum_;
0088 MonitorElement *hL3TrigTauHighEtEffDenom_;
0089 MonitorElement *hL3TrigTauEtaEffNum_;
0090 MonitorElement *hL3TrigTauEtaEffDenom_;
0091 MonitorElement *hL3TrigTauPhiEffNum_;
0092 MonitorElement *hL3TrigTauPhiEffDenom_;
0093 MonitorElement *hL3TrigTauEtaPhiEffNum_;
0094 MonitorElement *hL3TrigTauEtaPhiEffDenom_;
0095
0096 MonitorElement *hL2TrigElectronEtEffNum_;
0097 MonitorElement *hL2TrigElectronEtEffDenom_;
0098 MonitorElement *hL2TrigElectronEtaEffNum_;
0099 MonitorElement *hL2TrigElectronEtaEffDenom_;
0100 MonitorElement *hL2TrigElectronPhiEffNum_;
0101 MonitorElement *hL2TrigElectronPhiEffDenom_;
0102
0103 MonitorElement *hL3TrigElectronEtEffNum_;
0104 MonitorElement *hL3TrigElectronEtEffDenom_;
0105 MonitorElement *hL3TrigElectronEtaEffNum_;
0106 MonitorElement *hL3TrigElectronEtaEffDenom_;
0107 MonitorElement *hL3TrigElectronPhiEffNum_;
0108 MonitorElement *hL3TrigElectronPhiEffDenom_;
0109
0110 MonitorElement *hL2TrigMuonEtEffNum_;
0111 MonitorElement *hL2TrigMuonEtEffDenom_;
0112 MonitorElement *hL2TrigMuonEtaEffNum_;
0113 MonitorElement *hL2TrigMuonEtaEffDenom_;
0114 MonitorElement *hL2TrigMuonPhiEffNum_;
0115 MonitorElement *hL2TrigMuonPhiEffDenom_;
0116
0117 MonitorElement *hL3TrigMuonEtEffNum_;
0118 MonitorElement *hL3TrigMuonEtEffDenom_;
0119 MonitorElement *hL3TrigMuonEtaEffNum_;
0120 MonitorElement *hL3TrigMuonEtaEffDenom_;
0121 MonitorElement *hL3TrigMuonPhiEffNum_;
0122 MonitorElement *hL3TrigMuonPhiEffDenom_;
0123
0124 MonitorElement *hL2TrigMETEtEffNum_;
0125 MonitorElement *hL2TrigMETEtEffDenom_;
0126 };
0127
0128 #endif