19 return StatusCode::SUCCESS;
29 return StatusCode::SUCCESS;
36 ATH_MSG_DEBUG(
"calculateMultiplicities failed, no multiplicities");
37 return StatusCode::SUCCESS;
83 ATH_MSG_DEBUG(
"REGTEST: event " << (pass ?
"accepted" :
"failed") <<
" with EBA(" << counts.
sideA <<
") + EBC(" << counts.
sideC <<
") hits above threshold.");
90 return StatusCode::SUCCESS;
104 std::vector<float> triggerTimes = t2mbtsBits->
triggerTimes();
108 ATH_MSG_WARNING(
"Vector sizes are not equal to number of MBTS counters.");
114 std::bitset<16> ebaTriggerBits;
115 std::bitset<16> ebcTriggerBits;
119 int ebaCounters = 0, ebcCounters = 0;
122 double timeDiff_A_C = 0.;
123 double timeMean_A = 0.;
124 double timeMean_C = 0.;
129 if (
m_mbtsmode == 1 && !(ibit < 8 || (ibit >= 16 && ibit < 24)))
131 if (
m_mbtsmode == 2 && !((ibit >= 8 && ibit < 16) || (ibit >= 24 && ibit < 32)))
141 timeMean_A += triggerTimes[ibit];
146 timeMean_C += triggerTimes[ibit];
157 ebaTriggerBits.set(ibit);
161 ebcTriggerBits.set(ibit - 16);
167 timeMean_A /= ebaCounters;
176 timeMean_C /= ebcCounters;
183 if (ebaCounters > 0 && ebcCounters > 0)
185 timeDiff_A_C = timeMean_A - timeMean_C;
189 timeDiff_A_C = -999.0;
192 <<
" side A: " << timeMean_A
193 <<
", side C: " << timeMean_C
194 <<
", difference A-C: " << timeDiff_A_C);
199 std::vector<int> counts;
200 counts.reserve(ebaTriggerBits.size() + ebcTriggerBits.size());
202 for (
size_t bit = 0; bit < ebaTriggerBits.size(); ++bit )
203 counts.push_back( ebaTriggerBits[bit] ? bit : -1 );
204 for (
size_t bit = 0; bit < ebcTriggerBits.size(); ++bit )
205 counts.push_back( ebcTriggerBits[bit] ? bit+ebaTriggerBits.size() : -1 );
209 return {ebaTriggerBits.count(), ebcTriggerBits.count()};