File indexing completed on 2024-04-06 12:28:33
0001 #ifndef RecoTracker_PixelSeeding_plugins_CombinedHitTripletGenerator_h
0002 #define RecoTracker_PixelSeeding_plugins_CombinedHitTripletGenerator_h
0003
0004
0005
0006
0007
0008
0009 #include <vector>
0010 #include <memory>
0011 #include "RecoTracker/PixelSeeding/interface/HitTripletGenerator.h"
0012 #include "RecoTracker/TkHitPairs/interface/LayerHitMapCache.h"
0013 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0014 #include "FWCore/Utilities/interface/EDGetToken.h"
0015
0016 #include <string>
0017 #include <memory>
0018
0019 class TrackingRegion;
0020 class HitTripletGeneratorFromPairAndLayers;
0021 class SeedingLayerSetsHits;
0022
0023 namespace edm {
0024 class Event;
0025 }
0026 namespace edm {
0027 class EventSetup;
0028 }
0029
0030 class CombinedHitTripletGenerator : public HitTripletGenerator {
0031 public:
0032 typedef LayerHitMapCache LayerCacheType;
0033
0034 public:
0035 CombinedHitTripletGenerator(const edm::ParameterSet& cfg, edm::ConsumesCollector& iC);
0036
0037 ~CombinedHitTripletGenerator() override;
0038
0039
0040 void hitTriplets(const TrackingRegion& reg,
0041 OrderedHitTriplets& triplets,
0042 const edm::Event& ev,
0043 const edm::EventSetup& es) override;
0044
0045 private:
0046 edm::EDGetTokenT<SeedingLayerSetsHits> theSeedingLayerToken;
0047
0048 LayerCacheType theLayerCache;
0049
0050 std::unique_ptr<HitTripletGeneratorFromPairAndLayers> theGenerator;
0051 };
0052 #endif