|
| TriggerRatesMonitor (edm::ParameterSet const &) |
|
| ~TriggerRatesMonitor () override=default |
|
| EDAnalyzer ()=default |
|
bool | wantsGlobalLuminosityBlocks () const final |
|
bool | wantsGlobalRuns () const final |
|
bool | wantsStreamLuminosityBlocks () const final |
|
bool | wantsStreamRuns () const final |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
| EDAnalyzerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
| ~EDAnalyzerBase () override |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
void | convertCurrentProcessAlias (std::string const &processName) |
| Convert "@currentProcess" in InputTag process names to the actual current process name. More...
|
|
| EDConsumerBase () |
|
| EDConsumerBase (EDConsumerBase const &)=delete |
|
| EDConsumerBase (EDConsumerBase &&)=default |
|
ESProxyIndex const * | esGetTokenIndices (edm::Transition iTrans) const |
|
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
|
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
|
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
|
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
void | updateLookup (eventsetup::ESRecordsToProxyIndices const &) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
typedef dqm::reco::DQMStore | DQMStore |
|
typedef dqm::reco::MonitorElement | MonitorElement |
|
typedef EDAnalyzerBase | ModuleType |
|
typedef ProductLabels | Labels |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
|
ConsumesCollector | consumesCollector () |
| Use a ConsumesCollector to gather consumes information from helper functions. More...
|
|
template<typename ProductType , BranchType B = InEvent> |
void | consumesMany () |
|
void | consumesMany (const TypeToGet &id) |
|
template<BranchType B> |
void | consumesMany (const TypeToGet &id) |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes () |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
|
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
Definition at line 104 of file TriggerRatesMonitor.cc.
Implements DQMGlobalEDAnalyzer< RunBasedHistograms >.
Definition at line 222 of file TriggerRatesMonitor.cc.
References dqm::dqmstoreimpl::DQMStore::IBooker::book1D(), ztail::d, contentValuesFiles::datasets, dqm-mbProfile::format, mps_fire::i, dqmiolumiharvest::j, label, m_dqm_path, m_lumisections_range, Skims_PA_cff::name, or, s_tcds_trigger_types, dqm::dqmstoreimpl::DQMStore::IBooker::setCurrentFolder(), singleTopDQM_cfi::setup, str, HLT_2018_cff::streams, AlCaHLTBitMon_QueryRunRegistry::string, and overlapproblemtsosanalyzer_cfi::title.
230 booker.setCurrentFolder(
m_dqm_path +
"/TCDS");
240 auto const &l1tMenu = edm::get<L1TUtmTriggerMenu, L1TUtmTriggerMenuRcd>(
setup);
241 for (
auto const &keyval : l1tMenu.getAlgorithmMap()) {
242 unsigned int bit = keyval.second.getIndex();
246 (
boost::format(
"%s (bit %d)%s vs. lumisection") % keyval.first % bit % (masked ?
" (masked)" :
"")).str();
255 for (
unsigned int d = 0;
d <
datasets.size(); ++
d) {
257 for (
unsigned int i = 0; i <
histograms.datasets[
d].size(); ++
i) {
260 histograms.hlt_by_dataset_counts[
d][
i].pass_l1_seed = booker.book1D(name +
"_pass_L1_seed",
261 name +
" pass L1 seed, vs. lumisection",
265 histograms.hlt_by_dataset_counts[
d][
i].pass_prescale = booker.book1D(name +
"_pass_prescaler",
266 name +
" pass prescaler, vs. lumisection",
270 histograms.hlt_by_dataset_counts[
d][
i].accept = booker.book1D(name +
"_accept",
271 name +
" accept, vs. lumisection",
275 histograms.hlt_by_dataset_counts[
d][
i].reject = booker.book1D(name +
"_reject",
276 name +
" reject, vs. lumisection",
280 histograms.hlt_by_dataset_counts[
d][
i].error = booker.book1D(name +
"_error",
281 name +
" error, vs. lumisection",
288 for (
unsigned int i :
histograms.datasets[d]) {
292 for (
unsigned int j = 0;
j <
histograms.hltConfig.size(i); ++
j) {
295 if (type ==
"HLTL1TSeed" or type ==
"HLTLevel1GTSeed" or type ==
"HLTLevel1Activity" or 296 type ==
"HLTLevel1Pattern") {
300 }
else if (type ==
"HLTPrescaler") {
310 booker.setCurrentFolder(
m_dqm_path +
"/Datasets");
311 for (
unsigned int i = 0; i <
datasets.size(); ++
i)
316 booker.setCurrentFolder(
m_dqm_path +
"/Streams");
318 for (
unsigned int i = 0; i <
streams.size(); ++
i)
const std::string m_dqm_path
const uint32_t m_lumisections_range
static const char *const s_tcds_trigger_types[]
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
void TriggerRatesMonitor::dqmAnalyze |
( |
edm::Event const & |
event, |
|
|
edm::EventSetup const & |
setup, |
|
|
RunBasedHistograms const & |
histograms |
|
) |
| const |
|
overrideprivate |
Definition at line 324 of file TriggerRatesMonitor.cc.
References edm::HLTPathStatus::accept(), edm::HLTGlobalStatus::at(), ztail::d, DEFINE_FWK_MODULE, edm::HLTPathStatus::error(), edm::EventBase::experimentType(), edm::get(), PDWG_DiJetAODSkim_cff::hltResults, mps_fire::i, edm::HLTPathStatus::index(), dqmiolumiharvest::j, m_hlt_results, m_l1t_results, GlobalAlgBlk::maxPhysicsTriggers, castor_dqm_sourceclient_file_cfg::path, bookConverter::results, and edm::HLTGlobalStatus::size().
327 unsigned int lumisection =
event.luminosityBlock();
330 histograms.events_processed->Fill(lumisection);
336 if (not bxvector.isEmpty(0)) {
337 auto const &
results = bxvector.at(0, 0);
339 if (
results.getAlgoDecisionFinal(
i))
350 <<
"This should never happen: the number of HLT paths has changed since the beginning of the run";
353 for (
unsigned int d = 0;
d <
histograms.datasets.size(); ++
d) {
360 for (
unsigned int i = 0;
i <
histograms.datasets[
d].size(); ++
i) {
365 histograms.hlt_by_dataset_counts[d][
i].pass_l1_seed->Fill(lumisection);
367 histograms.hlt_by_dataset_counts[d][
i].pass_prescale->Fill(lumisection);
369 histograms.hlt_by_dataset_counts[d][
i].accept->Fill(lumisection);
370 else if (path.
error())
371 histograms.hlt_by_dataset_counts[d][
i].error->Fill(lumisection);
373 histograms.hlt_by_dataset_counts[
d][
i].reject->Fill(lumisection);
const edm::EDGetTokenT< GlobalAlgBlkBxCollection > m_l1t_results
const edm::EDGetTokenT< edm::TriggerResults > m_hlt_results
unsigned int size() const
Get number of paths stored.
const HLTPathStatus & at(const unsigned int i) const
bool error() const
has this path encountered an error (exception)?
static unsigned int maxPhysicsTriggers
T const & get(Event const &event, InputTag const &tag)(false)
bool accept() const
has this path accepted the event?
unsigned int index() const