CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_1/src/RecoTracker/TkHitPairs/interface/HitPairGeneratorFromLayerPair.h

Go to the documentation of this file.
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