16 if(s1.
nHits()==0 && s2.
nHits()==0)
return false;
32 while(h1 != s1.
recHits().second &&
45 (std::vector<Trajectory> & trajs)
const 47 if(trajs.size() == 0)
return;
50 unsigned int best = 0;
53 for(
unsigned int actual = 1; actual < trajs.size(); actual++)
55 if(sameSeed(trajs[best].
seed(), trajs[actual].
seed()))
61 if(trajs[best].foundHits() != trajs[actual].foundHits())
63 if(trajs[best].foundHits() > trajs[actual].foundHits())
65 else {
remove = best; best = actual; }
69 if(trajs[best].chiSquared() < trajs[actual].chiSquared())
71 else {
remove = best; best = actual; }
74 trajs[
remove].invalidate();
78 LogTrace(
"TrajectoryCleanerBySharedSeeds") <<
" [TrajecCleaner] cleaned trajs : 1/" << trajs.size()
79 <<
" (with " << trajs[best].measurements().size() <<
" hits)" << std::endl;
std::vector< Trajectory * > TrajectoryPointerContainer
recHitContainer::const_iterator const_iterator
std::pair< const_iterator, const_iterator > range
virtual void clean(TrajectoryPointerContainer &) const
bool sameSeed(const TrajectorySeed &s1, const TrajectorySeed &s2) const
unsigned int nHits() const