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;
116 for (
int ieta = 0; ieta < 22; ieta++) {
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);
bool fillVariable(const std::string &columnName, T &outputVariable) const
const QueryResults singleAttribute(const T &data) const
Log< level::Error, false > LogError
L1GctChannelMaskOnlineProd(const edm::ParameterSet &iConfig)
const QueryResults basicQuery(const std::vector< std::string > &columnNames, const std::string &schemaName, const std::string &tableName, const std::string &conditionLHS="", const QueryResults conditionRHS=QueryResults(), const std::string &conditionRHSName="")
l1t::OMDSReader m_omdsReader
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
~L1GctChannelMaskOnlineProd() override
std::unique_ptr< L1GctChannelMask > newObject(const std::string &objectKey) override