00001 #ifndef RecoMuon_MuonSeedGenerator_MuonSeedVFinder_H 00002 #define RecoMuon_MuonSeedGenerator_MuonSeedVFinder_H 00003 00015 #include "DataFormats/TrajectorySeed/interface/TrajectorySeed.h" 00016 #include "RecoMuon/TransientTrackingRecHit/interface/MuonTransientTrackingRecHit.h" 00017 #include "RecoMuon/MuonSeedGenerator/src/MuonSeedPtExtractor.h" 00018 #include "MagneticField/Engine/interface/MagneticField.h" 00019 #include <vector> 00020 00021 class MuonSeedVFinder { 00022 public: 00023 00024 virtual ~MuonSeedVFinder() {} 00025 virtual void setBField(const MagneticField * field) = 0; 00026 00027 virtual void seeds(const MuonTransientTrackingRecHit::MuonRecHitContainer & hits, 00028 std::vector<TrajectorySeed> & result) = 0; 00029 00030 void setBeamSpot(const GlobalVector & gv) {thePtExtractor->setBeamSpot(gv);} 00031 protected: 00032 MuonSeedPtExtractor * thePtExtractor; 00033 00034 }; 00035 #endif