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 
99  std::vector<double> ht_variable_binning_;
102 
107 
108  std::unique_ptr<GenericTriggerEventFlag> num_genTriggerEventFlag_;
109  std::unique_ptr<GenericTriggerEventFlag> den_genTriggerEventFlag_;
110 
116  unsigned njets_;
117  unsigned nelectrons_;
118  unsigned nmuons_;
119  double dEtaCut_;
120 
121  static constexpr double MAXedge_PHI = 3.2;
122  static constexpr int Nbin_PHI = 64;
124  Nbin_PHI, -MAXedge_PHI, MAXedge_PHI
125  };
126 
127 
128 
129 };
130 
131 #endif // HTMONITOR_H
edm::EDGetTokenT< reco::MuonCollection > muoToken_
Definition: HTMonitor.h:96
edm::EDGetTokenT< reco::JetView > jetToken_
Definition: HTMonitor.h:94
double dEtaCut_
Definition: HTMonitor.h:119
quant quantity_
Definition: HTMonitor.h:91
void setHTitle(HTME &me, const std::string &titleX, const std::string &titleY)
Definition: HTMonitor.cc:72
void bookME(DQMStore::IBooker &, HTME &me, const std::string &histname, const std::string &histtitle, int nbins, double xmin, double xmax)
Definition: HTMonitor.cc:81
HTME qME_variableBinning_
Definition: HTMonitor.h:103
StringCutObjectSelector< reco::Muon, true > muoSelection_
Definition: HTMonitor.h:114
~HTMonitor() override
std::vector< double > ht_variable_binning_
Definition: HTMonitor.h:99
unsigned njets_
Definition: HTMonitor.h:116
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:97
static MEHTbinning getHistoPSet(const edm::ParameterSet &pset)
Definition: HTMonitor.cc:54
#define constexpr
std::unique_ptr< GenericTriggerEventFlag > den_genTriggerEventFlag_
Definition: HTMonitor.h:109
StringCutObjectSelector< reco::MET, true > metSelection_
Definition: HTMonitor.h:111
Definition: HTMonitor.h:44
int iEvent
Definition: GenABIO.cc:230
static void fillHistoLSPSetDescription(edm::ParameterSetDescription &pset)
Definition: HTMonitor.cc:311
HTMonitor(const edm::ParameterSet &)
Definition: HTMonitor.cc:11
static void fillHistoPSetDescription(edm::ParameterSetDescription &pset)
Definition: HTMonitor.cc:304
MEHTbinning ht_binning_
Definition: HTMonitor.h:100
edm::EDGetTokenT< reco::GsfElectronCollection > eleToken_
Definition: HTMonitor.h:95
MEHTbinning ls_binning_
Definition: HTMonitor.h:101
std::string histoSuffix_
Definition: HTMonitor.h:90
static int Nbin_PHI
Definition: HTMonitor.h:122
StringCutObjectSelector< reco::Jet, true > jetSelection_HT_
Definition: HTMonitor.h:115
quant
Definition: HTMonitor.h:44
unsigned nelectrons_
Definition: HTMonitor.h:117
StringCutObjectSelector< reco::GsfElectron, true > eleSelection_
Definition: HTMonitor.h:113
StringCutObjectSelector< reco::Jet, true > jetSelection_
Definition: HTMonitor.h:112
void analyze(edm::Event const &iEvent, edm::EventSetup const &iSetup) override
Definition: HTMonitor.cc:176
std::string folderName_
Definition: HTMonitor.h:89
HTME deltaphimetj1ME_
Definition: HTMonitor.h:105
static double MAXedge_PHI
Definition: HTMonitor.h:121
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
Definition: HTMonitor.cc:318
static MEHTbinning getHistoLSPSet(const edm::ParameterSet &pset)
Definition: HTMonitor.cc:63
HTME deltaphij1j2ME_
Definition: HTMonitor.h:106
Definition: HTMonitor.h:44
edm::EDGetTokenT< reco::PFMETCollection > metToken_
Definition: HTMonitor.h:93
HTME htVsLS_
Definition: HTMonitor.h:104
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: HTMonitor.cc:117
unsigned nmuons_
Definition: HTMonitor.h:118
static MEHTbinning phi_binning_
Definition: HTMonitor.h:123
Definition: Run.h:43
std::unique_ptr< GenericTriggerEventFlag > num_genTriggerEventFlag_
Definition: HTMonitor.h:108