6 static const std::string UNDEFINED_UNDEFINED =
"Undefined/Undefined";
16 return UNDEFINED_UNDEFINED;
22 for (uint32_t
i = 1;
i != 0;
i <<= 1) {
36 size_t idx =
str.find_first_of(
"/");
37 if (
idx != std::string::npos) {
43 if (
set ==
"Isolation")
45 if (
set ==
"Selection")
51 uint32_t
Flags::get(
const std::vector<std::string> &strs) {
53 for (std::vector<std::string>::const_iterator it = strs.begin(), ed = strs.end(); it != ed; ++it) {
60 static const std::string STR_All =
"Core/All", STR_Duplicate =
"Core/Duplicate",
61 STR_Preselection =
"Core/Preselection", STR_Vertexing =
"Core/Vertexing",
62 STR_Overflow =
"Core/Overflow", STR_Undefined =
"Core/Undefined";
70 return STR_Preselection;
81 size_t idx = instr.find_first_of(
"/");
85 else if (
str ==
"Duplicate")
87 else if (
str ==
"Preselection")
89 else if (
str ==
"Vertexing")
91 else if (
str ==
"Overlfow")
98 for (std::vector<std::string>::const_iterator it = strs.begin(), ed = strs.end(); it != ed; ++it) {
105 static const std::string STR_All =
"Selection/All", STR_Bit0 =
"Selection/Bit0", STR_Bit1 =
"Selection/Bit1",
106 STR_Bit2 =
"Selection/Bit2", STR_Bit3 =
"Selection/Bit3", STR_Bit4 =
"Selection/Bit4",
107 STR_Bit5 =
"Selection/Bit5", STR_Bit6 =
"Selection/Bit6", STR_Bit7 =
"Selection/Bit7",
108 STR_Bit8 =
"Selection/Bit8", STR_Bit9 =
"Selection/Bit9", STR_Bit10 =
"Selection/Bit10",
109 STR_Bit11 =
"Selection/Bit11", STR_Undefined =
"Selection/Undefined";
138 return STR_Undefined;
146 return Bits((1 << bit) << 8);
151 size_t idx = instr.find_first_of(
"/");
155 else if (
str ==
"Bit0")
157 else if (
str ==
"Bit1")
159 else if (
str ==
"Bit2")
161 else if (
str ==
"Bit3")
163 else if (
str ==
"Bit4")
165 else if (
str ==
"Bit5")
167 else if (
str ==
"Bit6")
169 else if (
str ==
"Bit7")
171 else if (
str ==
"Bit8")
173 else if (
str ==
"Bit9")
175 else if (
str ==
"Bit10")
177 else if (
str ==
"Bit11")
184 for (std::vector<std::string>::const_iterator it = strs.begin(), ed = strs.end(); it != ed; ++it) {
191 static const std::string STR_All =
"Overlap/All", STR_Jets =
"Overlap/Jets", STR_Electrons =
"Overlap/Electrons",
192 STR_Muons =
"Overlap/Muons", STR_Taus =
"Overlap/Taus", STR_Photons =
"Overlap/Photons",
193 STR_User =
"Overlap/User", STR_User1 =
"Overlap/User1", STR_User2 =
"Overlap/User2",
194 STR_User3 =
"Overlap/User3", STR_Undefined =
"Overlap/Undefined";
201 return STR_Electrons;
217 return STR_Undefined;
222 size_t idx = instr.find_first_of(
"/");
226 else if (
str ==
"Jets")
228 else if (
str ==
"Electrons")
230 else if (
str ==
"Muons")
232 else if (
str ==
"Taus")
234 else if (
str ==
"Photons")
236 else if (
str ==
"User")
238 else if (
str ==
"User1")
240 else if (
str ==
"User2")
242 else if (
str ==
"User3")
249 for (std::vector<std::string>::const_iterator it = strs.begin(), ed = strs.end(); it != ed; ++it) {
256 static const std::string STR_All =
"Isolation/All", STR_Tracker =
"Isolation/Tracker", STR_ECal =
"Isolation/ECal",
257 STR_HCal =
"Isolation/HCal", STR_Calo =
"Isolation/Calo", STR_User =
"Isolation/User",
258 STR_User1 =
"Isolation/User1", STR_User2 =
"Isolation/User2", STR_User3 =
"Isolation/User3",
259 STR_User4 =
"Isolation/User4", STR_User5 =
"Isolation/User5",
260 STR_Undefined =
"Isolation/Undefined";
285 return STR_Undefined;
290 size_t idx = instr.find_first_of(
"/");
294 else if (
str ==
"Tracker")
296 else if (
str ==
"ECal")
298 else if (
str ==
"HCal")
300 else if (
str ==
"Calo")
302 else if (
str ==
"User")
304 else if (
str ==
"User1")
306 else if (
str ==
"User2")
308 else if (
str ==
"User3")
310 else if (
str ==
"User4")
312 else if (
str ==
"User5")
319 for (std::vector<std::string>::const_iterator it = strs.begin(), ed = strs.end(); it != ed; ++it) {