10 result[0] = tower[
is_mip][0];
14 result[1] = result[0] & (tower[
is_above_mip].count() > 0);
28 result[0] = result[1] = tower[
is_mip][0];
36 result[0] = result[1] =
true;
47 int tp_ieta =
id.ieta();
55 for (
size_t i = 0;
i < 7;
i++) {
56 int bit12_15set = tower[
i].first;
57 int bit12 = (bit12_15set & 0b0001);
58 int bit13 = (bit12_15set & 0b0010) >> 1;
59 int bit14 = (bit12_15set & 0b0100) >> 2;
60 int bit15 = (bit12_15set & 0b1000) >> 3;
61 int TDC = tower[
i].second.first;
62 int ADC = tower[
i].second.second;
68 if (TDC == 1 && bit15 == 1)
70 if (TDC == 2 && bit15 == 1)
72 if (TDC == 0 && bit14 == 1)
75 if (
abs(tp_ieta) > 16 &&
79 if (TDC >
tdc_HE[
abs(tp_ieta) - 1][
i] + 2 && bit15 == 1)
81 if (TDC <=
tdc_HE[
abs(tp_ieta) - 1][
i] && TDC >= 0 && bit14 == 1)
87 if (ADC > 0 && bit12 == 0)
90 if (ADC > 0 && bit13 == 1)
96 if (DeepEnergy > 0 && EarlyEnergy == 0)
108 if (NveryDelayed > 0)
112 result[4] = result[5] =
false;
std::array< std::bitset< 6 >, 2 > Tower
Abs< T >::type abs(const T &t)
std::bitset< 2 > compute(const Tower &) const
std::array< std::pair< int, std::pair< int, int > >, 7 > TowerTDC