00001 #ifndef RecoMuon_TrackingTools_MuonTrajectoryCleaner_H 00002 #define RecoMuon_TrackingTools_MuonTrajectoryCleaner_H 00003 00012 #include "TrackingTools/PatternTools/interface/Trajectory.h" 00013 #include "RecoMuon/TrackingTools/interface/MuonCandidate.h" 00014 #include "FWCore/Framework/interface/Event.h" 00015 #include <vector> 00016 00017 //class Event; 00018 class MuonTrajectoryCleaner { 00019 public: 00020 typedef MuonCandidate::TrajectoryContainer TrajectoryContainer; 00021 typedef MuonCandidate::CandidateContainer CandidateContainer; 00022 00023 00025 MuonTrajectoryCleaner() : reportGhosts_(false) {} 00026 00028 MuonTrajectoryCleaner(bool reportGhosts) : reportGhosts_(reportGhosts) {} 00029 00031 virtual ~MuonTrajectoryCleaner() {}; 00032 00033 // Operations 00034 00036 void clean(TrajectoryContainer &muonTrajectories, edm::Event& evt); //used by reference... 00037 00039 void clean(CandidateContainer &muonTrajectories); //used by reference... 00040 00041 protected: 00042 00043 private: 00044 bool reportGhosts_; 00045 00046 }; 00047 #endif 00048