CMS 3D CMS Logo

HTMonitor.h
Go to the documentation of this file.
1 #ifndef DQMOffline_Trigger_HTMonitor_h
2 #define DQMOffline_Trigger_HTMonitor_h
3 
4 #include <string>
5 #include <vector>
6 #include <map>
7 
16 
20 
22 
23 //DataFormats
26 
39 
42 
44 enum quant {HT, MJJ, SOFTDROP};
45 
46 //
47 // class declaration
48 //
49 
50 class HTMonitor : public DQMEDAnalyzer
51 {
52 public:
53 
54 
55  struct MEHTbinning {
56  unsigned nbins;
57  double xmin;
58  double xmax;
59  };
60 
61  struct HTME {
64  };
65 
66 
67  HTMonitor( const edm::ParameterSet& );
68  ~HTMonitor() override;
69  static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
72 
73 protected:
74 
75  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
76  void bookME(DQMStore::IBooker &, HTME& me, const std::string& histname, const std::string& histtitle, int nbins, double xmin, double xmax);
77  void bookME(DQMStore::IBooker &, HTME& me, const std::string& histname, const std::string& histtitle, const std::vector<double>& binningX);
78  void bookME(DQMStore::IBooker &, HTME& me, const std::string& histname, const std::string& histtitle, int nbinsX, double xmin, double xmax, double ymin, double ymax);
79  void bookME(DQMStore::IBooker &, HTME& me, const std::string& histname, const std::string& histtitle, int nbinsX, double xmin, double xmax, int nbinsY, double ymin, double ymax);
80  void bookME(DQMStore::IBooker &, HTME& me, const std::string& histname, const std::string& histtitle, const std::vector<double>& binningX, const std::vector<double>& binningY);
81  void setHTitle(HTME& me, const std::string& titleX, const std::string& titleY);
82 
83  void analyze(edm::Event const& iEvent, edm::EventSetup const& iSetup) override;
84 
85 private:
88 
92 
98 
104 
105  std::vector<double> ht_variable_binning_;
108 
113 
114  std::unique_ptr<GenericTriggerEventFlag> num_genTriggerEventFlag_;
115  std::unique_ptr<GenericTriggerEventFlag> den_genTriggerEventFlag_;
116 
122  unsigned njets_;
123  unsigned nelectrons_;
124  unsigned nmuons_;
125  double dEtaCut_;
126 
127  static constexpr double MAXedge_PHI = 3.2;
128  static constexpr int Nbin_PHI = 64;
130  Nbin_PHI, -MAXedge_PHI, MAXedge_PHI
131  };
132 
133  std::vector<bool> warningPrinted4token_;
134 
135 };
136 
137 #endif // HTMONITOR_H
edm::EDGetTokenT< reco::MuonCollection > muoToken_
Definition: HTMonitor.h:102
edm::EDGetTokenT< reco::JetView > jetToken_
Definition: HTMonitor.h:100
double dEtaCut_
Definition: HTMonitor.h:125
quant quantity_
Definition: HTMonitor.h:91
void setHTitle(HTME &me, const std::string &titleX, const std::string &titleY)
Definition: HTMonitor.cc:86
void bookME(DQMStore::IBooker &, HTME &me, const std::string &histname, const std::string &histtitle, int nbins, double xmin, double xmax)
Definition: HTMonitor.cc:95
HTME qME_variableBinning_
Definition: HTMonitor.h:109
edm::InputTag muoInputTag_
Definition: HTMonitor.h:96
StringCutObjectSelector< reco::Muon, true > muoSelection_
Definition: HTMonitor.h:120
~HTMonitor() override
std::vector< double > ht_variable_binning_
Definition: HTMonitor.h:105
unsigned njets_
Definition: HTMonitor.h:122
Provides a code based selection for trigger and DCS information in order to have no failing filters i...
edm::EDGetTokenT< reco::VertexCollection > vtxToken_
Definition: HTMonitor.h:103
static MEHTbinning getHistoPSet(const edm::ParameterSet &pset)
Definition: HTMonitor.cc:68
edm::InputTag jetInputTag_
Definition: HTMonitor.h:94
std::unique_ptr< GenericTriggerEventFlag > den_genTriggerEventFlag_
Definition: HTMonitor.h:115
StringCutObjectSelector< reco::MET, true > metSelection_
Definition: HTMonitor.h:117
std::vector< bool > warningPrinted4token_
Definition: HTMonitor.h:133
Definition: HTMonitor.h:44
int iEvent
Definition: GenABIO.cc:224
edm::InputTag eleInputTag_
Definition: HTMonitor.h:95
static void fillHistoLSPSetDescription(edm::ParameterSetDescription &pset)
Definition: HTMonitor.cc:372
HTMonitor(const edm::ParameterSet &)
Definition: HTMonitor.cc:12
static void fillHistoPSetDescription(edm::ParameterSetDescription &pset)
Definition: HTMonitor.cc:365
MEHTbinning ht_binning_
Definition: HTMonitor.h:106
edm::EDGetTokenT< reco::GsfElectronCollection > eleToken_
Definition: HTMonitor.h:101
MEHTbinning ls_binning_
Definition: HTMonitor.h:107
std::string histoSuffix_
Definition: HTMonitor.h:90
edm::InputTag vtxInputTag_
Definition: HTMonitor.h:97
edm::InputTag metInputTag_
Definition: HTMonitor.h:93
static int Nbin_PHI
Definition: HTMonitor.h:128
StringCutObjectSelector< reco::Jet, true > jetSelection_HT_
Definition: HTMonitor.h:121
quant
Definition: HTMonitor.h:44
unsigned nelectrons_
Definition: HTMonitor.h:123
StringCutObjectSelector< reco::GsfElectron, true > eleSelection_
Definition: HTMonitor.h:119
StringCutObjectSelector< reco::Jet, true > jetSelection_
Definition: HTMonitor.h:118
void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override
Definition: HTMonitor.cc:190
std::string folderName_
Definition: HTMonitor.h:89
HTME deltaphimetj1ME_
Definition: HTMonitor.h:111
static double MAXedge_PHI
Definition: HTMonitor.h:127
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: HTMonitor.cc:379
static MEHTbinning getHistoLSPSet(const edm::ParameterSet &pset)
Definition: HTMonitor.cc:77
HTME deltaphij1j2ME_
Definition: HTMonitor.h:112
Definition: HTMonitor.h:44
edm::EDGetTokenT< reco::PFMETCollection > metToken_
Definition: HTMonitor.h:99
HTME htVsLS_
Definition: HTMonitor.h:110
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: HTMonitor.cc:131
unsigned nmuons_
Definition: HTMonitor.h:124
static MEHTbinning phi_binning_
Definition: HTMonitor.h:129
#define constexpr
Definition: Run.h:45
std::unique_ptr< GenericTriggerEventFlag > num_genTriggerEventFlag_
Definition: HTMonitor.h:114