Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:27:58

0001 #ifndef RedundantSeedCleaner_H
0002 #define RedundantSeedCleaner_H
0003 #include "TrackingTools/PatternTools/interface/Trajectory.h"
0004 #include "DataFormats/TrajectorySeed/interface/TrajectorySeed.h"
0005 #include <vector>
0006 
0007 class RedundantSeedCleaner {
0008 public:
0009   virtual ~RedundantSeedCleaner() {}
0010   /** \brief Informs the cleaner that a new trajectory has been made, in case the cleaner keeps a local collection of those tracks (i.e. in a map) */
0011   virtual void add(const Trajectory *traj) = 0;
0012 
0013   /** \brief Provides the cleaner a pointer to the vector where trajectories are stored, in case it does not want to keep a local collection of trajectories */
0014   virtual void init(const std::vector<Trajectory> *vect) = 0;
0015 
0016   /** \brief Returns true if the seed is not overlapping with another trajectory */
0017   virtual bool good(const TrajectorySeed *seed) = 0;
0018 
0019   /** \brief Tells the cleaner that the seeds are finished, and so it can clear any cache it has */
0020   virtual void done() = 0;
0021 };
0022 #endif