#include <HLTPrescaleProvider.h>
Public Member Functions | |
template<> | |
FractionalPrescale | convertL1PS (double val) const |
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<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 void | fillPSetDescription (edm::ParameterSetDescription &desc, unsigned int stageL1Trigger, edm::InputTag const &l1tAlgBlkInputTag, edm::InputTag const &l1tExtBlkInputTag, bool readPrescalesFromFile) |
static int | l1PrescaleDenominator () |
Private Member Functions | |
void | checkL1GtUtils () const |
void | checkL1TGlobalUtil () const |
template<typename T > | |
T | 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, as well as the prescales of Level-1 and High-Level triggers.
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 39 of file HLTPrescaleProvider.h.
HLTPrescaleProvider::HLTPrescaleProvider | ( | edm::ParameterSet const & | pset, |
edm::ConsumesCollector && | iC, | ||
T & | module | ||
) |
Definition at line 137 of file HLTPrescaleProvider.h.
HLTPrescaleProvider::HLTPrescaleProvider | ( | edm::ParameterSet const & | pset, |
edm::ConsumesCollector & | iC, | ||
T & | module | ||
) |
Definition at line 141 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 345 of file HLTPrescaleProvider.cc.
References Exception, and l1GtUtils_.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), init(), l1GtUtils(), and prescaleSet().
|
private |
Definition at line 355 of file HLTPrescaleProvider.cc.
References Exception, and l1tGlobalUtil_.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), init(), l1tGlobalUtil(), and prescaleSet().
|
inlineprivate |
Definition at line 108 of file HLTPrescaleProvider.h.
References or, and heppy_batch::val.
FractionalPrescale HLTPrescaleProvider::convertL1PS | ( | double | val | ) | const |
Definition at line 107 of file HLTPrescaleProvider.cc.
References funct::abs(), kL1PrescaleDenominator_, and heppy_batch::val.
|
static |
Definition at line 365 of file HLTPrescaleProvider.cc.
References submitPVResolutionJobs::desc, l1t::L1TGlobalUtil::fillDescription(), L1GtUtils::fillDescription(), SiStripSourceConfigTier0_cff::l1tAlgBlkInputTag, SiStripSourceConfigTier0_cff::l1tExtBlkInputTag, and PDWG_DiPhoton_SD_cff::stageL1Trigger.
Referenced by BPHMonitor::fillDescriptions().
|
private |
error - can't handle properly multiple L1GTSeed modules
error - can't handle properly multiple L1TSeed modules
Definition at line 119 of file HLTPrescaleProvider.cc.
References checkL1GtUtils(), checkL1TGlobalUtil(), count_, countMax(), GCP_Ntuples_cfg::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 218 of file HLTPrescaleProvider.cc.
References funct::abs(), checkL1GtUtils(), checkL1TGlobalUtil(), count_, countMax(), GCP_Ntuples_cfg::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 53 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 22 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 51 of file HLTPrescaleProvider.cc.
References checkL1GtUtils(), and l1GtUtils_.
Referenced by pat::PATTriggerProducer::produce().
|
inlinestatic |
Definition at line 95 of file HLTPrescaleProvider.h.
References kL1PrescaleDenominator_.
l1t::L1TGlobalUtil const & HLTPrescaleProvider::l1tGlobalUtil | ( | ) | const |
Definition at line 56 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 61 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 64 of file HLTPrescaleProvider.h.
References hltConfigProvider_, iEvent, prescaleSet(), and HLTConfigProvider::prescaleValue().
Referenced by HLTPrescaleExample::analyze().
|
inline |
Combined L1T (pair.first) and HLT (pair.second) prescales per HLT path.
Definition at line 73 of file HLTPrescaleProvider.h.
References getL1PrescaleValue(), and iEvent.
Referenced by HLTPrescaleExample::analyze(), IsoTrig::analyze(), HLTEventAnalyzerAOD::analyzeTrigger(), and CandidateTriggerObjectProducer::produce().
|
inline |
Definition at line 83 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 341 of file HLTPrescaleProvider.cc.
References hltConfigProvider_, mps_fire::i, HLTConfigProvider::moduleLabel(), HLTConfigProvider::moduleType(), and triggerResults.
|
private |
Definition at line 132 of file HLTPrescaleProvider.h.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), init(), and prescaleSet().
|
private |
Definition at line 127 of file HLTPrescaleProvider.h.
Referenced by getL1PrescaleValue(), getL1PrescaleValueInDetail(), hltConfigProvider(), init(), prescaleSet(), prescaleValue(), and rejectedByHLTPrescaler().
|
private |
Definition at line 133 of file HLTPrescaleProvider.h.
Referenced by init(), and prescaleSet().
|
staticprivate |
Definition at line 125 of file HLTPrescaleProvider.h.
Referenced by convertL1PS(), and l1PrescaleDenominator().
|
private |
Definition at line 129 of file HLTPrescaleProvider.h.
Referenced by checkL1GtUtils(), getL1PrescaleValue(), getL1PrescaleValueInDetail(), HLTPrescaleProvider(), init(), l1GtUtils(), and prescaleSet().
|
private |
Definition at line 130 of file HLTPrescaleProvider.h.
Referenced by checkL1TGlobalUtil(), getL1PrescaleValue(), getL1PrescaleValueInDetail(), HLTPrescaleProvider(), init(), l1tGlobalUtil(), and prescaleSet().