File indexing completed on 2023-03-17 11:26:37
0001 #ifndef TrajectoryCleaning_TrajectoryCleaner_h
0002 #define TrajectoryCleaning_TrajectoryCleaner_h
0003
0004 #include "TrackingTools/PatternTools/interface/Trajectory.h"
0005 #include "TrackingTools/PatternTools/interface/TempTrajectory.h"
0006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0007
0008
0009
0010
0011
0012 class TrackingComponentsRecord;
0013
0014 class TrajectoryCleaner {
0015 public:
0016 typedef TrackingComponentsRecord Record;
0017 typedef std::vector<Trajectory> TrajectoryContainer;
0018 typedef std::vector<Trajectory*> TrajectoryPointerContainer;
0019 typedef TrajectoryContainer::iterator TrajectoryIterator;
0020 typedef TrajectoryPointerContainer::iterator TrajectoryPointerIterator;
0021
0022 using TempTrajectoryContainer = std::vector<TempTrajectory>;
0023
0024 TrajectoryCleaner() {}
0025 TrajectoryCleaner(edm::ParameterSet& iConfig) {}
0026 virtual ~TrajectoryCleaner() {}
0027
0028 virtual void clean(TempTrajectoryContainer&) const;
0029 virtual void clean(TrajectoryContainer&) const;
0030 virtual void clean(TrajectoryPointerContainer&) const = 0;
0031 };
0032
0033 #endif