52 hltPrescaleTableValuesDouble_{},
53 hltPrescaleTableValuesFractional_{} {
54 if (processPSet_->id().isValid()) {
60 : processPSet_(iPSet),
79 hltPrescaleTableValuesDouble_{},
80 hltPrescaleTableValuesFractional_{} {
81 if (processPSet_->id().isValid()) {
110 CMS_SA_ALLOW if (HLTPSet.existsAs<
string>(
"tableName",
true)) {
111 tableName_ = HLTPSet.getParameter<
string>(
"tableName");
118 CMS_SA_ALLOW if (HLTPSet.existsAs<vector<string>>(
"@trigger_paths",
true)) {
119 triggerNames_ = HLTPSet.getParameter<vector<string>>(
"@trigger_paths");
124 const unsigned int n(
size());
126 for (
unsigned int i = 0;
i !=
n; ++
i) {
134 for (
unsigned int i = 0;
i !=
n; ++
i) {
137 const unsigned int m(
modules.size());
139 for (
unsigned int j = 0;
j !=
m; ++
j) {
149 for (
unsigned int i = 0;
i !=
n; ++
i) {
152 const unsigned int m(
size(
i));
153 for (
unsigned int j = 0;
j !=
m; ++
j) {
160 for (
unsigned int i = 0;
i !=
n; ++
i) {
162 const unsigned int m(
size(
i));
163 for (
unsigned int j = 0;
j !=
m; ++
j) {
172 const bool l1Tech(
pset.getParameter<
bool>(
"L1TechTriggerSeeding"));
173 const string l1Seed(
pset.getParameter<
string>(
"L1SeedsLogicalExpression"));
182 for (
unsigned int i = 0;
i !=
n; ++
i) {
184 const unsigned int m(
size(
i));
185 for (
unsigned int j = 0;
j !=
m; ++
j) {
196 if (l1Gtag !=
"hltGtStage2ObjectMap") {
197 const string l1Seed(
pset.getParameter<
string>(
"L1SeedsLogicalExpression"));
212 for (
unsigned int i = 0;
i !=
n; ++
i) {
226 for (
unsigned int i = 0;
i !=
n; ++
i) {
236 string prescaleName(
"");
237 const string preS(
"PrescaleService");
238 const string preT(
"PrescaleTable");
243 if (prescaleName.empty()) {
247 string defaultLabel(
"default");
248 CMS_SA_ALLOW if (iPS.existsAs<
string>(
"lvl1DefaultLabel",
true)) {
249 defaultLabel = iPS.getParameter<
string>(
"lvl1DefaultLabel");
252 CMS_SA_ALLOW if (iPS.existsAs<vector<string>>(
"lvl1Labels",
true)) {
253 labels = iPS.getParameter<vector<string>>(
"lvl1Labels");
256 const unsigned int n(
labels.size());
257 for (
unsigned int i = 0;
i !=
n; ++
i) {
261 map<string, vector<unsigned int>>
table;
262 CMS_SA_ALLOW if (iPS.existsAs<vector<ParameterSet>>(
"prescaleTable",
true)) {
263 const vector<ParameterSet>& vpTable(iPS.getParameterSetVector(
"prescaleTable"));
264 const unsigned int m(vpTable.size());
265 for (
unsigned int i = 0;
i !=
m; ++
i) {
267 vpTable[
i].getParameter<std::vector<unsigned int>>(
"prescales");
287 unsigned int stage1(0),
stage2(0);
298 if ((stage1 +
stage2) == 0) {
301 }
else if ((stage1 *
stage2) != 0) {
304 }
else if (stage1 > 0) {
312 LogVerbatim(
"HLTConfigData") <<
"HLTConfigData: ProcessPSet with name/GT/table/l1tType: '" <<
processName_ <<
"' '" 322 if (what ==
"ProcessPSet") {
323 cout <<
"HLTConfigData::dump: ProcessPSet = " << endl << *
processPSet_ << endl;
324 }
else if (what ==
"ProcessName") {
326 }
else if (what ==
"GlobalTag") {
327 cout <<
"HLTConfigData::dump: GlobalTag = " <<
globalTag_ << endl;
328 }
else if (what ==
"TableName") {
329 cout <<
"HLTConfigData::dump: TableName = " <<
tableName_ << endl;
330 }
else if (what ==
"Triggers") {
331 const unsigned int n(
size());
332 cout <<
"HLTConfigData::dump: Triggers: " <<
n << endl;
333 for (
unsigned int i = 0;
i !=
n; ++
i) {
336 }
else if (what ==
"TriggerSeeds") {
337 const unsigned int n(
size());
338 cout <<
"HLTConfigData::dump: TriggerSeeds: " <<
n << endl;
339 for (
unsigned int i = 0;
i !=
n; ++
i) {
344 for (
unsigned int j1 = 0; j1 != m1; ++j1) {
351 for (
unsigned int j2 = 0; j2 !=
m2; ++j2) {
357 }
else if (what ==
"Modules") {
358 const unsigned int n(
size());
359 cout <<
"HLTConfigData::dump Triggers and Modules: " <<
n << endl;
360 for (
unsigned int i = 0;
i !=
n; ++
i) {
361 const unsigned int m(
size(
i));
363 cout <<
" - Modules: ";
364 unsigned int nHLTPrescalers(0);
365 unsigned int nHLTLevel1GTSeed(0);
366 unsigned int nHLTL1TSeed(0);
367 for (
unsigned int j = 0;
j !=
m; ++
j) {
373 if (
type ==
"HLTPrescaler")
375 if (
type ==
"HLTLevel1GTSeed")
377 if (
type ==
"HLTL1TSeed")
381 cout <<
" - Number of HLTPrescaler/HLTLevel1GTSeed/HLTL1TSeed modules: " << nHLTPrescalers <<
"/" 382 << nHLTLevel1GTSeed <<
"/" << nHLTL1TSeed << endl;
384 }
else if (what ==
"StreamNames") {
386 cout <<
"HLTConfigData::dump: StreamNames: " <<
n << endl;
387 for (
unsigned int i = 0;
i !=
n; ++
i) {
390 }
else if (what ==
"Streams") {
392 cout <<
"HLTConfigData::dump: Streams: " <<
n << endl;
393 for (
unsigned int i = 0;
i !=
n; ++
i) {
396 for (
unsigned int j = 0;
j !=
m; ++
j) {
400 }
else if (what ==
"DatasetNames") {
402 cout <<
"HLTConfigData::dump: DatasetNames: " <<
n << endl;
403 for (
unsigned int i = 0;
i !=
n; ++
i) {
406 }
else if (what ==
"Datasets") {
408 cout <<
"HLTConfigData::dump: Datasets: " <<
n << endl;
409 for (
unsigned int i = 0;
i !=
n; ++
i) {
412 for (
unsigned int j = 0;
j !=
m; ++
j) {
416 }
else if (what ==
"PrescaleTable") {
418 cout <<
"HLTConfigData::dump: PrescaleTable: # of sets : " <<
n << endl;
420 for (
unsigned int i = 0;
i !=
n; ++
i) {
426 cout <<
"HLTConfigData::dump: PrescaleTable: # of paths: " <<
table.size() << endl;
428 for (
unsigned int i = 0;
i !=
n; ++
i) {
434 cout <<
"HLTConfigData::dump: Unkown dump request: " << what << endl;
455 return index->second;
485 return index->second;
511 return found->second;
528 return found->second;
533 CMS_SA_ALLOW if (
pset.existsAs<
bool>(
"saveTags",
true)) {
return pset.getParameter<
bool>(
"saveTags"); }
573 return index->second;
597 return index->second;
Log< level::Info, true > LogVerbatim
const std::string & datasetName(unsigned int dataset) const
name of dataset with index i
const std::vector< std::string > & datasetContent(unsigned int dataset) const
names of trigger paths in dataset with index i
const std::vector< std::string > & labels() const
T getParameter(std::string const &) const
const std::string & streamName(unsigned int stream) const
name of stream with index i
std::map< std::string, unsigned int > triggerIndex_
void dump(const std::string &what) const
Dumping config info to cout.
const std::string & processName() const
Accessors (const methods)
const std::vector< std::string > & streamNames() const
Streams.
edm::ParameterSetID id() const
technical: id() function needed for use with ThreadSafeRegistry
std::map< std::string, std::vector< T > > const & prescaleTable() const
map of HLT prescales by trigger-path name (key=path, value=prescales)
bool exists(std::string const ¶meterName) const
checks if a parameter exists
The single EDProduct containing the HLT Prescale Table.
ParameterSet const & getParameterSet(std::string const &) const
const ModuleInfo & moduleInfoFor(const std::string &iModule) const
std::vector< std::string > datasetNames_
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
bool existsAs(std::string const ¶meterName, bool trackiness=true) const
checks if a parameter exists as a given type
auto vector_transform(std::vector< InputType > const &input, Function predicate) -> std::vector< typename std::remove_cv< typename std::remove_reference< decltype(predicate(input.front()))>::type >::type >
uint32_t T const *__restrict__ uint32_t const *__restrict__ int32_t int Histo::index_type cudaStream_t stream
unsigned int moduleIndex(unsigned int trigger, const std::string &module) const
slot position of module on trigger path (0 - size-1)
const std::vector< std::string > & saveTagsModules(unsigned int trigger) const
std::vector< std::vector< std::string > > saveTagsModules_
const std::vector< std::string > & moduleLabels(unsigned int trigger) const
label(s) of module(s) on a trigger path
std::string canonicalModuleName(const std::string &module) const
const edm::ParameterSet & modulePSet(const std::string &module) const
ParameterSet of module.
const std::string & tableName() const
HLT ConfDB table name.
std::vector< std::map< std::string, unsigned int > > moduleIndex_
boost::rational< int > FractionalPrescale
ParameterSetID id() const
std::vector< std::string > configurationToModuleBitPosition(std::vector< std::string >)
std::vector< std::vector< std::string > > streamContents_
std::vector< std::string > triggerNames_
const std::map< std::string, std::vector< unsigned int > > & table() const
std::vector< std::vector< std::string > > datasetContents_
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
const std::vector< std::vector< std::string > > & datasetContents() const
names of trigger paths for all datasets
trigger::HLTPrescaleTable hltPrescaleTable_
std::vector< std::vector< std::string > > moduleLabels_
static const edm::ParameterSet initializeDummyPSet()
std::map< std::string, unsigned int > streamIndex_
key
prepare the HTCondor submission files and eventually submit them
unsigned int streamIndex(const std::string &stream) const
index of stream with name
const std::vector< std::string > & prescaleLabels() const
labels of HLT prescale columns
void extract()
extract information into data members - called by init() methods
const std::vector< std::string > & datasetNames() const
Datasets.
std::vector< std::vector< std::string > > hltL1TSeeds_
std::map< std::string, unsigned int > datasetIndex_
int extract(std::vector< int > *output, const std::string &dati)
const std::string & moduleEDMType(const std::string &module) const
C++ base class name of module.
std::map< std::string, std::vector< FractionalPrescale > > hltPrescaleTableValuesFractional_
const std::vector< std::string > & triggerNames() const
names of trigger paths
unsigned int size() const
consistency condition: all vectors must have the same length
const edm::ParameterSet * processPSet_
const std::string & moduleType(const std::string &module) const
C++ class name of module.
std::map< std::string, std::vector< double > > hltPrescaleTableValuesDouble_
std::vector< std::vector< std::pair< bool, std::string > > > hltL1GTSeeds_
unsigned int l1tType() const
L1T type (0=unknown, 1=legacy/stage-1 or 2=stage-2)
const std::string & globalTag() const
GlobalTag.globaltag.
edm::ParameterSet const * pset_
bool saveTags(const std::string &module) const
Is module an L3 filter (ie, tracked saveTags=true)
unsigned int size() const
number of trigger paths in trigger table
unsigned int prescaleSize() const
const std::vector< std::vector< std::string > > & hltL1TSeeds() const
oneapi::tbb::concurrent_unordered_map< std::string, ModuleInfo > modulesInfo_
std::vector< std::string > streamNames_
const std::vector< std::vector< std::pair< bool, std::string > > > & hltL1GTSeeds() const
unsigned int triggerIndex(const std::string &triggerName) const
slot position of trigger path in trigger table (0 - size-1)
const edm::ParameterSet & processPSet() const
ParameterSet of process.
static const edm::ParameterSet * s_dummyPSet()
unsigned int datasetIndex(const std::string &dataset) const
index of dataset with name
const std::string & moduleLabel(unsigned int trigger, unsigned int module) const
const std::string & triggerName(unsigned int triggerIndex) const