00001 #ifndef HitPairGeneratorFromLayerPair_h 00002 #define HitPairGeneratorFromLayerPair_h 00003 00004 #include "RecoTracker/TkHitPairs/interface/HitPairGenerator.h" 00005 #include "RecoTracker/TkHitPairs/interface/CombinedHitPairGenerator.h" 00006 #include "RecoTracker/TkSeedingLayers/interface/SeedingLayer.h" 00007 #include "FWCore/Framework/interface/EventSetup.h" 00008 00009 class DetLayer; 00010 class TrackingRegion; 00011 00012 class HitPairGeneratorFromLayerPair : public HitPairGenerator { 00013 00014 public: 00015 00016 typedef CombinedHitPairGenerator::LayerCacheType LayerCacheType; 00017 typedef ctfseeding::SeedingLayer Layer; 00018 00019 HitPairGeneratorFromLayerPair(const Layer& inner, 00020 const Layer& outer, 00021 LayerCacheType* layerCache, 00022 unsigned int nSize=30000, 00023 unsigned int max=0); 00024 00025 virtual ~HitPairGeneratorFromLayerPair() { } 00026 00027 virtual void hitPairs( const TrackingRegion& reg, OrderedHitPairs & prs, 00028 const edm::Event & ev, const edm::EventSetup& es); 00029 00030 virtual HitPairGeneratorFromLayerPair* clone() const { 00031 return new HitPairGeneratorFromLayerPair(*this); 00032 } 00033 00034 const Layer & innerLayer() const { return theInnerLayer; } 00035 const Layer & outerLayer() const { return theOuterLayer; } 00036 00037 private: 00038 LayerCacheType & theLayerCache; 00039 Layer theOuterLayer; 00040 Layer theInnerLayer; 00041 }; 00042 00043 #endif