File indexing completed on 2023-10-25 09:44:35
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 *hAcceptedEvents_;
0062 MonitorElement *hTrigTauEt_;
0063 MonitorElement *hTrigTauEta_;
0064 MonitorElement *hTrigTauPhi_;
0065 MonitorElement *hTrigMuonEt_;
0066 MonitorElement *hTrigMuonEta_;
0067 MonitorElement *hTrigMuonPhi_;
0068 MonitorElement *hTrigElectronEt_;
0069 MonitorElement *hTrigElectronEta_;
0070 MonitorElement *hTrigElectronPhi_;
0071 MonitorElement *hTrigMETEt_;
0072 MonitorElement *hTrigMETPhi_;
0073 MonitorElement *hMass_;
0074
0075 MonitorElement *hL2TrigTauEtEffNum_;
0076 MonitorElement *hL2TrigTauEtEffDenom_;
0077 MonitorElement *hL2TrigTauHighEtEffNum_;
0078 MonitorElement *hL2TrigTauHighEtEffDenom_;
0079 MonitorElement *hL2TrigTauEtaEffNum_;
0080 MonitorElement *hL2TrigTauEtaEffDenom_;
0081 MonitorElement *hL2TrigTauPhiEffNum_;
0082 MonitorElement *hL2TrigTauPhiEffDenom_;
0083
0084 MonitorElement *hL3TrigTauEtEffNum_;
0085 MonitorElement *hL3TrigTauEtEffDenom_;
0086 MonitorElement *hL3TrigTauHighEtEffNum_;
0087 MonitorElement *hL3TrigTauHighEtEffDenom_;
0088 MonitorElement *hL3TrigTauEtaEffNum_;
0089 MonitorElement *hL3TrigTauEtaEffDenom_;
0090 MonitorElement *hL3TrigTauPhiEffNum_;
0091 MonitorElement *hL3TrigTauPhiEffDenom_;
0092 MonitorElement *hL3TrigTauEtaPhiEffNum_;
0093 MonitorElement *hL3TrigTauEtaPhiEffDenom_;
0094
0095 MonitorElement *hL2TrigElectronEtEffNum_;
0096 MonitorElement *hL2TrigElectronEtEffDenom_;
0097 MonitorElement *hL2TrigElectronEtaEffNum_;
0098 MonitorElement *hL2TrigElectronEtaEffDenom_;
0099 MonitorElement *hL2TrigElectronPhiEffNum_;
0100 MonitorElement *hL2TrigElectronPhiEffDenom_;
0101
0102 MonitorElement *hL3TrigElectronEtEffNum_;
0103 MonitorElement *hL3TrigElectronEtEffDenom_;
0104 MonitorElement *hL3TrigElectronEtaEffNum_;
0105 MonitorElement *hL3TrigElectronEtaEffDenom_;
0106 MonitorElement *hL3TrigElectronPhiEffNum_;
0107 MonitorElement *hL3TrigElectronPhiEffDenom_;
0108
0109 MonitorElement *hL2TrigMuonEtEffNum_;
0110 MonitorElement *hL2TrigMuonEtEffDenom_;
0111 MonitorElement *hL2TrigMuonEtaEffNum_;
0112 MonitorElement *hL2TrigMuonEtaEffDenom_;
0113 MonitorElement *hL2TrigMuonPhiEffNum_;
0114 MonitorElement *hL2TrigMuonPhiEffDenom_;
0115
0116 MonitorElement *hL3TrigMuonEtEffNum_;
0117 MonitorElement *hL3TrigMuonEtEffDenom_;
0118 MonitorElement *hL3TrigMuonEtaEffNum_;
0119 MonitorElement *hL3TrigMuonEtaEffDenom_;
0120 MonitorElement *hL3TrigMuonPhiEffNum_;
0121 MonitorElement *hL3TrigMuonPhiEffDenom_;
0122
0123 MonitorElement *hL2TrigMETEtEffNum_;
0124 MonitorElement *hL2TrigMETEtEffDenom_;
0125 };
0126
0127 #endif