File indexing completed on 2024-04-06 12:31:39
0001 #ifndef TrajectoryCleaning_FastTrajectoryCleaner_h
0002 #define TrajectoryCleaning_FastTrajectoryCleaner_h
0003
0004 #include "TrackingTools/TrajectoryCleaning/interface/TrajectoryCleaner.h"
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014 class FastTrajectoryCleaner final : public TrajectoryCleaner {
0015 public:
0016 using TrajectoryPointerContainer = TrajectoryCleaner::TrajectoryPointerContainer;
0017 using TempTrajectoryContainer = TrajectoryCleaner::TempTrajectoryContainer;
0018
0019 FastTrajectoryCleaner() : validHitBonus_(0.5f * 5.0f), missingHitPenalty_(20.0f), dismissSeed_(true) {}
0020
0021 FastTrajectoryCleaner(float bonus, float penalty, bool noSeed = true)
0022 : validHitBonus_(0.5f * bonus), missingHitPenalty_(penalty), dismissSeed_(noSeed) {}
0023
0024 FastTrajectoryCleaner(const edm::ParameterSet& iConfig)
0025 : validHitBonus_(0.5 * iConfig.getParameter<double>("ValidHitBonus")),
0026 missingHitPenalty_(iConfig.getParameter<double>("MissingHitPenalty")),
0027 dismissSeed_(iConfig.getParameter<bool>("dismissSeed")) {}
0028
0029 ~FastTrajectoryCleaner() override {}
0030
0031 void clean(TempTrajectoryContainer&) const override;
0032 void clean(TrajectoryPointerContainer&) const override;
0033
0034 private:
0035 float validHitBonus_;
0036 float missingHitPenalty_;
0037 bool dismissSeed_;
0038 };
0039
0040 #endif