NSL
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends
TrackerLayerChargeAsymmetry.h
Go to the documentation of this file.
1 #ifndef NSL_SELECTIONS_TRACKER_TRACKERLAYERCHARGEASYMMETRY_H
2 #define NSL_SELECTIONS_TRACKER_TRACKERLAYERCHARGEASYMMETRY_H
3 
4 // our headers
5 #include "NSL/Selection.h"
6 
7 namespace NSL {
8 namespace Selections {
9 
10 namespace TrackerLayer {
11 class ChargeAsymmetry : public Selection {
12 public:
13  ChargeAsymmetry(unsigned int layer, float max, NAIA::TrTrack::ChargeRecoType recoType);
14 };
15 } // namespace TrackerLayer
16 
17 namespace { // hidden
18 namespace tl_base = ::NSL::Selections::TrackerLayer;
19 }
20 
21 namespace Common {
22 namespace TrackerLayer {
23 
24 namespace { // hidden
25 float asymmLimit(unsigned int layer) {
26 
27  float limit = 0;
28  if (layer == 1)
29  limit = 0.2f;
30 
31  return limit;
32 }
33 } // namespace
34 
36 public:
37  explicit ChargeAsymmetry(unsigned int layer, NAIA::TrTrack::ChargeRecoType recoType)
38  : tl_base::ChargeAsymmetry(layer, asymmLimit(layer), recoType) {}
39 };
40 
41 } // namespace TrackerLayer
42 } // namespace Common
43 
44 } // namespace Selections
45 } // namespace NSL
46 
47 #endif
ChargeAsymmetry(unsigned int layer, NAIA::TrTrack::ChargeRecoType recoType)
ChargeAsymmetry(unsigned int layer, float max, NAIA::TrTrack::ChargeRecoType recoType)