CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/TrackingTools/TrajectoryCleaning/interface/TrajectoryCleanerBySharedHits.h

Go to the documentation of this file.
00001 #ifndef TrajectoryCleaning_TrajectoryCleanerBySharedHits_h
00002 #define TrajectoryCleaning_TrajectoryCleanerBySharedHits_h
00003 
00004 #include "TrackingTools/TrajectoryCleaning/interface/TrajectoryCleaner.h"
00005 
00016 class TrajectoryCleanerBySharedHits : public TrajectoryCleaner {
00017 
00018  public:
00019 
00020   typedef std::vector<Trajectory*>      TrajectoryPointerContainer;
00021 
00022   TrajectoryCleanerBySharedHits() :
00023     theFraction(0.19),
00024     validHitBonus_(5.0),
00025     missingHitPenalty_(20.0),
00026     allowSharedFirstHit(true){}
00027   TrajectoryCleanerBySharedHits(const edm::ParameterSet & iConfig) :
00028     theFraction(iConfig.getParameter<double>("fractionShared")),
00029     validHitBonus_(iConfig.getParameter<double>("ValidHitBonus")),
00030     missingHitPenalty_(iConfig.getParameter<double>("MissingHitPenalty")),
00031     allowSharedFirstHit(iConfig.getParameter<bool>("allowSharedFirstHit")){}
00032 
00033   virtual ~TrajectoryCleanerBySharedHits(){};
00034 
00035   using TrajectoryCleaner::clean;
00036   virtual void clean( TrajectoryPointerContainer&) const;
00037 
00038  private:
00039   double theFraction;
00040   double validHitBonus_;
00041   double missingHitPenalty_;
00042   bool allowSharedFirstHit;
00043 
00044 };
00045 
00046 #endif