CMS 3D CMS Logo

MinHitsTrajectoryFilter.h
Go to the documentation of this file.
1 #ifndef MinHitsTrajectoryFilter_H
2 #define MinHitsTrajectoryFilter_H
3 
6 
14 public:
15 
17 
19  : theMinHits ( pset.getParameter<int>("minimumNumberOfHits") )
20  , theSeedPairPenalty( pset.getParameter<int>("seedPairPenalty") )
21  {}
22 
23  bool qualityFilter( const Trajectory& traj) const override { return QF<Trajectory>(traj);}
24  bool qualityFilter( const TempTrajectory& traj) const override { return QF<TempTrajectory>(traj);}
25 
28 
29  std::string name() const override {return "MinHitsTrajectoryFilter";}
30 
33  desc.add<int>("minimumNumberOfHits",5);
34  desc.add<int>("seedPairPenalty", 0);
35  return desc;
36  }
37 
38 protected:
39 
40  template<class T> bool QF(const T & traj) const{
41  int seedPenalty = (2==traj.seedNHits()) ? theSeedPairPenalty: 0; // increase by one if seed-doublet...
42  return (traj.foundHits() >= theMinHits + seedPenalty);
43  }
44 
47 
48 };
49 
50 #endif
MinHitsTrajectoryFilter(const edm::ParameterSet &pset, edm::ConsumesCollector &iC)
MinHitsTrajectoryFilter(int minHits=5, int seedPairPenalty=0)
bool QF(const T &traj) const
edm::ParameterSetDescription getFilledConfigurationDescription()
std::string name() const override
ParameterDescriptionBase * add(U const &iLabel, T const &value)
bool qualityFilter(const TempTrajectory &traj) const override
static const bool toBeContinuedIfNotContributing
bool qualityFilter(const Trajectory &traj) const override
long double T
bool toBeContinued(Trajectory &) const override
bool toBeContinued(TempTrajectory &) const override