|
void | analyze (const edm::Event &e, const edm::EventSetup &c) override |
|
void | beginLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override |
|
void | bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override |
|
void | dqmBeginRun (const edm::Run &run, const edm::EventSetup &c) override |
|
void | dqmEndRun (const edm::Run &run, const edm::EventSetup &c) override |
|
void | endLuminosityBlock (const edm::LuminosityBlock &lumiSeg, const edm::EventSetup &c) override |
| DQM Client Diagnostic should be performed here: More...
|
|
| HLTScalers (const edm::ParameterSet &ps) |
|
| ~HLTScalers () override=default |
|
void | accumulate (edm::Event const &event, edm::EventSetup const &setup) final |
|
void | beginRun (edm::Run const &run, edm::EventSetup const &setup) final |
|
| DQMOneEDAnalyzer () |
|
void | endRun (edm::Run const &, edm::EventSetup const &) final |
|
void | endRunProduce (edm::Run &run, edm::EventSetup const &setup) final |
|
virtual bool | getCanSaveByLumi () |
|
| EDProducer ()=default |
|
SerialTaskQueue * | globalLuminosityBlocksQueue () final |
|
SerialTaskQueue * | globalRunsQueue () final |
|
bool | hasAbilityToProduceInBeginLumis () const final |
|
bool | hasAbilityToProduceInBeginRuns () const final |
|
bool | hasAbilityToProduceInEndLumis () const final |
|
bool | hasAbilityToProduceInEndRuns () const final |
|
bool | wantsGlobalLuminosityBlocks () const final |
|
bool | wantsGlobalRuns () const final |
|
| EDProducerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
bool | wantsStreamLuminosityBlocks () const |
|
bool | wantsStreamRuns () const |
|
| ~EDProducerBase () override |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
std::vector< edm::ProductResolverIndex > const & | indiciesForPutProducts (BranchType iBranchType) const |
|
| ProducerBase () |
|
std::vector< edm::ProductResolverIndex > const & | putTokenIndexToProductResolverIndex () const |
|
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
|
std::function< void(BranchDescription const &)> | registrationCallback () const |
| used by the fwk to register list of products More...
|
|
void | resolvePutIndicies (BranchType iBranchType, ModuleToResolverIndicies const &iIndicies, std::string const &moduleLabel) |
|
| ~ProducerBase () noexcept(false) 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 EDProducerBase | ModuleType |
|
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >> |
|
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
|
typedef ProductLabels | Labels |
|
static const std::string & | baseType () |
|
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
|
static void | prevalidate (ConfigurationDescriptions &descriptions) |
|
virtual void | analyze (edm::Event const &, edm::EventSetup const &) |
|
virtual void | dqmBeginRun (edm::Run const &, edm::EventSetup const &) |
|
virtual void | dqmEndRun (edm::Run const &, edm::EventSetup const &) |
|
ProducesCollector | producesCollector () |
|
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) |
|
edm::EDPutTokenT< DQMToken > | runToken_ |
|
Definition at line 65 of file HLTScalers.h.
Definition at line 180 of file HLTScalers.cc.
References accept(), edm::HLTGlobalStatus::accept(), b, edm::EventBase::bunchCrossing(), l1GtPatternGenerator_cfi::bx, detailedScalers_, diagnostic_, Exception, dqm::impl::MonitorElement::Fill(), dqmdumpme::first, edm::Event::getByToken(), dqm::impl::MonitorElement::getTH1(), hltBx_, hltBxVsPath_, hltCorrelations_, hltOverallScaler_, hltOverallScalerN_, PDWG_DiJetAODSkim_cff::hltResults, mps_fire::i, edm::HLTGlobalStatus::index(), dqmiolumiharvest::j, cmsLHEtoEOSManager::l, edm::EDConsumerBase::labelsForToken(), LogDebug, edm::ProductLabels::module, names, nev_, nProc_, pairPDPaths_, Pass, data-class-funcs::q, scalers_, scalersException_, scalersN_, scalersPD_, edm::second(), sentPaths_, dqm::impl::MonitorElement::setBinContent(), edm::HLTGlobalStatus::size(), edm::HLTGlobalStatus::state(), AlCaHLTBitMon_QueryRunRegistry::string, edm::TriggerNames::triggerIndex(), edm::TriggerNames::triggerNames(), edm::Event::triggerNames(), trigNames, and trigResultsSource_.
191 edm::LogInfo(
"HLTScalers") <<
"getByLabel for TriggerResults failed" 192 <<
" with label " << l.module;
195 int npath = hltResults->
size();
207 LogDebug(
"HLTScalers") << q <<
": " << *
j;
212 for (
unsigned int i = 0;
i < nPD;
i++) {
222 for (
int i = 0;
i < npath; ++
i) {
225 for (
unsigned int j = 0; j < hltResults->
index(
i); ++
j) {
233 for (
int j =
i + 1; j < npath; ++
j) {
249 bool anyGroupPassed =
false;
250 for (
unsigned int mi = 0; mi <
pairPDPaths_.size(); mi++) {
251 bool groupPassed =
false;
260 if (pathByIndex >= hltResults->
size())
271 if (hltResults->
accept(pathByIndex)) {
279 anyGroupPassed =
true;
std::vector< std::pair< std::string, std::vector< std::string > > > pairPDPaths_
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * scalersN_
MonitorElement * detailedScalers_
bool accept() const
Has at least one path accepted the event?
int bunchCrossing() const
MonitorElement * hltOverallScaler_
MonitorElement * scalers_
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
MonitorElement * diagnostic_
Strings const & triggerNames() const
const std::string names[nVars_]
U second(std::pair< T, U > const &p)
MonitorElement * hltBxVsPath_
unsigned int triggerIndex(std::string const &name) const
unsigned int size() const
Get number of paths stored.
unsigned int index(const unsigned int i) const
Get index (slot position) of module giving the decision of the ith path.
MonitorElement * hltCorrelations_
static const char *const trigNames[]
MonitorElement * scalersException_
virtual void setBinContent(int binx, double content)
set content of bin (1-D)
MonitorElement * hltOverallScalerN_
void labelsForToken(EDGetToken iToken, Labels &oLabels) const
MonitorElement * scalersPD_
edm::TriggerNames const & triggerNames(edm::TriggerResults const &triggerResults) const override
hlt::HLTState state(const unsigned int i) const
Get status of ith path.
edm::EDGetTokenT< edm::TriggerResults > trigResultsSource_
Implements DQMOneEDAnalyzer< edm::one::WatchLuminosityBlocks >.
Definition at line 135 of file HLTScalers.cc.
References dqm::dqmstoreimpl::DQMStore::IBooker::book1D(), dqm::dqmstoreimpl::DQMStore::IBooker::book2D(), dqm::dqmstoreimpl::DQMStore::IBooker::bookInt(), detailedScalers_, diagnostic_, folderName_, hltBx_, hltBxVsPath_, hltConfig_, hltCorrelations_, hltOverallScaler_, hltOverallScalerN_, nLumiBlock_, nProc_, pairPDPaths_, scalers_, scalersException_, scalersN_, scalersPD_, dqm::dqmstoreimpl::DQMStore::IBooker::setCurrentFolder(), HLTConfigProvider::size(), and AlCaHLTBitMon_QueryRunRegistry::string.
137 iBooker.setCurrentFolder(rawdir);
139 nProc_ = iBooker.bookInt(
"nProcessed");
141 diagnostic_ = iBooker.book1D(
"hltMerge",
"HLT merging diagnostic", 1, 0.5, 1.5);
143 hltOverallScaler_ = iBooker.book1D(
"hltOverallScaler",
"HLT Overall Scaler", 1, 0.5, 1.5);
144 hltOverallScalerN_ = iBooker.book1D(
"hltOverallScalerN",
"Reset HLT Overall Scaler", 1, 0.5, 1.5);
153 int maxModules = 200;
155 scalersPD_ = iBooker.book1D(
"pdScalers",
"PD scalers (stream A)", nPD, -0.5, nPD - 0.5);
157 iBooker.book2D(
"detailedHltScalers",
"HLT Scalers", npath, -0.5, npath - 0.5, maxModules, 0, maxModules - 1);
158 scalers_ = iBooker.book1D(
"hltScalers",
"HLT scalers", npath, -0.5, npath - 0.5);
159 scalersN_ = iBooker.book1D(
"hltScalersN",
"Reset HLT scalers", npath, -0.5, npath - 0.5);
160 scalersException_ = iBooker.book1D(
"hltExceptions",
"HLT Exception scalers", npath, -0.5, npath - 0.5);
162 iBooker.book2D(
"hltCorrelations",
"HLT Scalers", npath, -0.5, npath - 0.5, npath, -0.5, npath - 0.5);
167 iBooker.book2D(
"hltBxVsPath",
"HLT Accept vs Bunch Number", 3600, -0.5, 3599.5, npath, -0.5, npath - 0.5);
168 hltBx_ = iBooker.book1D(
"hltBx",
"Bx of HLT Accepted Events ", 3600, -0.5, 3599.5);
unsigned int size() const
number of trigger paths in trigger table
std::vector< std::pair< std::string, std::vector< std::string > > > pairPDPaths_
MonitorElement * scalersN_
MonitorElement * detailedScalers_
MonitorElement * hltOverallScaler_
MonitorElement * scalers_
MonitorElement * diagnostic_
MonitorElement * hltBxVsPath_
MonitorElement * hltCorrelations_
HLTConfigProvider hltConfig_
MonitorElement * scalersException_
MonitorElement * nLumiBlock_
MonitorElement * hltOverallScalerN_
MonitorElement * scalersPD_