CMS 3D CMS Logo

Classes | Enumerations | Functions
L1GtObject.h File Reference
#include <string>

Go to the source code of this file.

Classes

struct  L1GtObjectStringToEnum
 the string to enum and enum to string conversions for L1GtObject More...
 

Enumerations

enum  L1GtObject {
  Mu, NoIsoEG, IsoEG, CenJet,
  ForJet, TauJet, ETM, ETT,
  HTT, HTM, JetCounts, HfBitCounts,
  HfRingEtSums, TechTrig, Castor, BPTX,
  GtExternal, ObjNull
}
 

Functions

std::string l1GtObjectEnumToString (const L1GtObject &)
 
L1GtObject l1GtObjectStringToEnum (const std::string &)
 

Enumeration Type Documentation

◆ L1GtObject

enum L1GtObject

L1 GT objects ObjNull catch all errors

Enumerator
Mu 
NoIsoEG 
IsoEG 
CenJet 
ForJet 
TauJet 
ETM 
ETT 
HTT 
HTM 
JetCounts 
HfBitCounts 
HfRingEtSums 
TechTrig 
Castor 
BPTX 
GtExternal 
ObjNull 

Definition at line 28 of file L1GtObject.h.

28  {
29  Mu,
30  NoIsoEG,
31  IsoEG,
32  CenJet,
33  ForJet,
34  TauJet,
35  ETM,
36  ETT,
37  HTT,
38  HTM,
39  JetCounts,
42  TechTrig,
43  Castor,
44  BPTX,
45  GtExternal,
46  ObjNull
47 };

Function Documentation

◆ l1GtObjectEnumToString()

std::string l1GtObjectEnumToString ( const L1GtObject )

Definition at line 69 of file L1GtObject.cc.

69  {
70  std::string gtObjectString;
71 
72  switch (gtObject) {
73  case Mu: {
74  gtObjectString = "Mu";
75  } break;
76 
77  case NoIsoEG: {
78  gtObjectString = "NoIsoEG";
79  } break;
80 
81  case IsoEG: {
82  gtObjectString = "IsoEG";
83  } break;
84 
85  case CenJet: {
86  gtObjectString = "CenJet";
87  } break;
88 
89  case ForJet: {
90  gtObjectString = "ForJet";
91  } break;
92 
93  case TauJet: {
94  gtObjectString = "TauJet";
95  } break;
96 
97  case ETM: {
98  gtObjectString = "ETM";
99  } break;
100 
101  case ETT: {
102  gtObjectString = "ETT";
103  } break;
104 
105  case HTT: {
106  gtObjectString = "HTT";
107  } break;
108 
109  case HTM: {
110  gtObjectString = "HTM";
111  } break;
112 
113  case JetCounts: {
114  gtObjectString = "JetCounts";
115  } break;
116 
117  case HfBitCounts: {
118  gtObjectString = "HfBitCounts";
119  } break;
120 
121  case HfRingEtSums: {
122  gtObjectString = "HfRingEtSums";
123  } break;
124 
125  case TechTrig: {
126  gtObjectString = "TechTrig";
127  } break;
128 
129  case Castor: {
130  gtObjectString = "Castor";
131  } break;
132 
133  case BPTX: {
134  gtObjectString = "BPTX";
135  } break;
136 
137  case GtExternal: {
138  gtObjectString = "GtExternal";
139  } break;
140 
141  case ObjNull: {
142  gtObjectString = "ObjNull";
143  edm::LogInfo("L1GtObject") << "\n ObjNull means no valid L1GtObject defined!";
144  } break;
145 
146  default: {
147  edm::LogInfo("L1GtObject") << "\n '" << gtObject << "' is not a recognized L1GtObject. "
148  << "\n Return ObjNull, which means no valid L1GtObject defined!";
149 
150  gtObjectString = "ObjNull";
151 
152  } break;
153  }
154 
155  return gtObjectString;
156 }

References BPTX, Castor, CenJet, ETM, ETT, ForJet, GtExternal, HfBitCounts, HfRingEtSums, HTM, HTT, IsoEG, JetCounts, Mu, NoIsoEG, ObjNull, AlCaHLTBitMon_QueryRunRegistry::string, TauJet, and TechTrig.

Referenced by L1GtEtaPhiConversions::convertEtaIndex(), L1GtCorrelationCondition::evaluateCondition(), L1GtHwValidation::excludedAlgoList(), L1GtEtaPhiConversions::gtObjectNrBinsPhi(), L1GtEtaPhiConversions::gtObjectPairIndex(), L1GtEtaPhiConversions::L1GtEtaPhiConversions(), and L1RetrieveL1Extra::printL1Extra().

◆ l1GtObjectStringToEnum()

L1GtObject l1GtObjectStringToEnum ( const std::string &  )

Definition at line 24 of file L1GtObject.cc.

24  {
25  static const L1GtObjectStringToEnum l1GtObjectStringToEnumMap[] = {{"Mu", Mu},
26  {"NoIsoEG", NoIsoEG},
27  {"IsoEG", IsoEG},
28  {"CenJet", CenJet},
29  {"ForJet", ForJet},
30  {"TauJet", TauJet},
31  {"ETM", ETM},
32  {"ETT", ETT},
33  {"HTT", HTT},
34  {"HTM", HTM},
35  {"JetCounts", JetCounts},
36  {"HfBitCounts", HfBitCounts},
37  {"HfRingEtSums", HfRingEtSums},
38  {"TechTrig", TechTrig},
39  {"Castor", Castor},
40  {"BPTX", BPTX},
41  {"GtExternal", GtExternal},
42  {"ObjNull", ObjNull},
43  {nullptr, (L1GtObject)-1}};
44 
46 
47  bool found = false;
48  for (int i = 0; l1GtObjectStringToEnumMap[i].label && (!found); ++i)
49  if (!std::strcmp(label.c_str(), l1GtObjectStringToEnumMap[i].label)) {
50  found = true;
51  value = l1GtObjectStringToEnumMap[i].value;
52  }
53 
54  // in case of unrecognized L1GtObject, returns Mu
55  // and write a warning (to not throw an exception)
56  if (!found) {
57  edm::LogInfo("L1GtObject") << "\n '" << label << "' is not a recognized L1GtObject. \n Return ObjNull.";
58 
59  value = ObjNull;
60  }
61 
62  if (value == ObjNull) {
63  edm::LogInfo("L1GtObject") << "\n ObjNull means no valid L1GtObject defined!";
64  }
65 
66  return value;
67 }

References BPTX, CenJet, ETM, ETT, ForJet, newFWLiteAna::found, GtExternal, HfBitCounts, HfRingEtSums, HTM, HTT, mps_fire::i, IsoEG, JetCounts, label, L1GtObjectStringToEnum::label, Mu, NoIsoEG, ObjNull, TauJet, TechTrig, L1GtObjectStringToEnum::value, and relativeConstraints::value.

Referenced by L1GtHwValidation::L1GtHwValidation().

HTM
Definition: L1GtObject.h:38
mps_fire.i
i
Definition: mps_fire.py:355
ObjNull
Definition: L1GtObject.h:46
GtExternal
Definition: L1GtObject.h:45
L1GtObjectStringToEnum::label
const char * label
Definition: L1GtObject.h:52
ETM
Definition: L1GtObject.h:35
Castor
Definition: L1GtObject.h:43
L1GtObjectStringToEnum
the string to enum and enum to string conversions for L1GtObject
Definition: L1GtObject.h:51
edm::LogInfo
Definition: MessageLogger.h:254
NoIsoEG
Definition: L1GtObject.h:30
IsoEG
Definition: L1GtObject.h:31
newFWLiteAna.found
found
Definition: newFWLiteAna.py:118
L1GtObject
L1GtObject
Definition: L1GtObject.h:28
HTT
Definition: L1GtObject.h:37
HfBitCounts
Definition: L1GtObject.h:40
HfRingEtSums
Definition: L1GtObject.h:41
CenJet
Definition: L1GtObject.h:32
TechTrig
Definition: L1GtObject.h:42
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
Castor
TauJet
Definition: L1GtObject.h:34
value
Definition: value.py:1
ETT
Definition: L1GtObject.h:36
Mu
Definition: L1GtObject.h:29
relativeConstraints.value
value
Definition: relativeConstraints.py:53
ForJet
Definition: L1GtObject.h:33
JetCounts
Definition: L1GtObject.h:39
BPTX
Definition: L1GtObject.h:44
label
const char * label
Definition: PFTauDecayModeTools.cc:11
L1GtObjectStringToEnum::value
L1GtObject value
Definition: L1GtObject.h:53
L1GtObject