#include <HLTPrescaleProvider.h>
Public Member Functions | |
HLTConfigProvider const & | hltConfigProvider () const |
template<typename T > | |
HLTPrescaleProvider (edm::ParameterSet const &pset, edm::ConsumesCollector &&iC, T &module) | |
template<typename T > | |
HLTPrescaleProvider (edm::ParameterSet const &pset, edm::ConsumesCollector &iC, T &module) | |
bool | init (const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed) |
L1GtUtils const & | l1GtUtils () const |
l1t::L1TGlobalUtil const & | l1tGlobalUtil () const |
int | prescaleSet (const edm::Event &iEvent, const edm::EventSetup &iSetup) |
template<typename T = unsigned int> | |
T | prescaleValue (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) |
combining the two methods above More... | |
template<> | |
unsigned int | prescaleValue (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) |
template<> | |
unsigned int | prescaleValue (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) |
template<typename TL1 = int, typename THLT = TL1> | |
std::pair< TL1, THLT > | prescaleValues (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) |
Combined L1T (pair.first) and HLT (pair.second) prescales per HLT path. More... | |
template<typename TL1 = int, typename THLT = TL1> | |
std::pair< std::vector< std::pair< std::string, TL1 > >, THLT > | prescaleValuesInDetail (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) |
bool | rejectedByHLTPrescaler (const edm::TriggerResults &triggerResults, unsigned int i) const |
Static Public Member Functions | |
static int | l1PrescaleDenominator () |
Private Member Functions | |
void | checkL1GtUtils () const |
void | checkL1TGlobalUtil () const |
template<typename T > | |
T | convertL1PS (double val) const |
template<> | |
FractionalPrescale | convertL1PS (double val) const |
template<> | |
FractionalPrescale | convertL1PS (double val) const |
double | getL1PrescaleValue (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) |
std::vector< std::pair< std::string, double > > | getL1PrescaleValueInDetail (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) |
Private Attributes | |
unsigned char | count_ [5] = {0, 0, 0, 0, 0} |
HLTConfigProvider | hltConfigProvider_ |
bool | inited_ = false |
std::unique_ptr< L1GtUtils > | l1GtUtils_ |
std::unique_ptr< l1t::L1TGlobalUtil > | l1tGlobalUtil_ |
Static Private Attributes | |
static constexpr int | kL1PrescaleDenominator_ = 100 |
This class provides access routines to get hold of the HLT Configuration
Originally the functions in here were in HLTConfigProvider. The functions that use L1GtUtils and get products from the Event were moved into this class in 2015 when the consumes function calls were added. W. David Dagenhart
See header file for documentation
Definition at line 38 of file HLTPrescaleProvider.h.
HLTPrescaleProvider::HLTPrescaleProvider | ( | edm::ParameterSet const & | pset, |
edm::ConsumesCollector && | iC, | ||
T & | module | ||
) |
Definition at line 117 of file HLTPrescaleProvider.h.
HLTPrescaleProvider::HLTPrescaleProvider | ( | edm::ParameterSet const & | pset, |
edm::ConsumesCollector & | iC, | ||
T & | module | ||
) |
Definition at line 121 of file HLTPrescaleProvider.h.
References l1GtUtils_, l1tGlobalUtil_, callgraph::module, muonDTDigis_cfi::pset, l1t::Run, L1GtUtils::Run, and PDWG_DiPhoton_SD_cff::stageL1Trigger.
|
private |
Definition at line 344 of file HLTPrescaleProvider.cc.
References Exception, and l1GtUtils_.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), init(), l1GtUtils(), and prescaleSet().
|
private |
Definition at line 354 of file HLTPrescaleProvider.cc.
References Exception, and l1tGlobalUtil_.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), init(), l1tGlobalUtil(), and prescaleSet().
|
inlineprivate |
|
private |
Definition at line 106 of file HLTPrescaleProvider.cc.
References funct::abs(), and heppy_batch::val.
|
private |
|
private |
error - can't handle properly multiple L1GTSeed modules
error - can't handle properly multiple L1TSeed modules
Definition at line 118 of file HLTPrescaleProvider.cc.
References checkL1GtUtils(), checkL1TGlobalUtil(), count_, countMax(), submitPVValidationJobs::dump, hltConfigProvider_, HLTConfigProvider::hltL1GTSeeds(), HLTConfigProvider::hltL1TSeeds(), mps_fire::i, iEvent, l1GtUtils_, l1tGlobalUtil_, HLTConfigProvider::l1tType(), mps_fire::result, AlCaHLTBitMon_QueryRunRegistry::string, useL1EventSetup(), and useL1GtTriggerMenuLite().
Referenced by prescaleValues().
|
private |
error - can't handle properly multiple L1GTSeed modules
error - can't handle properly multiple L1TSeed modules
Definition at line 217 of file HLTPrescaleProvider.cc.
References funct::abs(), checkL1GtUtils(), checkL1TGlobalUtil(), count_, countMax(), submitPVValidationJobs::dump, mps_splice::entry, hltConfigProvider_, HLTConfigProvider::hltL1GTSeeds(), HLTConfigProvider::hltL1TSeeds(), mps_fire::i, iEvent, l1GtUtils_, l1tGlobalUtil_, HLTConfigProvider::l1tType(), mps_fire::result, AlCaHLTBitMon_QueryRunRegistry::string, useL1EventSetup(), and useL1GtTriggerMenuLite().
Referenced by prescaleValuesInDetail().
|
inline |
Definition at line 52 of file HLTPrescaleProvider.h.
References hltConfigProvider_.
Referenced by HLTEventAnalyzerAOD::analyze(), IsoTrig::analyze(), HLTEventAnalyzerAOD::analyzeTrigger(), HLTEventAnalyzerAOD::beginRun(), pat::PATTriggerProducer::beginRun(), BPHMonitor::bookHistograms(), CandidateTriggerObjectProducer::produce(), and pat::PATTriggerProducer::produce().
bool HLTPrescaleProvider::init | ( | const edm::Run & | iRun, |
const edm::EventSetup & | iSetup, | ||
const std::string & | processName, | ||
bool & | changed | ||
) |
Run-dependent initialisation (non-const method) "init" return value indicates whether intitialisation has succeeded "changed" parameter indicates whether the config has actually changed This must be called at beginRun for most of the other functions in this class to succeed
L1 GTA V3: https://twiki.cern.ch/twiki/bin/view/CMSPublic/SWGuideL1TriggerL1GtUtils#Version_3
Definition at line 21 of file HLTPrescaleProvider.cc.
References checkL1GtUtils(), checkL1TGlobalUtil(), count_, hltConfigProvider_, HLTConfigProvider::init(), inited_, l1GtUtils_, l1tGlobalUtil_, HLTConfigProvider::l1tType(), SimL1EmulatorRepack_CalouGT_cff::processName, mps_fire::result, useL1EventSetup(), and useL1GtTriggerMenuLite().
Referenced by HLTPrescaleExample::beginRun(), CandidateTriggerObjectProducer::beginRun(), HLTEventAnalyzerAOD::beginRun(), pat::PATTriggerProducer::beginRun(), IsoTrig::beginRun(), BPHMonitor::bookHistograms(), EwkElecDQM::dqmBeginRun(), and EwkMuDQM::dqmBeginRun().
L1GtUtils const & HLTPrescaleProvider::l1GtUtils | ( | ) | const |
Definition at line 50 of file HLTPrescaleProvider.cc.
References checkL1GtUtils(), and l1GtUtils_.
Referenced by pat::PATTriggerProducer::produce().
|
inlinestatic |
Definition at line 94 of file HLTPrescaleProvider.h.
References kL1PrescaleDenominator_.
l1t::L1TGlobalUtil const & HLTPrescaleProvider::l1tGlobalUtil | ( | ) | const |
Definition at line 55 of file HLTPrescaleProvider.cc.
References checkL1TGlobalUtil(), and l1tGlobalUtil_.
int HLTPrescaleProvider::prescaleSet | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) |
HLT prescale values via (L1) EventSetup current (default) prescale set index - to be taken from L1GtUtil via Event
error - notify user!
Definition at line 60 of file HLTPrescaleProvider.cc.
References L1GtUtils::AlgorithmTrigger, cms::cuda::assert(), checkL1GtUtils(), checkL1TGlobalUtil(), count_, countMax(), Exception, hltConfigProvider_, iEvent, inited_, l1GtUtils_, l1tGlobalUtil_, HLTConfigProvider::l1tType(), HLTConfigProvider::processName(), L1GtUtils::TechnicalTrigger, useL1EventSetup(), and useL1GtTriggerMenuLite().
Referenced by EwkMuDQM::analyze(), EwkElecDQM::analyze(), prescaleValue(), and pat::PATTriggerProducer::produce().
|
inline |
combining the two methods above
Definition at line 63 of file HLTPrescaleProvider.h.
References hltConfigProvider_, iEvent, prescaleSet(), and HLTConfigProvider::prescaleValue().
Referenced by HLTPrescaleExample::analyze().
unsigned int HLTPrescaleProvider::prescaleValue | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup, | ||
const std::string & | trigger | ||
) |
unsigned int HLTPrescaleProvider::prescaleValue | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup, | ||
const std::string & | trigger | ||
) |
Definition at line 365 of file HLTPrescaleProvider.cc.
References iEvent.
|
inline |
Combined L1T (pair.first) and HLT (pair.second) prescales per HLT path.
Definition at line 72 of file HLTPrescaleProvider.h.
References getL1PrescaleValue(), and iEvent.
Referenced by HLTPrescaleExample::analyze(), IsoTrig::analyze(), HLTEventAnalyzerAOD::analyzeTrigger(), and CandidateTriggerObjectProducer::produce().
|
inline |
Definition at line 82 of file HLTPrescaleProvider.h.
References mps_splice::entry, getL1PrescaleValueInDetail(), iEvent, and eostools::move().
Referenced by HLTPrescaleExample::analyze(), HLTEventAnalyzerAOD::analyzeTrigger(), BPHMonitor::Prescale(), and pat::PATTriggerProducer::produce().
bool HLTPrescaleProvider::rejectedByHLTPrescaler | ( | const edm::TriggerResults & | triggerResults, |
unsigned int | i | ||
) | const |
Definition at line 340 of file HLTPrescaleProvider.cc.
References hltConfigProvider_, mps_fire::i, HLTConfigProvider::moduleLabel(), HLTConfigProvider::moduleType(), and triggerResults.
|
private |
Definition at line 112 of file HLTPrescaleProvider.h.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), init(), and prescaleSet().
|
private |
Definition at line 109 of file HLTPrescaleProvider.h.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), hltConfigProvider(), init(), prescaleSet(), prescaleValue(), and rejectedByHLTPrescaler().
|
private |
Definition at line 113 of file HLTPrescaleProvider.h.
Referenced by init(), and prescaleSet().
|
staticprivate |
Definition at line 108 of file HLTPrescaleProvider.h.
Referenced by l1PrescaleDenominator().
|
private |
Definition at line 110 of file HLTPrescaleProvider.h.
Referenced by checkL1GtUtils(), getL1PrescaleValue(), getL1PrescaleValueInDetail(), HLTPrescaleProvider(), init(), l1GtUtils(), and prescaleSet().
|
private |
Definition at line 111 of file HLTPrescaleProvider.h.
Referenced by checkL1TGlobalUtil(), getL1PrescaleValue(), getL1PrescaleValueInDetail(), HLTPrescaleProvider(), init(), l1tGlobalUtil(), and prescaleSet().