#include <HLTConfigProvider.h>
Public Member Functions | |
const bool | changed () const |
changed? | |
const std::vector< std::string > & | datasetContent (unsigned int dataset) const |
names of trigger paths in dataset with index i | |
const std::vector< std::string > & | datasetContent (const std::string &dataset) const |
names of trigger paths in dataset with name | |
const std::vector< std::vector < std::string > > & | datasetContents () const |
names of trigger paths for all datasets | |
unsigned int | datasetIndex (const std::string &dataset) const |
index of dataset with name | |
const std::string & | datasetName (unsigned int dataset) const |
name of dataset with index i | |
const std::vector< std::string > & | datasetNames () const |
void | dump (const std::string &what) const |
Dumping config info to cout. | |
HLTConfigProvider () | |
c'tor | |
const std::vector< std::vector < std::pair< bool, std::string > > > & | hltL1GTSeeds () const |
const std::vector< std::pair < bool, std::string > > & | hltL1GTSeeds (const std::string &trigger) const |
HLTLevel1GTSeed modules for trigger path with name. | |
const std::vector< std::pair < bool, std::string > > & | hltL1GTSeeds (unsigned int trigger) const |
HLTLevel1GTSeed modules for trigger path with index i. | |
bool | init (const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed) |
const bool | inited () const |
initialised? | |
const std::string | moduleEDMType (const std::string &module) const |
C++ base class name of module. | |
unsigned int | moduleIndex (unsigned int trigger, const std::string &module) const |
slot position of module on trigger path (0 to size-1) | |
unsigned int | moduleIndex (const std::string &trigger, const std::string &module) const |
const std::string & | moduleLabel (unsigned int trigger, unsigned int module) const |
const std::string & | moduleLabel (const std::string &trigger, unsigned int module) const |
const std::vector< std::string > & | moduleLabels (unsigned int trigger) const |
label(s) of module(s) on a trigger path | |
const std::vector< std::string > & | moduleLabels (const std::string &trigger) const |
const edm::ParameterSet & | modulePSet (const std::string &module) const |
ParameterSet of module. | |
const std::string | moduleType (const std::string &module) const |
C++ class name of module. | |
const std::vector< std::string > & | prescaleLabels () const |
low-level data member access | |
int | prescaleSet (const edm::Event &iEvent, const edm::EventSetup &iSetup) const |
unsigned int | prescaleSize () const |
const std::map< std::string, std::vector< unsigned int > > & | prescaleTable () const |
unsigned int | prescaleValue (unsigned int set, const std::string &trigger) const |
HLT prescale value in specific prescale set for a specific trigger path. | |
unsigned int | prescaleValue (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) const |
combining the two methods above | |
std::pair< int, int > | prescaleValues (const edm::Event &iEvent, const edm::EventSetup &iSetup, const std::string &trigger) const |
Combined L1T (pair.first) and HLT (pair.second) prescales per HLT path. | |
const std::string & | processName () const |
Accessors (const methods) | |
const edm::ParameterSet & | processPSet () const |
ParameterSet of process. | |
const bool | saveTags (const std::string &module) const |
Is module an L3 filter (ie, tracked saveTags=true) | |
const std::vector< std::string > & | saveTagsModules (unsigned int trigger) const |
const std::vector< std::string > & | saveTagsModules (const std::string &trigger) const |
unsigned int | size (unsigned int trigger) const |
number of modules on a specific trigger path | |
unsigned int | size (const std::string &trigger) const |
unsigned int | size () const |
number of trigger paths in trigger table | |
const std::vector< std::string > & | streamContent (const std::string &stream) const |
names of datasets in stream with name | |
const std::vector< std::string > & | streamContent (unsigned int stream) const |
names of datasets in stream with index i | |
const std::vector< std::vector < std::string > > & | streamContents () const |
names of datasets for all streams | |
unsigned int | streamIndex (const std::string &stream) const |
index of stream with name | |
const std::string & | streamName (unsigned int stream) const |
name of stream with index i | |
const std::vector< std::string > & | streamNames () const |
const std::string & | tableName () const |
HLT ConfDB table name. | |
unsigned int | triggerIndex (const std::string &triggerName) const |
slot position of trigger path in trigger table (0 to size-1) | |
const std::string & | triggerName (unsigned int triggerIndex) const |
const std::vector< std::string > & | triggerNames () const |
names of trigger paths | |
Static Public Member Functions | |
static const std::vector < std::string > | matched (const std::vector< std::string > &inputs, const std::string &pattern) |
regexp processing | |
static const std::string | removeVersion (const std::string &trigger) |
static const std::vector < std::string > | restoreVersion (const std::vector< std::string > &inputs, const std::string &trigger) |
Private Member Functions | |
void | clear () |
void | getDataFrom (const edm::ParameterSetID &iID) |
void | init (const std::string &processName) |
void | init (const edm::ProcessHistory &iHistory, const std::string &processName) |
Private Attributes | |
bool | changed_ |
const HLTConfigData * | hltConfigData_ |
bool | inited_ |
boost::shared_ptr< L1GtUtils > | l1GtUtils_ |
std::string | processName_ |
data members |
This class provides access routines to get hold of the HLT Configuration
See header file for documentation
Definition at line 34 of file HLTConfigProvider.h.
HLTConfigProvider::HLTConfigProvider | ( | ) |
c'tor
Definition at line 33 of file HLTConfigProvider.cc.
: processName_(""), inited_(false), changed_(true), hltConfigData_(s_dummyHLTConfigData()), l1GtUtils_(new L1GtUtils()) { }
const bool HLTConfigProvider::changed | ( | ) | const [inline] |
changed?
Definition at line 63 of file HLTConfigProvider.h.
References changed_.
{ return changed_; }
void HLTConfigProvider::clear | ( | void | ) | [private] |
Definition at line 242 of file HLTConfigProvider.cc.
References changed_, hltConfigData_, inited_, l1GtUtils_, processName_, and s_dummyHLTConfigData().
Referenced by getDataFrom(), and init().
{ // clear all data members processName_ = ""; inited_ = false; changed_ = true; hltConfigData_ = s_dummyHLTConfigData(); *l1GtUtils_ = L1GtUtils(); return; }
const std::vector<std::string>& HLTConfigProvider::datasetContent | ( | unsigned int | dataset | ) | const [inline] |
names of trigger paths in dataset with index i
Definition at line 211 of file HLTConfigProvider.h.
References HLTConfigData::datasetContent(), and hltConfigData_.
Referenced by TrigResRateMon::beginRun(), FourVectorHLTOffline::beginRun(), FourVectorHLTOnline::beginRun(), and HLTScalers::beginRun().
{ return hltConfigData_->datasetContent(dataset); }
const std::vector<std::string>& HLTConfigProvider::datasetContent | ( | const std::string & | dataset | ) | const [inline] |
names of trigger paths in dataset with name
Definition at line 215 of file HLTConfigProvider.h.
References HLTConfigData::datasetContent(), and hltConfigData_.
{ return hltConfigData_->datasetContent(dataset); }
const std::vector<std::vector<std::string> >& HLTConfigProvider::datasetContents | ( | ) | const [inline] |
names of trigger paths for all datasets
Definition at line 207 of file HLTConfigProvider.h.
References HLTConfigData::datasetContents(), and hltConfigData_.
Referenced by HLTrigReport::reset().
{ return hltConfigData_->datasetContents(); }
unsigned int HLTConfigProvider::datasetIndex | ( | const std::string & | dataset | ) | const [inline] |
index of dataset with name
Definition at line 203 of file HLTConfigProvider.h.
References HLTConfigData::datasetIndex(), and hltConfigData_.
{ return hltConfigData_->datasetIndex(dataset); }
const std::string& HLTConfigProvider::datasetName | ( | unsigned int | dataset | ) | const [inline] |
name of dataset with index i
Definition at line 199 of file HLTConfigProvider.h.
References HLTConfigData::datasetName(), and hltConfigData_.
{ return hltConfigData_->datasetName(dataset); }
const std::vector<std::string>& HLTConfigProvider::datasetNames | ( | ) | const [inline] |
Datasets list of names of all datasets
Definition at line 195 of file HLTConfigProvider.h.
References HLTConfigData::datasetNames(), and hltConfigData_.
Referenced by FourVectorHLTOffline::beginRun(), FourVectorHLTOnline::beginRun(), and HLTrigReport::reset().
{ return hltConfigData_->datasetNames(); }
void HLTConfigProvider::dump | ( | const std::string & | what | ) | const [inline] |
Dumping config info to cout.
Definition at line 48 of file HLTConfigProvider.h.
References HLTConfigData::dump(), and hltConfigData_.
Referenced by HLTEventAnalyzerAOD::beginRun(), TriggerValidator::beginRun(), HLTEventAnalyzerRAW::beginRun(), and prescaleValues().
{ hltConfigData_->dump(what); }
void HLTConfigProvider::getDataFrom | ( | const edm::ParameterSetID & | iID | ) | [private] |
Definition at line 131 of file HLTConfigProvider.cc.
References changed_, clear(), edm::detail::ThreadSafeRegistry< KEY, T, E >::getMapped(), hltConfigData_, edm::ParameterSet::id(), inited_, edm::detail::ThreadSafeRegistry< KEY, T, E >::insertMapped(), edm::detail::ThreadSafeRegistry< KEY, T, E >::instance(), edm::Hash< I >::isValid(), processPSet(), and s_dummyHLTConfigData().
Referenced by init().
{ //is it in our registry? HLTConfigDataRegistry* reg = HLTConfigDataRegistry::instance(); const HLTConfigData* d = reg->getMapped(iID); if(0 != d) { changed_ = true; inited_ = true; hltConfigData_ = d; } else { const edm::ParameterSet* processPSet = 0; if ( 0 != (processPSet = edm::pset::Registry::instance()->getMapped(iID))) { if (not processPSet->id().isValid()) { clear(); edm::LogError("HLTConfigProvider") << "ProcessPSet found is empty!"; changed_ = true; inited_ = false; hltConfigData_ = s_dummyHLTConfigData(); return; } else { clear(); reg->insertMapped( HLTConfigData(processPSet)); changed_ = true; inited_ = true; hltConfigData_ = reg->getMapped(processPSet->id()); return; } } else { clear(); edm::LogError("HLTConfigProvider") << "ProcessPSet not found in regsistry!"; changed_ = true; inited_ = false; hltConfigData_ = s_dummyHLTConfigData(); return; } } return; }
const std::vector<std::pair<bool,std::string> >& HLTConfigProvider::hltL1GTSeeds | ( | const std::string & | trigger | ) | const [inline] |
HLTLevel1GTSeed modules for trigger path with name.
Definition at line 157 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::hltL1GTSeeds().
{ return hltConfigData_->hltL1GTSeeds(trigger); }
const std::vector<std::vector<std::pair<bool,std::string> > >& HLTConfigProvider::hltL1GTSeeds | ( | ) | const [inline] |
HLTLevel1GTSeed module HLTLevel1GTSeed modules for all trigger paths
Definition at line 153 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::hltL1GTSeeds().
Referenced by prescaleValues(), PrescaleWeightProvider::prescaleWeight(), and pat::PATTriggerProducer::produce().
{ return hltConfigData_->hltL1GTSeeds(); }
const std::vector<std::pair<bool,std::string> >& HLTConfigProvider::hltL1GTSeeds | ( | unsigned int | trigger | ) | const [inline] |
HLTLevel1GTSeed modules for trigger path with index i.
Definition at line 161 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::hltL1GTSeeds().
{ return hltConfigData_->hltL1GTSeeds(trigger); }
bool HLTConfigProvider::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
defer iSetup access to when actually needed: l1GtUtils_->retrieveL1EventSetup(iSetup);
Definition at line 42 of file HLTConfigProvider.cc.
References changed_, edm::RunBase::id(), inited_, edm::Run::processHistory(), processName(), and processName_.
Referenced by EgHLTOfflineSummaryClient::beginRun(), LumiCalculator::beginRun(), HLTMuonOfflineAnalyzer::beginRun(), pat::PATTriggerEventProducer::beginRun(), FourVectorHLTriggerOffline::beginRun(), HLTMonBTagIPSource::beginRun(), TrackerDpgAnalysis::beginRun(), pat::PATTriggerProducer::beginRun(), HeavyFlavorValidation::beginRun(), HLTMonBitSummary::beginRun(), HLTJetMETDQMSource::beginRun(), HLTMuonValidator::beginRun(), EwkMuLumiMonitorDQM::beginRun(), HLTInfo::beginRun(), TopElectronHLTOfflineSource::beginRun(), QcdLowPtDQM::beginRun(), EmDQMReco::beginRun(), HLTEventAnalyzerAOD::beginRun(), TrigResRateMon::beginRun(), HLTrigReport::beginRun(), EgHLTOfflineClient::beginRun(), FourVectorHLTOffline::beginRun(), CandidateTriggerObjectProducer::beginRun(), EwkMuDQM::beginRun(), TriggerValidator::beginRun(), JetMETHLTOfflineSource::beginRun(), BTagHLTOfflineSource::beginRun(), EgHLTOfflineSource::beginRun(), HLTScalers::beginRun(), FourVectorHLTOnline::beginRun(), HLTMonBTagMuSource::beginRun(), HLTEventAnalyzerRAW::beginRun(), QcdUeDQM::beginRun(), HLTOniaSource::checkHLTConfiguration(), MuScleFit::duringLoop(), init(), TriggerHelper::initRun(), PrescaleWeightProvider::initRun(), GenericTriggerEventFlag::initRun(), and DQMProvInfo::makeHLTKeyInfo().
{ using namespace std; using namespace edm; LogInfo("HLTConfigData") << "Called (R) with processName '" << processName << "' for " << iRun.id() << endl; init(iRun.processHistory(),processName); processName_=processName; changed=changed_; return inited_; }
void HLTConfigProvider::init | ( | const std::string & | processName | ) | [private] |
Definition at line 170 of file HLTConfigProvider.cc.
References edm::detail::ThreadSafeRegistry< KEY, T, E >::begin(), clear(), edm::detail::ThreadSafeRegistry< KEY, T, E >::end(), getDataFrom(), edm::detail::ThreadSafeRegistry< KEY, T, E >::getMapped(), edm::ParameterSet::getParameter(), hltConfigData_, i, HLTConfigData::id(), MultipleCompare::pset, s_dummyHLTConfigData(), and tableName().
{ using namespace std; using namespace edm; // Obtain ParameterSetID for requested process (with name // processName) from pset registry string pNames(""); string hNames(""); const ParameterSet* pset = 0; ParameterSetID psetID; unsigned int nPSets(0); const edm::pset::Registry * registry_(pset::Registry::instance()); const edm::pset::Registry::const_iterator rb(registry_->begin()); const edm::pset::Registry::const_iterator re(registry_->end()); for (edm::pset::Registry::const_iterator i = rb; i != re; ++i) { if (i->second.exists("@process_name")) { const std::string pName(i->second.getParameter<string>("@process_name")); pNames += pName+" "; if ( pName == processName ) { psetID = i->first; nPSets++; if ((hltConfigData_ != s_dummyHLTConfigData()) && (hltConfigData_->id()==psetID)) { hNames += tableName(); } else if ( 0 != (pset = registry_->getMapped(psetID))) { if (pset->exists("HLTConfigVersion")) { const ParameterSet& HLTPSet(pset->getParameterSet("HLTConfigVersion")); if (HLTPSet.exists("tableName")) { hNames += HLTPSet.getParameter<string>("tableName")+" "; } } } } } } LogVerbatim("HLTConfigProvider") << "Unordered list of all process names found: " << pNames << "." << endl; LogVerbatim("HLTConfigProvider") << "HLT TableName of each selected process: " << hNames << "." << endl; if (nPSets==0) { clear(); LogError("HLTConfigProvider") << " Process name '" << processName << "' not found in registry!" << endl; return; } if (psetID==ParameterSetID()) { clear(); LogError("HLTConfigProvider") << " Process name '" << processName << "' found but ParameterSetID invalid!" << endl; return; } if (nPSets>1) { clear(); LogError("HLTConfigProvider") << " Process name '" << processName << " found " << nPSets << " times in registry!" << endl; return; } getDataFrom(psetID); return; }
void HLTConfigProvider::init | ( | const edm::ProcessHistory & | iHistory, |
const std::string & | processName | ||
) | [private] |
Check uniqueness (uniqueness should [soon] be enforced by Fw)
Definition at line 65 of file HLTConfigProvider.cc.
References edm::ProcessHistory::begin(), changed_, clear(), edm::ProcessHistory::end(), edm::ParameterSet::exists(), edm::ProcessHistory::getConfigurationForProcess(), getDataFrom(), hltConfigData_, HLTConfigData::id(), init(), inited_, edm::detail::ThreadSafeRegistry< KEY, T, E >::instance(), n, processName(), processName_, processPSet(), and s_dummyHLTConfigData().
{ using namespace std; using namespace edm; const ProcessHistory::const_iterator hb(iHistory.begin()); const ProcessHistory::const_iterator he(iHistory.end()); ProcessConfiguration processConfiguration; const edm::ParameterSet* processPSet(0); processName_=processName; if (processName_=="*") { // auto-discovery of process name for (ProcessHistory::const_iterator hi=hb; hi!=he; ++hi) { if (iHistory.getConfigurationForProcess(hi->processName(),processConfiguration)) { processPSet = edm::pset::Registry::instance()->getMapped(processConfiguration.parameterSetID()); if ((processPSet!=0) && (processPSet->exists("hltTriggerSummaryAOD"))) { processName_=hi->processName(); } } } LogInfo("HLTConfigData") << "Auto-discovered processName: '" << processName_ << "'" << endl; } if (processName_=="*") { clear(); LogError("HLTConfigData") << "Auto-discovery of processName failed!" << endl; return; } unsigned int n(0); for (ProcessHistory::const_iterator hi=hb; hi!=he; ++hi) { if (hi->processName()==processName_) {n++;} } if (n>1) { clear(); LogError("HLTConfigProvider") << " ProcessName '"<< processName_ << " found " << n << " times in history!" << endl; return; } if (iHistory.getConfigurationForProcess(processName_,processConfiguration)) { if ((hltConfigData_ !=s_dummyHLTConfigData()) && (processConfiguration.parameterSetID() == hltConfigData_->id())) { changed_ = false; inited_ = true; return; } else { getDataFrom(processConfiguration.parameterSetID()); } } else { LogError("HLTConfigProvider") << "Falling back to processName-only init!"; clear(); init(processName_); if (!inited_) { LogError("HLTConfigProvider") << "ProcessName not found in history!"; } return; } }
const bool HLTConfigProvider::inited | ( | ) | const [inline] |
initialised?
Definition at line 59 of file HLTConfigProvider.h.
References inited_.
{ return inited_; }
const std::vector< std::string > HLTConfigProvider::matched | ( | const std::vector< std::string > & | inputs, |
const std::string & | pattern | ||
) | [static] |
regexp processing
Definition at line 335 of file HLTConfigProvider.cc.
References edm::glob2reg(), i, collect_tpl::input, and n.
Referenced by restoreVersion().
const std::string HLTConfigProvider::moduleEDMType | ( | const std::string & | module | ) | const [inline] |
C++ base class name of module.
Definition at line 131 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleEDMType().
Referenced by FourVectorHLTOffline::beginRun(), and FourVectorHLTOnline::beginRun().
{ return hltConfigData_->moduleEDMType(module); }
unsigned int HLTConfigProvider::moduleIndex | ( | unsigned int | trigger, |
const std::string & | module | ||
) | const [inline] |
slot position of module on trigger path (0 to size-1)
Definition at line 118 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleIndex().
Referenced by HLTMonBTagIPSource::beginRun(), HLTMonBitSummary::beginRun(), TrigResRateMon::beginRun(), FourVectorHLTOffline::beginRun(), FourVectorHLTOnline::beginRun(), HLTMonBTagMuSource::beginRun(), FourVectorHLTOnline::hasL1Passed(), and pat::PATTriggerProducer::produce().
{ return hltConfigData_->moduleIndex(trigger,module); }
unsigned int HLTConfigProvider::moduleIndex | ( | const std::string & | trigger, |
const std::string & | module | ||
) | const [inline] |
Definition at line 121 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleIndex().
{ return hltConfigData_->moduleIndex(trigger,module); }
const std::string& HLTConfigProvider::moduleLabel | ( | unsigned int | trigger, |
unsigned int | module | ||
) | const [inline] |
Definition at line 110 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleLabel().
Referenced by pat::PATTriggerProducer::produce().
{ return hltConfigData_->moduleLabel(trigger,module); }
const std::string& HLTConfigProvider::moduleLabel | ( | const std::string & | trigger, |
unsigned int | module | ||
) | const [inline] |
Definition at line 113 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleLabel().
{ return hltConfigData_->moduleLabel(trigger,module); }
const std::vector<std::string>& HLTConfigProvider::moduleLabels | ( | unsigned int | trigger | ) | const [inline] |
label(s) of module(s) on a trigger path
Definition at line 98 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleLabels().
Referenced by HLTJetMETDQMSource::analyze(), EwkMuLumiMonitorDQM::analyze(), FourVectorHLTOnline::analyze(), FourVectorHLTriggerOffline::analyze(), FourVectorHLTOffline::analyze(), HLTEventAnalyzerAOD::analyzeTrigger(), HLTEventAnalyzerRAW::analyzeTrigger(), LumiCalculator::beginRun(), FourVectorHLTriggerOffline::beginRun(), HLTJetMETDQMSource::beginRun(), HLTMonBitSummary::beginRun(), HeavyFlavorValidation::beginRun(), TrigResRateMon::beginRun(), FourVectorHLTOffline::beginRun(), JetMETHLTOfflineSource::beginRun(), BTagHLTOfflineSource::beginRun(), FourVectorHLTOnline::beginRun(), HLTOniaSource::checkHLTConfiguration(), egHLT::trigTools::getActiveFilters(), FourVectorHLTOffline::getL1ConditionModuleName(), FourVectorHLTOnline::getL1ConditionModuleName(), egHLT::trigTools::getL1SeedFilterOfPath(), HLTMuonValidator::initializeHists(), CandidateTriggerObjectProducer::produce(), HLTrigReport::reset(), and egHLT::trigTools::translateFiltersToPathNames().
{ return hltConfigData_->moduleLabels(trigger); }
vector< string > HLTMuonOfflineAnalyzer::moduleLabels | ( | const std::string & | trigger | ) | const [inline] |
Definition at line 101 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleLabels().
{ return hltConfigData_->moduleLabels(trigger); }
const edm::ParameterSet& HLTConfigProvider::modulePSet | ( | const std::string & | module | ) | const [inline] |
ParameterSet of module.
Definition at line 141 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::modulePSet().
Referenced by LumiCalculator::beginRun(), FourVectorHLTriggerOffline::beginRun(), and HLTJetMETDQMSource::beginRun().
{ return hltConfigData_->modulePSet(module); }
const std::string HLTConfigProvider::moduleType | ( | const std::string & | module | ) | const [inline] |
C++ class name of module.
Definition at line 126 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::moduleType().
Referenced by HLTEventAnalyzerAOD::analyzeTrigger(), HLTEventAnalyzerRAW::analyzeTrigger(), LumiCalculator::beginRun(), FourVectorHLTriggerOffline::beginRun(), HLTMonBitSummary::beginRun(), HLTJetMETDQMSource::beginRun(), TrigResRateMon::beginRun(), FourVectorHLTOffline::beginRun(), BTagHLTOfflineSource::beginRun(), JetMETHLTOfflineSource::beginRun(), FourVectorHLTOnline::beginRun(), FourVectorHLTOffline::getL1ConditionModuleName(), FourVectorHLTOnline::getL1ConditionModuleName(), pat::PATTriggerProducer::produce(), CandidateTriggerObjectProducer::produce(), and HLTrigReport::reset().
{ return hltConfigData_->moduleType(module); }
const std::vector<std::string>& HLTConfigProvider::prescaleLabels | ( | ) | const [inline] |
low-level data member access
Definition at line 244 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::prescaleLabels().
Referenced by pat::PATTriggerProducer::produce().
{ return hltConfigData_->prescaleLabels(); }
int HLTConfigProvider::prescaleSet | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup | ||
) | const |
HLT prescale values via (L1) EventSetup current (default) prescale set index - to be taken from L1GtUtil via Event
error - notify user!
Definition at line 256 of file HLTConfigProvider.cc.
References L1GtUtils::AlgorithmTrigger, l1GtUtils_, and L1GtUtils::TechnicalTrigger.
Referenced by prescaleValue(), prescaleValues(), and pat::PATTriggerProducer::produce().
{ // return hltPrescaleTable_.set(); l1GtUtils_->retrieveL1EventSetup(iSetup); int errorTech(0); const int psfsiTech(l1GtUtils_->prescaleFactorSetIndex(iEvent,L1GtUtils::TechnicalTrigger,errorTech)); int errorPhys(0); const int psfsiPhys(l1GtUtils_->prescaleFactorSetIndex(iEvent,L1GtUtils::AlgorithmTrigger,errorPhys)); assert(psfsiTech==psfsiPhys); if ( (errorTech==0) && (errorPhys==0) && (psfsiTech>=0) && (psfsiPhys>=0) && (psfsiTech==psfsiPhys) ) { return psfsiPhys; } else { edm::LogError("HLTConfigData") << " Error in determining HLT prescale set index from L1 data using L1GtUtils: " << " Tech/Phys error = " << errorTech << "/" << errorPhys << " Tech/Phys psfsi = " << psfsiTech << "/" << psfsiPhys; return -1; } }
unsigned int HLTConfigProvider::prescaleSize | ( | ) | const [inline] |
HLT prescale info Number of HLT prescale sets
Definition at line 222 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::prescaleSize().
Referenced by EwkMuLumiMonitorDQM::analyze(), EwkMuDQM::analyze(), and pat::PATTriggerProducer::produce().
{ return hltConfigData_->prescaleSize(); }
const std::map<std::string,std::vector<unsigned int> >& HLTConfigProvider::prescaleTable | ( | ) | const [inline] |
Definition at line 247 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::prescaleTable().
Referenced by pat::PATTriggerProducer::produce().
{ return hltConfigData_->prescaleTable(); }
unsigned int HLTConfigProvider::prescaleValue | ( | unsigned int | set, |
const std::string & | trigger | ||
) | const [inline] |
HLT prescale value in specific prescale set for a specific trigger path.
Definition at line 226 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::prescaleValue().
Referenced by EwkMuLumiMonitorDQM::analyze(), EwkMuDQM::analyze(), HLTInfo::analyze(), prescaleValue(), prescaleValues(), PrescaleWeightProvider::prescaleWeight(), and pat::PATTriggerProducer::produce().
{ return hltConfigData_->prescaleValue(set,trigger); }
unsigned int HLTConfigProvider::prescaleValue | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup, | ||
const std::string & | trigger | ||
) | const |
combining the two methods above
Definition at line 277 of file HLTConfigProvider.cc.
References prescaleSet(), and prescaleValue().
{ const int set(prescaleSet(iEvent,iSetup)); if (set<0) { return 1; } else { return prescaleValue(static_cast<unsigned int>(set),trigger); } }
std::pair< int, int > HLTConfigProvider::prescaleValues | ( | const edm::Event & | iEvent, |
const edm::EventSetup & | iSetup, | ||
const std::string & | trigger | ||
) | const |
Combined L1T (pair.first) and HLT (pair.second) prescales per HLT path.
error - can't handle properly multiple L1GTSeed modules
Definition at line 286 of file HLTConfigProvider.cc.
References asciidump::at, dump(), hltL1GTSeeds(), i, l1GtUtils_, prescaleSet(), prescaleValue(), query::result, edm::second(), and size().
Referenced by HLTEventAnalyzerAOD::analyzeTrigger(), and CandidateTriggerObjectProducer::produce().
{ // start with setting both L1T and HLT prescale values to 0 std::pair<int,int> result(std::pair<int,int>(0,0)); // get HLT prescale (possible if HLT prescale set index is correctly found) const int set(prescaleSet(iEvent,iSetup)); if (set<0) { result.second = -1; } else { result.second = static_cast<int>(prescaleValue(static_cast<unsigned int>(set),trigger)); } // get L1T prescale - works only for those hlt trigger paths with // exactly one L1GT seed module which has exactly one L1T name as seed const unsigned int nL1GTSeedModules(hltL1GTSeeds(trigger).size()); if (nL1GTSeedModules==0) { // no L1 seed module on path hence no L1 seed hence formally no L1 prescale result.first=1; } else if (nL1GTSeedModules==1) { l1GtUtils_->retrieveL1EventSetup(iSetup); const std::string l1tname(hltL1GTSeeds(trigger).at(0).second); int l1error(0); result.first = l1GtUtils_->prescaleFactor(iEvent,l1tname,l1error); if (l1error!=0) { edm::LogError("HLTConfigData") << " Error in determining L1T prescale for HLT path: '" << trigger << "' with L1T seed: '" << l1tname << "' using L1GtUtils: error code: " << l1error << ". (Note: only a single L1T name, not a bit number, is allowed as seed for a proper determination of the L1T prescale!)"; result.first = -1; } } else { std::string dump("'"+hltL1GTSeeds(trigger).at(0).second+"'"); for (unsigned int i=1; i!=nL1GTSeedModules; ++i) { dump += " * '"+hltL1GTSeeds(trigger).at(i).second+"'"; } edm::LogError("HLTConfigData") << " Error in determining L1T prescale for HLT path: '" << trigger << "' has multiple L1GTSeed modules, " << nL1GTSeedModules << ", with L1 seeds: " << dump << ". (Note: at most one L1GTSeed module is allowed for a proper determination of the L1T prescale!)"; result.first = -1; } return result; }
const std::string& HLTConfigProvider::processName | ( | ) | const [inline] |
Accessors (const methods)
process name
Definition at line 55 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::processName().
Referenced by init().
{ return hltConfigData_->processName(); }
const edm::ParameterSet& HLTConfigProvider::processPSet | ( | ) | const [inline] |
ParameterSet of process.
Definition at line 136 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::processPSet().
Referenced by getDataFrom(), and init().
{ return hltConfigData_->processPSet(); }
const std::string HLTConfigProvider::removeVersion | ( | const std::string & | trigger | ) | [static] |
Definition at line 346 of file HLTConfigProvider.cc.
{ const boost::regex regexp("_v[0-9]+$"); return boost::regex_replace(trigger,regexp,""); }
const std::vector< std::string > HLTConfigProvider::restoreVersion | ( | const std::vector< std::string > & | inputs, |
const std::string & | trigger | ||
) | [static] |
Definition at line 351 of file HLTConfigProvider.cc.
References matched().
{ return matched(inputs,trigger+"_v[0-9]+$"); }
const bool HLTConfigProvider::saveTags | ( | const std::string & | module | ) | const [inline] |
Is module an L3 filter (ie, tracked saveTags=true)
Definition at line 146 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::saveTags().
Referenced by pat::PATTriggerProducer::produce().
{ return hltConfigData_->saveTags(module); }
const std::vector<std::string>& HLTConfigProvider::saveTagsModules | ( | const std::string & | trigger | ) | const [inline] |
Definition at line 107 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::saveTagsModules().
{ return hltConfigData_->saveTagsModules(trigger); }
const std::vector<std::string>& HLTConfigProvider::saveTagsModules | ( | unsigned int | trigger | ) | const [inline] |
Definition at line 104 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::saveTagsModules().
Referenced by pat::PATTriggerProducer::produce().
{ return hltConfigData_->saveTagsModules(trigger); }
unsigned int HLTConfigProvider::size | ( | const std::string & | trigger | ) | const [inline] |
Definition at line 75 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::size().
{ return hltConfigData_->size(trigger); }
unsigned int HLTConfigProvider::size | ( | void | ) | const [inline] |
number of trigger paths in trigger table
Definition at line 68 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::size().
Referenced by TriggerHelper::acceptHltLogicalExpression(), GenericTriggerEventFlag::acceptHltLogicalExpression(), HLTEventAnalyzerRAW::analyze(), HLTEventAnalyzerAOD::analyze(), HLTEventAnalyzerAOD::analyzeTrigger(), HLTEventAnalyzerRAW::analyzeTrigger(), LumiCalculator::beginRun(), pat::PATTriggerEventProducer::beginRun(), FourVectorHLTriggerOffline::beginRun(), pat::PATTriggerProducer::beginRun(), HLTMonBTagIPSource::beginRun(), HLTJetMETDQMSource::beginRun(), QcdLowPtDQM::beginRun(), TrigResRateMon::beginRun(), HLTEventAnalyzerAOD::beginRun(), FourVectorHLTOffline::beginRun(), JetMETHLTOfflineSource::beginRun(), BTagHLTOfflineSource::beginRun(), TriggerValidator::beginRun(), FourVectorHLTOnline::beginRun(), HLTMonBTagMuSource::beginRun(), QcdUeDQM::beginRun(), HLTEventAnalyzerRAW::beginRun(), egHLT::trigTools::getActiveFilters(), TriggerHelper::initRun(), PrescaleWeightProvider::initRun(), GenericTriggerEventFlag::initRun(), DQMProvInfo::makeHLTKeyInfo(), prescaleValues(), PrescaleWeightProvider::prescaleWeight(), pat::PATTriggerProducer::produce(), CandidateTriggerObjectProducer::produce(), egHLT::trigTools::translateFiltersToPathNames(), BTagHLTOfflineSource::validPathHLT(), and JetMETHLTOfflineSource::validPathHLT().
{ return hltConfigData_->size(); }
unsigned int HLTConfigProvider::size | ( | unsigned int | trigger | ) | const [inline] |
number of modules on a specific trigger path
Definition at line 72 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::size().
{ return hltConfigData_->size(trigger); }
const std::vector<std::string>& HLTConfigProvider::streamContent | ( | const std::string & | stream | ) | const [inline] |
names of datasets in stream with name
Definition at line 188 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::streamContent().
{ return hltConfigData_->streamContent(stream); }
const std::vector<std::string>& HLTConfigProvider::streamContent | ( | unsigned int | stream | ) | const [inline] |
names of datasets in stream with index i
Definition at line 184 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::streamContent().
Referenced by TrigResRateMon::beginRun(), HLTScalers::beginRun(), TrigResRateMon::fillHltMatrix(), and TrigResRateMon::normalizeHLTMatrix().
{ return hltConfigData_->streamContent(stream); }
const std::vector<std::vector<std::string> >& HLTConfigProvider::streamContents | ( | ) | const [inline] |
names of datasets for all streams
Definition at line 180 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::streamContents().
Referenced by HLTrigReport::reset().
{ return hltConfigData_->streamContents(); }
unsigned int HLTConfigProvider::streamIndex | ( | const std::string & | stream | ) | const [inline] |
index of stream with name
Definition at line 176 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::streamIndex().
Referenced by HLTScalers::beginRun().
{ return hltConfigData_->streamIndex(stream); }
const std::string& HLTConfigProvider::streamName | ( | unsigned int | stream | ) | const [inline] |
name of stream with index i
Definition at line 172 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::streamName().
{ return hltConfigData_->streamName(stream); }
const std::vector<std::string>& HLTConfigProvider::streamNames | ( | ) | const [inline] |
Streams list of names of all streams
Definition at line 168 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::streamNames().
Referenced by HLTScalers::beginRun(), and HLTrigReport::reset().
{ return hltConfigData_->streamNames(); }
const std::string& HLTConfigProvider::tableName | ( | ) | const [inline] |
HLT ConfDB table name.
Definition at line 80 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::tableName().
Referenced by LumiCalculator::beginRun(), init(), DQMProvInfo::makeHLTKeyInfo(), and pat::PATTriggerEventProducer::produce().
{ return hltConfigData_->tableName(); }
unsigned int HLTConfigProvider::triggerIndex | ( | const std::string & | triggerName | ) | const [inline] |
slot position of trigger path in trigger table (0 to size-1)
Definition at line 93 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::triggerIndex().
Referenced by TriggerHelper::acceptHltLogicalExpression(), GenericTriggerEventFlag::acceptHltLogicalExpression(), EmDQMReco::analyze(), TopElectronHLTOfflineSource::analyze(), EwkMuLumiMonitorDQM::analyze(), HLTEventAnalyzerAOD::analyzeTrigger(), HLTEventAnalyzerRAW::analyzeTrigger(), HLTMonBTagIPSource::beginRun(), HLTEventAnalyzerAOD::beginRun(), TriggerValidator::beginRun(), HLTMonBTagMuSource::beginRun(), HLTEventAnalyzerRAW::beginRun(), MuScleFit::duringLoop(), PrescaleWeightProvider::prescaleWeight(), pat::PATTriggerProducer::produce(), CandidateTriggerObjectProducer::produce(), and HLTrigReport::reset().
{ return hltConfigData_->triggerIndex(triggerName); }
const std::string& HLTConfigProvider::triggerName | ( | unsigned int | triggerIndex | ) | const [inline] |
Definition at line 88 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::triggerName().
Referenced by HLTEventAnalyzerRAW::analyze(), HLTEventAnalyzerAOD::analyze(), LumiCalculator::beginRun(), FourVectorHLTriggerOffline::beginRun(), HLTJetMETDQMSource::beginRun(), QcdLowPtDQM::beginRun(), TrigResRateMon::beginRun(), FourVectorHLTOffline::beginRun(), BTagHLTOfflineSource::beginRun(), JetMETHLTOfflineSource::beginRun(), FourVectorHLTOnline::beginRun(), QcdUeDQM::beginRun(), egHLT::trigTools::getActiveFilters(), pat::PATTriggerProducer::produce(), egHLT::trigTools::translateFiltersToPathNames(), BTagHLTOfflineSource::validPathHLT(), and JetMETHLTOfflineSource::validPathHLT().
{ return hltConfigData_->triggerName(triggerIndex); }
const std::vector<std::string>& HLTConfigProvider::triggerNames | ( | ) | const [inline] |
names of trigger paths
Definition at line 85 of file HLTConfigProvider.h.
References hltConfigData_, and HLTConfigData::triggerNames().
Referenced by EwkMuLumiMonitorDQM::analyze(), HLTMuonOfflineAnalyzer::beginRun(), TrackerDpgAnalysis::beginRun(), HeavyFlavorValidation::beginRun(), HLTMuonValidator::beginRun(), HLTOniaSource::checkHLTConfiguration(), HLTMonBitSummary::configSelector(), HLTBitComputer::HLTBitComputer(), CandidateTriggerObjectProducer::produce(), and HLTrigReport::reset().
{ return hltConfigData_->triggerNames(); }
bool HLTConfigProvider::changed_ [private] |
Definition at line 266 of file HLTConfigProvider.h.
Referenced by changed(), clear(), getDataFrom(), and init().
const HLTConfigData* HLTConfigProvider::hltConfigData_ [private] |
Definition at line 267 of file HLTConfigProvider.h.
Referenced by clear(), datasetContent(), datasetContents(), datasetIndex(), datasetName(), datasetNames(), dump(), getDataFrom(), hltL1GTSeeds(), init(), moduleEDMType(), moduleIndex(), moduleLabel(), moduleLabels(), modulePSet(), moduleType(), prescaleLabels(), prescaleSize(), prescaleTable(), prescaleValue(), processName(), processPSet(), saveTags(), saveTagsModules(), size(), streamContent(), streamContents(), streamIndex(), streamName(), streamNames(), tableName(), triggerIndex(), triggerName(), and triggerNames().
bool HLTConfigProvider::inited_ [private] |
Definition at line 265 of file HLTConfigProvider.h.
Referenced by clear(), getDataFrom(), init(), and inited().
boost::shared_ptr<L1GtUtils> HLTConfigProvider::l1GtUtils_ [private] |
Definition at line 268 of file HLTConfigProvider.h.
Referenced by clear(), prescaleSet(), and prescaleValues().
std::string HLTConfigProvider::processName_ [private] |