Definition at line 53 of file L1TMenuHelper.cc.
56 map<string, string>
out;
65 const vector<int>& refPrescaleFactors = (*m_prescaleFactorsAlgoTrig).at(IndexRefPrescaleFactors);
69 map<string, SingleObjectCondition> myConditions;
71 for (
unsigned int a = 0;
a < vMuonConditions->size();
a++) {
72 for (
unsigned int b = 0;
b < (*vMuonConditions)[
a].size();
b++) {
87 myConditions[MuonCondition->
condName()] = tCondition;
92 for (
unsigned int a = 0;
a < vCaloConditions->size();
a++) {
93 for (
unsigned int b = 0;
b < (*vCaloConditions)[
a].size();
b++) {
112 for (
unsigned int a = 0;
a < vEnergySumConditions->size();
a++) {
113 for (
unsigned int b = 0;
b < (*vEnergySumConditions)[
a].size();
b++) {
134 for (
CItAlgo iAlgo = theAlgoMap->begin(); iAlgo != theAlgoMap->end(); ++iAlgo) {
137 bool algoIsValid =
true;
139 int tAlgoMask = myUtils.triggerMask(iAlgo->first,
error);
141 unsigned int tQuality = 0;
142 unsigned int tEtaRange = 0;
146 bool isNoIsoEG =
false;
147 bool isIsoEG =
false;
148 bool isCenJet =
false;
149 bool isForJet =
false;
150 bool isTauJet =
false;
157 if (tAlgoMask != 0) {
170 map<string, SingleObjectCondition>::const_iterator ciCond = myConditions.find(AlgoCondition);
174 if (ciCond == myConditions.end()) {
183 tObject = (*ciCond).second.object;
184 tQuality = (*ciCond).second.quality;
185 tEtaRange = (*ciCond).second.etaRange;
188 if ((*ciCond).second.object ==
Mu) {
190 }
else if ((*ciCond).second.object ==
NoIsoEG) {
192 }
else if ((*ciCond).second.object ==
IsoEG) {
194 }
else if ((*ciCond).second.object ==
CenJet) {
196 }
else if ((*ciCond).second.object ==
ForJet) {
198 }
else if ((*ciCond).second.object ==
TauJet) {
200 }
else if ((*ciCond).second.object ==
ETM) {
202 }
else if ((*ciCond).second.object ==
ETT) {
204 }
else if ((*ciCond).second.object ==
HTT) {
206 }
else if ((*ciCond).second.object ==
HTM) {
216 tTrigger.
alias = iAlgo->first;
217 tTrigger.
bit = (iAlgo->second).algoBitNumber();
218 tTrigger.
prescale = refPrescaleFactors[tTrigger.
bit];
220 tTrigger.
object = tObject;
259 if (nCond == 1 &&
isMu ==
true) {
262 }
else if (nCond == 2 && isNoIsoEG ==
true && isIsoEG ==
true) {
264 }
else if (nCond == 1 && isIsoEG ==
true) {
266 }
else if (nCond == 3 && isCenJet ==
true && isForJet ==
true && isTauJet ==
true) {
268 }
else if (nCond == 1 && isCenJet ==
true) {
270 }
else if (nCond == 1 && isForJet ==
true) {
272 }
else if (nCond == 1 && isTauJet ==
true) {
274 }
else if (nCond == 1 && isETT ==
true) {
276 }
else if (nCond == 1 && isETM ==
true) {
278 }
else if (nCond == 1 && isHTT ==
true) {
280 }
else if (nCond == 1 && isHTM ==
true) {
293 string selTrigMu =
"Undefined";
294 string selTrigEG =
"Undefined";
295 string selTrigIsoEG =
"Undefined";
296 string selTrigJet =
"Undefined";
297 string selTrigCenJet =
"Undefined";
298 string selTrigForJet =
"Undefined";
299 string selTrigTauJet =
"Undefined";
300 string selTrigETT =
"Undefined";
301 string selTrigETM =
"Undefined";
302 string selTrigHTT =
"Undefined";
303 string selTrigHTM =
"Undefined";
350 auto check = [](
const map<string, bool>& cats,
const char*
key) ->
bool {
351 auto it = cats.find(
key);
352 if (it != cats.end())
358 if (
check(iCategories,
"Mu")) {
359 out[
"Mu"] = selTrigMu;
361 if (
check(iCategories,
"EG")) {
362 out[
"EG"] = selTrigEG;
364 if (
check(iCategories,
"IsoEG")) {
365 out[
"IsoEG"] = selTrigIsoEG;
367 if (
check(iCategories,
"Jet")) {
368 out[
"Jet"] = selTrigJet;
370 if (
check(iCategories,
"CenJet")) {
371 out[
"CenJet"] = selTrigCenJet;
373 if (
check(iCategories,
"ForJet")) {
374 out[
"ForJet"] = selTrigForJet;
376 if (
check(iCategories,
"TauJet")) {
377 out[
"TauJet"] = selTrigTauJet;
379 if (
check(iCategories,
"ETT")) {
380 out[
"ETT"] = selTrigETT;
382 if (
check(iCategories,
"ETM")) {
383 out[
"ETM"] = selTrigETM;
385 if (
check(iCategories,
"HTT")) {
386 out[
"HTT"] = selTrigHTT;
388 if (
check(iCategories,
"HTM")) {
389 out[
"HTM"] = selTrigHTM;
References a, L1GtAlgorithm::algoRpnVector(), SingleObjectTrigger::alias, b, SingleObjectTrigger::bit, CenJet, edm::check(), L1GtCondition::condCategory(), SingleObjectCondition::conditionCategory, SingleObjectCondition::conditionType, L1GtCondition::condName(), L1GtCondition::condType(), relativeConstraints::error, SingleObjectCondition::etaRange, SingleObjectTrigger::etaRange, generateTowerEtThresholdLUT::etaRange, ETM, ETT, ForJet, HTM, HTT, mps_fire::i, jets_cff::isMu, IsoEG, crabWrapper::key, HLT_FULL_cff::maxThreshold, Mu, SingleObjectCondition::name, NoIsoEG, L1GtCondition::nrObjects(), SingleObjectCondition::object, SingleObjectTrigger::object, L1GtMuonTemplate::objectParameter(), L1GtCondition::objectType(), L1GtLogicParser::OP_AND, L1GtLogicParser::OP_OPERAND, MillePedeFileConverter_cfg::out, SingleObjectTrigger::prescale, SingleObjectCondition::quality, SingleObjectTrigger::quality, TauJet, SingleObjectCondition::threshold, SingleObjectTrigger::threshold, L1GtUtils::triggerMask(), Type1s, TypeETM, TypeETT, TypeHTM, and TypeHTT.
Referenced by L1TRate_Offline::bookHistograms(), L1TRate::bookHistograms(), L1TSync::bookHistograms(), and L1TSync_Offline::bookHistograms().