14 : monitorDir_(ps.getUntrackedParameter<
string>(
"monitorDir")) {}
36 "Efficiency of data LCT Nominal shower being correctly emulated",
44 "Efficiency of data ALCT Nominal shower being correctly emulated",
52 "Efficiency of data CLCT Nominal shower being correctly emulated",
61 "Fraction of emulated LCT Nominal shower without matching data LCT",
69 "Fraction of emulated ALCT Nominal shower without matching data ALCT",
77 "Fraction of emulated CLCT Nominal shower without matching data CLCT",
86 "Efficiency of data LCT Tight shower being correctly emulated",
94 "Efficiency of data ALCT Tight shower being correctly emulated",
102 "Efficiency of data CLCT Tight shower being correctly emulated",
111 "Fraction of emulated LCT Tight shower without matching data LCT",
119 "Fraction of emulated ALCT Tight shower without matching data ALCT",
127 "Fraction of emulated CLCT Tight shower without matching data CLCT",
170 const std::array<std::string, 9> suffix_label{{
"4/2",
"4/1",
"3/2",
"3/1",
" 2/2",
"2/1",
"1/3",
"1/2",
"1/1"}};
173 for (
int ybin = 1; ybin <= 9; ++ybin) {
216 if (lctShowerDataNomSummary_denom_ ==
nullptr or lctShowerDataNomSummary_num_ ==
nullptr or 217 alctShowerDataNomSummary_denom_ ==
nullptr or alctShowerDataNomSummary_num_ ==
nullptr or 218 clctShowerDataNomSummary_denom_ ==
nullptr or clctShowerDataNomSummary_num_ ==
nullptr) {
220 << __PRETTY_FUNCTION__ <<
" could not load the necessary shower data histograms for harvesting";
231 if (lctShowerEmulNomSummary_denom_ ==
nullptr or lctShowerEmulNomSummary_num_ ==
nullptr or 232 alctShowerEmulNomSummary_denom_ ==
nullptr or alctShowerEmulNomSummary_num_ ==
nullptr or 233 clctShowerEmulNomSummary_denom_ ==
nullptr or clctShowerEmulNomSummary_num_ ==
nullptr) {
235 << __PRETTY_FUNCTION__ <<
" could not load the necessary shower emulation histograms for harvesting";
240 igetter.
get(
monitorDir_ +
"/lct_cscshower_data_tight_summary_denom");
243 igetter.
get(
monitorDir_ +
"/alct_cscshower_data_tight_summary_denom");
246 igetter.
get(
monitorDir_ +
"/clct_cscshower_data_tight_summary_denom");
249 if (lctShowerDataTightSummary_denom_ ==
nullptr or lctShowerDataTightSummary_num_ ==
nullptr or 250 alctShowerDataTightSummary_denom_ ==
nullptr or alctShowerDataTightSummary_num_ ==
nullptr or 251 clctShowerDataTightSummary_denom_ ==
nullptr or clctShowerDataTightSummary_num_ ==
nullptr) {
253 << __PRETTY_FUNCTION__ <<
" could not load the necessary shower data (tight) histograms for harvesting";
258 igetter.
get(
monitorDir_ +
"/lct_cscshower_emul_tight_summary_denom");
261 igetter.
get(
monitorDir_ +
"/alct_cscshower_emul_tight_summary_denom");
264 igetter.
get(
monitorDir_ +
"/clct_cscshower_emul_tight_summary_denom");
267 if (lctShowerEmulTightSummary_denom_ ==
nullptr or lctShowerEmulTightSummary_num_ ==
nullptr or 268 alctShowerEmulTightSummary_denom_ ==
nullptr or alctShowerEmulTightSummary_num_ ==
nullptr or 269 clctShowerEmulTightSummary_denom_ ==
nullptr or clctShowerEmulTightSummary_num_ ==
nullptr) {
271 << __PRETTY_FUNCTION__ <<
" could not load the necessary shower emulation (tight) histograms for harvesting";
276 lctShowerDataNomSummary_num_->
getTH2F(), lctShowerDataNomSummary_denom_->
getTH2F(), 1, 1,
"");
278 alctShowerDataNomSummary_num_->
getTH2F(), alctShowerDataNomSummary_denom_->
getTH2F(), 1, 1,
"");
280 clctShowerDataNomSummary_num_->
getTH2F(), clctShowerDataNomSummary_denom_->
getTH2F(), 1, 1,
"");
283 lctShowerEmulNomSummary_num_->
getTH2F(), lctShowerEmulNomSummary_denom_->
getTH2F(), 1, 1,
"");
285 alctShowerEmulNomSummary_num_->
getTH2F(), alctShowerEmulNomSummary_denom_->
getTH2F(), 1, 1,
"");
287 clctShowerEmulNomSummary_num_->
getTH2F(), clctShowerEmulNomSummary_denom_->
getTH2F(), 1, 1,
"");
290 lctShowerDataTightSummary_num_->
getTH2F(), lctShowerDataTightSummary_denom_->
getTH2F(), 1, 1,
"");
292 alctShowerDataTightSummary_num_->
getTH2F(), alctShowerDataTightSummary_denom_->
getTH2F(), 1, 1,
"");
294 clctShowerDataTightSummary_num_->
getTH2F(), clctShowerDataTightSummary_denom_->
getTH2F(), 1, 1,
"");
297 lctShowerEmulTightSummary_num_->
getTH2F(), lctShowerEmulTightSummary_denom_->
getTH2F(), 1, 1,
"");
299 alctShowerEmulTightSummary_num_->
getTH2F(), alctShowerEmulTightSummary_denom_->
getTH2F(), 1, 1,
"");
301 clctShowerEmulTightSummary_num_->
getTH2F(), clctShowerEmulTightSummary_denom_->
getTH2F(), 1, 1,
"");
MonitorElement * alctShowerEmulTightSummary_eff_
MonitorElement * clctShowerDataTightSummary_eff_
virtual void setCurrentFolder(std::string const &fullpath)
virtual void setOption(const char *option)
~L1TdeCSCTPGShowerClient() override
Destructor.
L1TdeCSCTPGShowerClient(const edm::ParameterSet &ps)
Constructor.
MonitorElement * lctShowerEmulNomSummary_eff_
MonitorElement * clctShowerEmulNomSummary_eff_
MonitorElement * clctShowerEmulTightSummary_eff_
virtual TH2F * getTH2F() const
MonitorElement * clctShowerDataNomSummary_eff_
void dqmEndJob(DQMStore::IBooker &, DQMStore::IGetter &) override
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
MonitorElement * lctShowerDataNomSummary_eff_
MonitorElement * alctShowerDataNomSummary_eff_
MonitorElement * lctShowerEmulTightSummary_eff_
virtual void setBinLabel(int bin, const std::string &label, int axis=1)
set bin label for x, y or z axis (axis=1, 2, 3 respectively)
MonitorElement * alctShowerDataTightSummary_eff_
void book(DQMStore::IBooker &ibooker)
MonitorElement * alctShowerEmulNomSummary_eff_
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
virtual MonitorElement * get(std::string const &fullpath) const
void processHistograms(DQMStore::IGetter &)
MonitorElement * lctShowerDataTightSummary_eff_
Log< level::Warning, false > LogWarning
void dqmEndLuminosityBlock(DQMStore::IBooker &, DQMStore::IGetter &, edm::LuminosityBlock const &, edm::EventSetup const &) override
virtual void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)