Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-09 22:33:51

0001 // -*- c++ -*-
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 }  // namespace edm
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