00001 #ifndef RecoTracker_TkSeedGenerator_CosmicSeedCreator_H 00002 #define RecoTracker_TkSeedGenerator_CosmicSeedCreator_H 00003 00004 #include "RecoTracker/TkSeedGenerator/interface/SeedCreator.h" 00005 #include "RecoTracker/TkSeedingLayers/interface/SeedComparitor.h" 00006 #include "FWCore/Framework/interface/ESHandle.h" 00007 #include "MagneticField/Engine/interface/MagneticField.h" 00008 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00009 00010 00011 00012 class CosmicSeedCreator : public SeedCreator { 00013 00014 public: 00015 CosmicSeedCreator( const edm::ParameterSet & extra ) 00016 { 00017 maxseeds_ = extra.getParameter<int>("maxseeds"); 00018 } 00019 00020 virtual ~CosmicSeedCreator(){} 00021 00022 // initialize the "event dependent state" 00023 virtual void init(const TrackingRegion & region, 00024 const edm::EventSetup& es, 00025 const SeedComparitor *filter); 00026 00027 // make job 00028 // fill seedCollection with the "TrajectorySeed" 00029 virtual void makeSeed(TrajectorySeedCollection & seedCollection, 00030 const SeedingHitSet & hits); 00031 00032 00033 private: 00034 const TrackingRegion * region = nullptr; 00035 const SeedComparitor *filter = nullptr; 00036 edm::ESHandle<MagneticField> bfield; 00037 00038 unsigned int maxseeds_; 00039 }; 00040 #endif