Belle II Software  release-05-01-25
CDCTriggerMLPData.cc
1 #include <trg/cdc/dataobjects/CDCTriggerMLPData.h>
2 
3 using namespace Belle2;
4 
5 void
6 CDCTriggerMLPData::addHit(unsigned iSL, int iTS)
7 {
8  if (iSL < hitCounters.size()) {
9  int N = hitCounters[iSL].size();
10  // shift negative indices
11  if (iTS < 0) iTS += N;
12  // check the range
13  // 0, N: hit is on the track
14  // [0, N/4]: hit is in quadrant left of the track
15  // [N/4, 3N/4]: hit is in hemisphere opposite of the track (skipped)
16  // [3N/4, N]: hit is in quadrant right of the track
17  if ((0 <= iTS && iTS <= N / 4) || (3 * N / 4 <= iTS && iTS < N)) {
18  ++hitCounters[iSL][iTS];
19  }
20  }
21 }
22 
23 unsigned short
24 CDCTriggerMLPData::getHitCounter(unsigned iSL, int iTS) const
25 {
26  if (iSL < hitCounters.size()) {
27  if (iTS < 0) iTS += hitCounters[iSL].size();
28  if (0 <= iTS && (unsigned)iTS < hitCounters[iSL].size()) {
29  return hitCounters[iSL][iTS];
30  }
31  }
32  return 0;
33 }
Belle2::CDCTriggerMLPData::addHit
void addHit(unsigned iSL, int iTS)
increase counter for super layer and track segment number in super layer.
Definition: CDCTriggerMLPData.cc:6
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::CDCTriggerMLPData::getHitCounter
unsigned short getHitCounter(unsigned iSL, int iTS) const
get hit counter for super layer and track segment number is super layer.
Definition: CDCTriggerMLPData.cc:24
Belle2::CDCTriggerMLPData::hitCounters
std::vector< std::vector< unsigned short > > hitCounters
hit counter of active track segment IDs, used to determine the relevant id range for an MLP.
Definition: CDCTriggerMLPData.h:59