ATLAS Offline Software
Loading...
Searching...
No Matches
GenericTrackSelector.cxx
Go to the documentation of this file.
1
19
21
23
24#include <cmath>
25
26
28 : asg::AsgTool( name ) { }
29
30
31
33 if ( m_initialized ) return StatusCode::SUCCESS;
35 m_initialized = true;
36 return StatusCode::SUCCESS;
37}
38
39
40
42
44
48
49 if ( t.pt() < m_minPt ) return false;
50 if ( t.pt() > m_maxPt ) return false;
51
55
56 if ( t.hasParent() ) {
57 if ( t.parent()->ET() < m_minET ) return false;
58 if ( std::fabs(t.parent()->ET()/t.pt()) < m_minETovpt ) return false;
59 }
60 else {
61 if ( t.ET() < m_minET ) return false;
62 if ( std::fabs(t.ET()/t.pt()) < m_minETovpt ) return false;
63 }
64
65 if ( t.eta() > m_maxEta ) return false;
66 if ( t.eta() < m_minEta ) return false;
67 if ( std::fabs(t.eta()) < m_minAbsEta ) return false;
68
69 if ( t.d0() < m_minD0 ) return false;
70 if ( t.d0() > m_maxD0 ) return false;
71 if ( t.z0() < m_minZ0 ) return false;
72 if ( t.z0() > m_maxZ0 ) return false;
73
74 if ( std::fabs(t.d0()) < m_minAbsD0 ) return false;
75 if ( std::fabs(t.d0()) > m_maxAbsD0 ) return false;
76 if ( std::fabs(t.z0()) < m_minAbsZ0 ) return false;
77 if ( std::fabs(t.z0()) > m_maxAbsZ0 ) return false;
78
79 if ( t.phi() < m_minPhi ) return false;
80 if ( t.phi() > m_maxPhi ) return false;
81
83 // if ( std::fabs(t.phi()) < m_minAbsPhi ) return false;
84 // if ( std::fabs(t.phi()) > m_maxAbsPhi ) return false;
85
88
89 double qoverpt = t.qOverP()/std::sin(t.theta());
90
91 if ( qoverpt < m_minQoPT ) return false;
92 if ( qoverpt > m_maxQoPT ) return false;
93
97 if ( std::fabs(qoverpt) < m_minAbsQoPT ) return false;
98 if ( std::fabs(qoverpt) > m_maxAbsQoPT ) return false;
99
100 //}
101
102 return true;
103}
104
#define ATH_CHECK
Evaluate an expression and check for errors.
emacs: this is -*- c++ -*-
Gaudi::Property< ConfiguredValue< float > > m_maxZ0
Gaudi::Property< ConfiguredValue< float > > m_minAbsEta
Gaudi::Property< ConfiguredValue< float > > m_maxQoPT
Gaudi::Property< ConfiguredValue< float > > m_minPhi
Gaudi::Property< ConfiguredValue< float > > m_maxAbsQoPT
Gaudi::Property< ConfiguredValue< float > > m_minETovpt
Gaudi::Property< ConfiguredValue< float > > m_minAbsZ0
Gaudi::Property< ConfiguredValue< float > > m_maxAbsD0
Gaudi::Property< ConfiguredValue< float > > m_minET
Gaudi::Property< ConfiguredValue< float > > m_minPt
Gaudi::Property< ConfiguredValue< float > > m_maxEta
virtual bool selectTrack(const TrackView &t) const
Gaudi::Property< ConfiguredValue< float > > m_minAbsD0
Gaudi::Property< ConfiguredValue< float > > m_maxD0
Gaudi::Property< ConfiguredValue< float > > m_minZ0
Gaudi::Property< ConfiguredValue< float > > m_minAbsQoPT
Gaudi::Property< ConfiguredValue< float > > m_maxPt
Gaudi::Property< ConfiguredValue< float > > m_maxPhi
GenericTrackSelector(const std::string &name)
Gaudi::Property< ConfiguredValue< float > > m_minEta
Gaudi::Property< ConfiguredValue< float > > m_minD0
virtual StatusCode initialize() override
Dummy implementation of the initialisation function.
Gaudi::Property< ConfiguredValue< float > > m_minQoPT
Abs phi ???? why would anyone ever want abs(phi) ??
Gaudi::Property< ConfiguredValue< float > > m_maxAbsZ0
forward declaration required for function prototype
Definition TrackView.h:43
AsgTool(const std::string &name)
Constructor specifying the tool instance's name.
Definition AsgTool.cxx:58
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition AsgTool.h:133