22 edm::LogError(
"L1-O2O") <<
"Problem with L1GctChannelMask EM mask for key " << objectKey;
23 return std::unique_ptr<L1GctChannelMask>();
34 edm::LogError(
"L1-O2O") <<
"Problem with L1GctChannelMask region mask for key " << objectKey;
35 return std::unique_ptr<L1GctChannelMask>();
41 std::vector<std::string> rgnMaskCols;
42 rgnMaskCols.push_back(
"RCT_CRATE_0_RGN_MASK");
43 rgnMaskCols.push_back(
"RCT_CRATE_1_RGN_MASK");
44 rgnMaskCols.push_back(
"RCT_CRATE_2_RGN_MASK");
45 rgnMaskCols.push_back(
"RCT_CRATE_3_RGN_MASK");
46 rgnMaskCols.push_back(
"RCT_CRATE_4_RGN_MASK");
47 rgnMaskCols.push_back(
"RCT_CRATE_5_RGN_MASK");
48 rgnMaskCols.push_back(
"RCT_CRATE_6_RGN_MASK");
49 rgnMaskCols.push_back(
"RCT_CRATE_7_RGN_MASK");
50 rgnMaskCols.push_back(
"RCT_CRATE_8_RGN_MASK");
51 rgnMaskCols.push_back(
"RCT_CRATE_9_RGN_MASK");
52 rgnMaskCols.push_back(
"RCT_CRATE_10_RGN_MASK");
53 rgnMaskCols.push_back(
"RCT_CRATE_11_RGN_MASK");
54 rgnMaskCols.push_back(
"RCT_CRATE_12_RGN_MASK");
55 rgnMaskCols.push_back(
"RCT_CRATE_13_RGN_MASK");
56 rgnMaskCols.push_back(
"RCT_CRATE_14_RGN_MASK");
57 rgnMaskCols.push_back(
"RCT_CRATE_15_RGN_MASK");
58 rgnMaskCols.push_back(
"RCT_CRATE_16_RGN_MASK");
59 rgnMaskCols.push_back(
"RCT_CRATE_17_RGN_MASK");
69 edm::LogError(
"L1-O2O") <<
"Problem with L1GctChannelMask energy sum mask for key " << objectKey;
70 return std::unique_ptr<L1GctChannelMask>();
76 std::vector<std::string> esumMaskCols;
77 esumMaskCols.push_back(
"GCT_TET_MASK");
78 esumMaskCols.push_back(
"GCT_MET_MASK");
79 esumMaskCols.push_back(
"GCT_HT_MASK");
80 esumMaskCols.push_back(
"GCT_MHT_MASK");
86 auto masks = std::make_unique<L1GctChannelMask>();
89 for (
int i = 0;
i < 18;
i++) {
90 if ((emMask & (1 <<
i)) != 0)
91 masks->maskEmCrate(
i);
95 for (
unsigned irct = 0; irct < 18; irct++) {
96 std::stringstream rgnCol;
97 rgnCol <<
"RCT_CRATE_" <<
std::dec << irct <<
"_RGN_MASK";
101 for (
unsigned irgn = 0; irgn < 22; ++irgn) {
102 if ((mask & (1 << irgn)) != 0) {
103 edm::LogError(
"L1-O2O") <<
"Masked region, but no O2O code!";
110 int tetMask, metMask, htMask, mhtMask;
117 if ((tetMask & (1 <<
ieta)) != 0)
118 masks->maskTotalEt(
ieta);
119 if ((metMask & (1 <<
ieta)) != 0)
120 masks->maskMissingEt(
ieta);
121 if ((htMask & (1 <<
ieta)) != 0)
122 masks->maskTotalHt(
ieta);
123 if ((mhtMask & (1 <<
ieta)) != 0)
124 masks->maskMissingHt(
ieta);