NSL
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
TrackerLayerChargeAsymmetry.cpp
Go to the documentation of this file.
2 
3 NSL::Selections::TrackerLayer::ChargeAsymmetry::ChargeAsymmetry(unsigned int layer, float max, NAIA::TrTrack::ChargeRecoType recoType) {
4 
5  m_matcher = std::make_shared<boolMatcher>([=](Event &event) {
6  auto jlayer = layer - 1;
7  auto chargeX = event.trTrackPlus->LayerCharge[jlayer][recoType][NAIA::TrTrack::Side::X];
8  auto chargeY = event.trTrackPlus->LayerCharge[jlayer][recoType][NAIA::TrTrack::Side::Y];
9  auto result = false;
10 
11  if(chargeX + chargeY){
12  if (fabs(chargeX - chargeY) / (chargeX + chargeY) < max)
13  result = true;
14  else
15  result = false;
16  }
17  return result;
18  });
19 }
NAIA::Event Event
Definition: matchers.h:11
ChargeAsymmetry(unsigned int layer, float max, NAIA::TrTrack::ChargeRecoType recoType)
RefCMatcher m_matcher
Definition: Selection.h:73