13#ifndef TMSelector_FLAG_
14#define TMSelector_FLAG_
16#ifdef TRKRECO_DEBUG_DETAIL
45 void dump(
const std::string& message = std::string(
"" ),
46 const std::string& prefix = std::string(
"" ) )
const;
100 bool _nSuperLayersDefined;
102 bool _maxImpactDefined;
103 bool _maxSigmaDefined;
106 unsigned _nSuperLayers;
111 bool _nLinksStereoDefined;
112 bool _maxDistanceDefined;
114 unsigned _nLinksStereo;
120#ifdef TMSelector_NO_INLINE
124# define TMSelector_INLINE_DEFINE_HERE
127#ifdef TMSelector_INLINE_DEFINE_HERE
131 if ( !_nLinksDefined ) std::cout <<
"TMSelector !!! min. nLinks is not defined" << std::endl;
137 _nLinksDefined =
true;
143 if ( !_nSuperLayers )
144 std::cout <<
"TMSelector !!! min. nSuperLayers is not defined" << std::endl;
146 return _nSuperLayers;
150 _nSuperLayersDefined =
true;
151 return _nSuperLayers = a;
156 if ( !_minPtDefined ) std::cout <<
"TMSelector !!! min. pt is not defined" << std::endl;
162 _minPtDefined =
true;
168 if ( !_maxImpactDefined )
169 std::cout <<
"TMSelector !!! max. impact is not defined" << std::endl;
175 _maxImpactDefined =
true;
176 return _maxImpact = a;
181 if ( !_maxSigmaDefined )
182 std::cout <<
"TMSelector !!! max. sigma is not defined" << std::endl;
188 _maxSigmaDefined =
true;
189 return _maxSigma = a;
194 if ( !_nLinksStereoDefined )
195 std::cout <<
"TMSelector !!! min. nLinksStereo is not defined" << std::endl;
197 return _nLinksStereo;
201 _nLinksStereoDefined =
true;
202 return _nLinksStereo = a;
207 if ( !_maxDistanceDefined )
208 std::cout <<
"TMSelector !!! max. distance is not defined" << std::endl;
214 _maxDistanceDefined =
true;
215 return _maxDistance = a;
A class to represent a circle in tracking.
A class to select a TTrackBase object.
double maxSigma(double)
sets max. sigma for each TMLink.
double minPt(double)
sets min. pt required.
double maxImpact(double)
sets max. impact(2D) required.
double maxDistance(void) const
returns max. distance required for stereo hits.
unsigned nSuperLayers(void) const
returns min. # of super layers required.
unsigned nSuperLayers(unsigned)
sets # of super layers required.
unsigned nLinksStereo(unsigned)
sets min. # of stereo hits(TMLinks) requried.
unsigned nLinks(unsigned)
sets # of hits(TMLinks) requried.
double maxImpact(void) const
returns max. impact(2D) required.
double maxDistance(double)
sets max. distance required for stereo hits.
unsigned nLinks(void) const
returns min. # of hits(TMLinks) requried.
double maxSigma(void) const
returns max. sigma for each TMLink.
virtual ~TMSelector()
Destructor.
unsigned nLinksStereo(void) const
returns min. # of stereo hits(TMLinks) requried.
double minPt(void) const
returns min. pt required.
void dump(const std::string &message=std::string(""), const std::string &prefix=std::string("")) const
dumps debug information.
bool preSelect(const TTrackBase &) const
returns true if given track satisfys criteria before fitting.
bool select(TTrackBase &) const
returns true if given track satisfys criteria after fitting.
TMSelector(const TMSelector &)
Copy constructor.
A virtual class for a track class in tracking.