CMS 3D CMS Logo

HLTConfigProvider.h
Go to the documentation of this file.
1 #ifndef HLTcore_HLTConfigProvider_h
2 #define HLTcore_HLTConfigProvider_h
3 
17 
20 
21 #include <map>
22 #include <string>
23 #include <vector>
24 
25 //
26 // class declaration
27 //
28 
30 private:
31 public:
35  // ~HLTConfigProvider();
36 
37 public:
41  bool init(const edm::Run& iRun, const edm::EventSetup& iSetup, const std::string& processName, bool& changed);
42 
44  void dump(const std::string& what) const { hltConfigData_->dump(what); }
45 
47 
49  bool inited() const { return inited_; }
51  bool changed() const { return changed_; }
52 
54  const std::string& processName() const { return hltConfigData_->processName(); }
55 
57  const std::string& globalTag() const { return hltConfigData_->globalTag(); }
58 
60  const std::string& tableName() const { return hltConfigData_->tableName(); }
61 
63  unsigned int size() const { return hltConfigData_->size(); }
65  unsigned int size(unsigned int trigger) const { return hltConfigData_->size(trigger); }
66  unsigned int size(const std::string& trigger) const { return hltConfigData_->size(trigger); }
67 
69  const std::vector<std::string>& triggerNames() const { return hltConfigData_->triggerNames(); }
71 
74 
76  const std::vector<std::string>& moduleLabels(unsigned int trigger) const {
78  }
79  const std::vector<std::string>& moduleLabels(const std::string& trigger) const {
81  }
82  const std::vector<std::string>& saveTagsModules(unsigned int trigger) const {
84  }
85  const std::vector<std::string>& saveTagsModules(const std::string& trigger) const {
87  }
88  const std::string& moduleLabel(unsigned int trigger, unsigned int module) const {
89  return hltConfigData_->moduleLabel(trigger, module);
90  }
91  const std::string& moduleLabel(const std::string& trigger, unsigned int module) const {
92  return hltConfigData_->moduleLabel(trigger, module);
93  }
94 
96  unsigned int moduleIndex(unsigned int trigger, const std::string& module) const {
97  return hltConfigData_->moduleIndex(trigger, module);
98  }
99  unsigned int moduleIndex(const std::string& trigger, const std::string& module) const {
100  return hltConfigData_->moduleIndex(trigger, module);
101  }
102 
104  const std::string moduleType(const std::string& module) const { return hltConfigData_->moduleType(module); }
105 
107  const std::string moduleEDMType(const std::string& module) const { return hltConfigData_->moduleEDMType(module); }
108 
111 
113  const edm::ParameterSet& modulePSet(const std::string& module) const { return hltConfigData_->modulePSet(module); }
114 
116  bool saveTags(const std::string& module) const { return hltConfigData_->saveTags(module); }
117 
119  unsigned int l1tType() const { return hltConfigData_->l1tType(); }
120 
123  const std::vector<std::vector<std::pair<bool, std::string> > >& hltL1GTSeeds() const {
124  return hltConfigData_->hltL1GTSeeds();
125  }
127  const std::vector<std::pair<bool, std::string> >& hltL1GTSeeds(const std::string& trigger) const {
129  }
131  const std::vector<std::pair<bool, std::string> >& hltL1GTSeeds(unsigned int trigger) const {
133  }
134 
137  const std::vector<std::vector<std::string> >& hltL1TSeeds() const { return hltConfigData_->hltL1TSeeds(); }
139  const std::vector<std::string>& hltL1TSeeds(const std::string& trigger) const {
141  }
143  const std::vector<std::string>& hltL1TSeeds(unsigned int trigger) const {
145  }
146 
149  const std::vector<std::string>& streamNames() const { return hltConfigData_->streamNames(); }
151  const std::string& streamName(unsigned int stream) const { return hltConfigData_->streamName(stream); }
153  unsigned int streamIndex(const std::string& stream) const { return hltConfigData_->streamIndex(stream); }
155  const std::vector<std::vector<std::string> >& streamContents() const { return hltConfigData_->streamContents(); }
157  const std::vector<std::string>& streamContent(unsigned int stream) const {
159  }
161  const std::vector<std::string>& streamContent(const std::string& stream) const {
163  }
164 
167  const std::vector<std::string>& datasetNames() const { return hltConfigData_->datasetNames(); }
169  const std::string& datasetName(unsigned int dataset) const { return hltConfigData_->datasetName(dataset); }
171  unsigned int datasetIndex(const std::string& dataset) const { return hltConfigData_->datasetIndex(dataset); }
173  const std::vector<std::vector<std::string> >& datasetContents() const { return hltConfigData_->datasetContents(); }
175  const std::vector<std::string>& datasetContent(unsigned int dataset) const {
177  }
179  const std::vector<std::string>& datasetContent(const std::string& dataset) const {
181  }
182 
185  unsigned int prescaleSize() const { return hltConfigData_->prescaleSize(); }
187  template <typename T = unsigned int>
188  T prescaleValue(unsigned int set, const std::string& trigger) const {
189  //limit to only 4 allowed types
190  static_assert(std::is_same_v<T, unsigned int> or std::is_same_v<T, FractionalPrescale> or std::is_same_v<T, int> or
191  std::is_same_v<T, double>,
192  "Please use prescaleValue<unsigned int>, prescaleValue<int>, prescaleValue<double>, or "
193  "prescaleValue<FractionalPrescale>,\n note int and unsigned int will be depreated soon");
194  return hltConfigData_->prescaleValue(set, trigger);
195  }
196 
198  const std::vector<std::string>& prescaleLabels() const { return hltConfigData_->prescaleLabels(); }
199  const std::map<std::string, std::vector<unsigned int> >& prescaleTable() const {
200  return hltConfigData_->prescaleTable();
201  }
202 
204  static const std::vector<std::string> matched(const std::vector<std::string>& inputs, const std::string& pattern);
205  static const std::string removeVersion(const std::string& trigger);
206  static const std::vector<std::string> restoreVersion(const std::vector<std::string>& inputs,
207  const std::string& trigger);
208 
209 private:
210  void getDataFrom(const edm::ParameterSetID& iID);
211  void init(const edm::ProcessHistory& iHistory, const std::string& processName);
212  void init(const std::string& processName);
213  void clear();
214 
217  bool inited_;
218  bool changed_;
220 };
221 #endif
HLTConfigProvider::moduleIndex
unsigned int moduleIndex(unsigned int trigger, const std::string &module) const
slot position of module on trigger path (0 to size-1)
Definition: HLTConfigProvider.h:96
HLTConfigData::modulePSet
const edm::ParameterSet & modulePSet(const std::string &module) const
ParameterSet of module.
Definition: HLTConfigData.cc:500
HLTConfigProvider::prescaleSize
unsigned int prescaleSize() const
Definition: HLTConfigProvider.h:185
HLTConfigData::l1tType
unsigned int l1tType() const
L1T type (0=unknown, 1=legacy/stage-1 or 2=stage-2)
Definition: HLTConfigData.cc:521
HLTConfigProvider::matched
static const std::vector< std::string > matched(const std::vector< std::string > &inputs, const std::string &pattern)
regexp processing
Definition: HLTConfigProvider.cc:225
HLTConfigData::moduleType
const std::string moduleType(const std::string &module) const
C++ class name of module.
Definition: HLTConfigData.cc:480
HLTConfigData::streamIndex
unsigned int streamIndex(const std::string &stream) const
index of stream with name
Definition: HLTConfigData.cc:550
HLTConfigProvider::moduleType
const std::string moduleType(const std::string &module) const
C++ class name of module.
Definition: HLTConfigProvider.h:104
HLTConfigProvider::getDataFrom
void getDataFrom(const edm::ParameterSetID &iID)
Definition: HLTConfigProvider.cc:115
HLTConfigData::prescaleTable
const std::map< std::string, std::vector< unsigned int > > & prescaleTable() const
Definition: HLTConfigData.cc:599
HLTConfigData
Definition: HLTConfigData.h:25
HLTConfigProvider::saveTagsModules
const std::vector< std::string > & saveTagsModules(unsigned int trigger) const
Definition: HLTConfigProvider.h:82
HLTConfigData::triggerNames
const std::vector< std::string > & triggerNames() const
names of trigger paths
Definition: HLTConfigData.cc:436
HLTConfigProvider::hltL1TSeeds
const std::vector< std::string > & hltL1TSeeds(unsigned int trigger) const
HLTL1TSeed modules for trigger path with index i.
Definition: HLTConfigProvider.h:143
HLTConfigProvider::globalTag
const std::string & globalTag() const
global tag
Definition: HLTConfigProvider.h:57
edm::Run
Definition: Run.h:45
LuminosityBlock.h
cms::cuda::stream
cudaStream_t stream
Definition: HistoContainer.h:57
HLTConfigProvider::hltL1TSeeds
const std::vector< std::string > & hltL1TSeeds(const std::string &trigger) const
HLTL1TSeed modules for trigger path with name.
Definition: HLTConfigProvider.h:139
HLTConfigData::moduleLabels
const std::vector< std::string > & moduleLabels(unsigned int trigger) const
label(s) of module(s) on a trigger path
Definition: HLTConfigData.cc:447
HLTConfigData::processName
const std::string & processName() const
Accessors (const methods)
Definition: HLTConfigData.cc:427
HLTConfigProvider::datasetContent
const std::vector< std::string > & datasetContent(const std::string &dataset) const
names of trigger paths in dataset with name
Definition: HLTConfigProvider.h:179
HLTConfigProvider::dump
void dump(const std::string &what) const
Dumping config info to cout.
Definition: HLTConfigProvider.h:44
HLTConfigData::prescaleValue
unsigned int prescaleValue(unsigned int set, const std::string &trigger) const
HLT prescale value in specific prescale set for a specific trigger path.
Definition: HLTConfigData.cc:594
HLTConfigProvider::inited
bool inited() const
Accessors (const methods)
Definition: HLTConfigProvider.h:49
HLTConfigProvider::moduleLabel
const std::string & moduleLabel(unsigned int trigger, unsigned int module) const
Definition: HLTConfigProvider.h:88
HLTConfigProvider::hltConfigData_
const HLTConfigData * hltConfigData_
Definition: HLTConfigProvider.h:219
HLTConfigProvider::datasetIndex
unsigned int datasetIndex(const std::string &dataset) const
index of dataset with name
Definition: HLTConfigProvider.h:171
HLTConfigProvider::moduleLabels
const std::vector< std::string > & moduleLabels(unsigned int trigger) const
label(s) of module(s) on a trigger path
Definition: HLTConfigProvider.h:76
HLTConfigProvider::processPSet
const edm::ParameterSet & processPSet() const
ParameterSet of process.
Definition: HLTConfigProvider.h:110
HLTConfigProvider::l1tType
unsigned int l1tType() const
L1T type (0=unknown, 1=legacy/stage-1 or 2=stage-2)
Definition: HLTConfigProvider.h:119
HLTConfigProvider::hltL1TSeeds
const std::vector< std::vector< std::string > > & hltL1TSeeds() const
Definition: HLTConfigProvider.h:137
HLTConfigData::datasetNames
const std::vector< std::string > & datasetNames() const
Datasets.
Definition: HLTConfigData.cc:570
HLTConfigProvider::prescaleTable
const std::map< std::string, std::vector< unsigned int > > & prescaleTable() const
Definition: HLTConfigProvider.h:199
HLTConfigProvider::moduleIndex
unsigned int moduleIndex(const std::string &trigger, const std::string &module) const
Definition: HLTConfigProvider.h:99
HLTConfigData::saveTagsModules
const std::vector< std::string > & saveTagsModules(unsigned int trigger) const
Definition: HLTConfigData.cc:454
HLTConfigData::datasetName
const std::string & datasetName(unsigned int dataset) const
name of dataset with index i
Definition: HLTConfigData.cc:572
HLTConfigProvider::hltL1GTSeeds
const std::vector< std::vector< std::pair< bool, std::string > > > & hltL1GTSeeds() const
Definition: HLTConfigProvider.h:123
HLTConfigProvider::saveTags
bool saveTags(const std::string &module) const
Is module an L3 filter (ie, tracked saveTags=true)
Definition: HLTConfigProvider.h:116
HLTConfigData::streamName
const std::string & streamName(unsigned int stream) const
name of stream with index i
Definition: HLTConfigData.cc:548
HLTConfigProvider::processName_
std::string processName_
data members
Definition: HLTConfigProvider.h:216
Run.h
edm::Hash< ParameterSetType >
HLTConfigProvider::moduleEDMType
const std::string moduleEDMType(const std::string &module) const
C++ base class name of module.
Definition: HLTConfigProvider.h:107
HLTConfigProvider::removeVersion
static const std::string removeVersion(const std::string &trigger)
Definition: HLTConfigProvider.cc:238
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HLTConfigProvider::size
unsigned int size() const
number of trigger paths in trigger table
Definition: HLTConfigProvider.h:63
HLTConfigProvider::prescaleValue
T prescaleValue(unsigned int set, const std::string &trigger) const
HLT prescale value in specific prescale set for a specific trigger path.
Definition: HLTConfigProvider.h:188
HLTConfigProvider::inited_
bool inited_
Definition: HLTConfigProvider.h:217
HLTConfigProvider::modulePSet
const edm::ParameterSet & modulePSet(const std::string &module) const
ParameterSet of module.
Definition: HLTConfigProvider.h:113
HLTConfigProvider::restoreVersion
static const std::vector< std::string > restoreVersion(const std::vector< std::string > &inputs, const std::string &trigger)
Definition: HLTConfigProvider.cc:243
edm::ParameterSet
Definition: ParameterSet.h:47
HLTConfigProvider::streamName
const std::string & streamName(unsigned int stream) const
name of stream with index i
Definition: HLTConfigProvider.h:151
HLTConfigData::moduleIndex
unsigned int moduleIndex(unsigned int trigger, const std::string &module) const
slot position of module on trigger path (0 - size-1)
Definition: HLTConfigData.cc:468
Event.h
HLTConfigData::moduleEDMType
const std::string moduleEDMType(const std::string &module) const
C++ base class name of module.
Definition: HLTConfigData.cc:489
HLTConfigData::datasetContent
const std::vector< std::string > & datasetContent(unsigned int dataset) const
names of trigger paths in dataset with index i
Definition: HLTConfigData.cc:585
HLTConfigProvider::size
unsigned int size(const std::string &trigger) const
Definition: HLTConfigProvider.h:66
HLTConfigData::streamContent
const std::vector< std::string > & streamContent(unsigned int stream) const
names of datasets in stream with index i
Definition: HLTConfigData.cc:561
HLTConfigProvider::size
unsigned int size(unsigned int trigger) const
number of modules on a specific trigger path
Definition: HLTConfigProvider.h:65
FractionalPrescale.h
HLTConfigData::datasetContents
const std::vector< std::vector< std::string > > & datasetContents() const
names of trigger paths for all datasets
Definition: HLTConfigData.cc:583
HLTConfigData::prescaleLabels
const std::vector< std::string > & prescaleLabels() const
low-level data member access
Definition: HLTConfigData.cc:598
topSingleLeptonDQM_PU_cfi.pattern
pattern
Definition: topSingleLeptonDQM_PU_cfi.py:39
PixelMapPlotter.inputs
inputs
Definition: PixelMapPlotter.py:490
HLTConfigProvider::tableName
const std::string & tableName() const
HLT ConfDB table name.
Definition: HLTConfigProvider.h:60
HLTConfigProvider::moduleLabel
const std::string & moduleLabel(const std::string &trigger, unsigned int module) const
Definition: HLTConfigProvider.h:91
HLTConfigData::size
unsigned int size() const
number of trigger paths in trigger table
Definition: HLTConfigData.cc:431
HLTConfigProvider::datasetName
const std::string & datasetName(unsigned int dataset) const
name of dataset with index i
Definition: HLTConfigProvider.h:169
HLTConfigProvider::processName
const std::string & processName() const
process name
Definition: HLTConfigProvider.h:54
edm::EventSetup
Definition: EventSetup.h:57
HLTConfigProvider::prescaleLabels
const std::vector< std::string > & prescaleLabels() const
low-level data member access
Definition: HLTConfigProvider.h:198
HLTConfigData::hltL1TSeeds
const std::vector< std::vector< std::string > > & hltL1TSeeds() const
Definition: HLTConfigData.cc:535
HLTConfigProvider::saveTagsModules
const std::vector< std::string > & saveTagsModules(const std::string &trigger) const
Definition: HLTConfigProvider.h:85
HLTConfigProvider::streamNames
const std::vector< std::string > & streamNames() const
Definition: HLTConfigProvider.h:149
HLTConfigData::saveTags
bool saveTags(const std::string &module) const
Is module an L3 filter (ie, tracked saveTags=true)
Definition: HLTConfigData.cc:512
HLTConfigData::tableName
const std::string & tableName() const
HLT ConfDB table name.
Definition: HLTConfigData.cc:435
HLTConfigProvider::triggerIndex
unsigned int triggerIndex(const std::string &triggerName) const
slot position of trigger path in trigger table (0 to size-1)
Definition: HLTConfigProvider.h:73
HLTConfigProvider::streamContent
const std::vector< std::string > & streamContent(unsigned int stream) const
names of datasets in stream with index i
Definition: HLTConfigProvider.h:157
HLTConfigData::streamContents
const std::vector< std::vector< std::string > > & streamContents() const
names of datasets for all streams
Definition: HLTConfigData.cc:559
HLTConfigProvider::clear
void clear()
Definition: HLTConfigProvider.cc:214
HLTConfigProvider::HLTConfigProvider
HLTConfigProvider()
c'tor
Definition: HLTConfigProvider.cc:33
HLTConfigData::dump
void dump(const std::string &what) const
Dumping config info to cout.
Definition: HLTConfigData.cc:304
HLTConfigProvider
Definition: HLTConfigProvider.h:29
HLTConfigProvider::init
bool init(const edm::Run &iRun, const edm::EventSetup &iSetup, const std::string &processName, bool &changed)
d'tor
Definition: HLTConfigProvider.cc:36
HLTConfigData::globalTag
const std::string & globalTag() const
GlobalTag.globaltag.
Definition: HLTConfigData.cc:429
HLTConfigProvider::hltL1GTSeeds
const std::vector< std::pair< bool, std::string > > & hltL1GTSeeds(unsigned int trigger) const
HLTLevel1GTSeed modules for trigger path with index i.
Definition: HLTConfigProvider.h:131
T
long double T
Definition: Basic3DVectorLD.h:48
HLTConfigData.h
HLTConfigData::datasetIndex
unsigned int datasetIndex(const std::string &dataset) const
index of dataset with name
Definition: HLTConfigData.cc:574
HLTConfigProvider::datasetContents
const std::vector< std::vector< std::string > > & datasetContents() const
names of trigger paths for all datasets
Definition: HLTConfigProvider.h:173
HLTConfigProvider::streamContents
const std::vector< std::vector< std::string > > & streamContents() const
names of datasets for all streams
Definition: HLTConfigProvider.h:155
HLTConfigProvider::moduleLabels
const std::vector< std::string > & moduleLabels(const std::string &trigger) const
Definition: HLTConfigProvider.h:79
HLTConfigData::moduleLabel
const std::string & moduleLabel(unsigned int trigger, unsigned int module) const
Definition: HLTConfigData.cc:461
HLTConfigProvider::streamIndex
unsigned int streamIndex(const std::string &stream) const
index of stream with name
Definition: HLTConfigProvider.h:153
HLTConfigProvider::changed
bool changed() const
changed?
Definition: HLTConfigProvider.h:51
HLTConfigData::triggerIndex
unsigned int triggerIndex(const std::string &triggerName) const
slot position of trigger path in trigger table (0 - size-1)
Definition: HLTConfigData.cc:438
or
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
Definition: Activities.doc:12
HLTConfigProvider::datasetContent
const std::vector< std::string > & datasetContent(unsigned int dataset) const
names of trigger paths in dataset with index i
Definition: HLTConfigProvider.h:175
HLTConfigData::hltL1GTSeeds
const std::vector< std::vector< std::pair< bool, std::string > > > & hltL1GTSeeds() const
Definition: HLTConfigData.cc:523
HLTConfigData::streamNames
const std::vector< std::string > & streamNames() const
Streams.
Definition: HLTConfigData.cc:546
HLTConfigData::processPSet
const edm::ParameterSet & processPSet() const
ParameterSet of process.
Definition: HLTConfigData.cc:498
trigger
Definition: HLTPrescaleTableCond.h:8
dataset
Definition: dataset.py:1
HLTConfigProvider::triggerName
const std::string & triggerName(unsigned int triggerIndex) const
Definition: HLTConfigProvider.h:70
edm::ProcessHistory
Definition: ProcessHistory.h:13
HLTConfigProvider::triggerNames
const std::vector< std::string > & triggerNames() const
names of trigger paths
Definition: HLTConfigProvider.h:69
HLTConfigProvider::hltL1GTSeeds
const std::vector< std::pair< bool, std::string > > & hltL1GTSeeds(const std::string &trigger) const
HLTLevel1GTSeed modules for trigger path with name.
Definition: HLTConfigProvider.h:127
HLTConfigProvider::streamContent
const std::vector< std::string > & streamContent(const std::string &stream) const
names of datasets in stream with name
Definition: HLTConfigProvider.h:161
HLTConfigData::prescaleSize
unsigned int prescaleSize() const
Definition: HLTConfigData.cc:593
HLTConfigData::triggerName
const std::string & triggerName(unsigned int triggerIndex) const
Definition: HLTConfigData.cc:437
HLTConfigProvider::changed_
bool changed_
Definition: HLTConfigProvider.h:218
HLTConfigProvider::datasetNames
const std::vector< std::string > & datasetNames() const
Definition: HLTConfigProvider.h:167