CMS 3D CMS Logo

HitTripletGeneratorFromPairAndLayers.h
Go to the documentation of this file.
1 #ifndef RecoTracker_PixelSeeding_HitTripletGeneratorFromPairAndLayers_h
2 #define RecoTracker_PixelSeeding_HitTripletGeneratorFromPairAndLayers_h
3 
11 #include <vector>
14 
15 namespace edm {
16  class ParameterSet;
17  class Event;
18  class EventSetup;
19  class ConsumesCollector;
21 } // namespace edm
22 class TrackingRegion;
24 
26 public:
28 
29  explicit HitTripletGeneratorFromPairAndLayers(unsigned int maxElement = 0);
32 
34 
35  void init(std::unique_ptr<HitPairGeneratorFromLayerPair>&& pairs, LayerCacheType* layerCache);
36 
38 
39  virtual void hitTriplets(const TrackingRegion& region,
40  OrderedHitTriplets& trs,
41  const edm::Event& ev,
42  const edm::EventSetup& es,
43  const SeedingLayerSetsHits::SeedingLayerSet& pairLayers,
44  const std::vector<SeedingLayerSetsHits::SeedingLayer>& thirdLayers) = 0;
45 
46  virtual void hitTriplets(const TrackingRegion& region,
48  const edm::EventSetup& es,
49  const HitDoublets& doublets,
50  const RecHitsSortedInPhi** thirdHitMap,
51  const std::vector<const DetLayer*>& thirdLayerDetLayer,
52  const int nThirdLayers) = 0;
53 
54 protected:
55  std::unique_ptr<HitPairGeneratorFromLayerPair> thePairGenerator;
57  const unsigned int theMaxElement;
58 };
59 #endif
static void fillDescriptions(edm::ParameterSetDescription &desc)
void init(std::unique_ptr< HitPairGeneratorFromLayerPair > &&pairs, LayerCacheType *layerCache)
const HitPairGeneratorFromLayerPair & pairGenerator() const
std::unique_ptr< HitPairGeneratorFromLayerPair > thePairGenerator
HLT enums.
virtual void hitTriplets(const TrackingRegion &region, OrderedHitTriplets &trs, const edm::Event &ev, const edm::EventSetup &es, const SeedingLayerSetsHits::SeedingLayerSet &pairLayers, const std::vector< SeedingLayerSetsHits::SeedingLayer > &thirdLayers)=0