00001 #ifndef PixelTripletNoTipGenerator_H 00002 #define PixelTripletNoTipGenerator_H 00003 00004 #include "RecoPixelVertexing/PixelTriplets/interface/HitTripletGeneratorFromPairAndLayers.h" 00005 #include "RecoTracker/TkHitPairs/interface/HitPairGenerator.h" 00006 #include "CombinedHitTripletGenerator.h" 00007 #include "RecoTracker/TkSeedingLayers/interface/SeedingLayer.h" 00008 00009 namespace edm { class Event; class EventSetup; } 00010 00011 #include <utility> 00012 #include <vector> 00013 00014 00015 class PixelTripletNoTipGenerator : public HitTripletGeneratorFromPairAndLayers { 00016 typedef CombinedHitTripletGenerator::LayerCacheType LayerCacheType; 00017 public: 00018 PixelTripletNoTipGenerator(const edm::ParameterSet& cfg); 00019 00020 virtual ~PixelTripletNoTipGenerator() { delete thePairGenerator; } 00021 00022 virtual void init( const HitPairGenerator & pairs, 00023 const std::vector<ctfseeding::SeedingLayer> & layers, LayerCacheType* layerCache); 00024 00025 virtual void hitTriplets( const TrackingRegion& region, OrderedHitTriplets & trs, 00026 const edm::Event & ev, const edm::EventSetup& es); 00027 00028 const HitPairGenerator & pairGenerator() const { return *thePairGenerator; } 00029 const std::vector<ctfseeding::SeedingLayer> & thirdLayers() const { return theLayers; } 00030 00031 private: 00032 HitPairGenerator * thePairGenerator; 00033 std::vector<ctfseeding::SeedingLayer> theLayers; 00034 LayerCacheType * theLayerCache; 00035 float extraHitRZtolerance; 00036 float extraHitRPhitolerance; 00037 float extraHitPhiToleranceForPreFiltering; 00038 double theNSigma; 00039 double theChi2Cut; 00040 }; 00041 #endif