File indexing completed on 2023-03-17 11:22:54
0001 #ifndef CombinedHitPairGenerator_H
0002 #define CombinedHitPairGenerator_H
0003
0004 #include <vector>
0005 #include "RecoTracker/TkHitPairs/interface/HitPairGenerator.h"
0006 #include "RecoTracker/TkHitPairs/interface/LayerHitMapCache.h"
0007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0008 #include "FWCore/Utilities/interface/EDGetToken.h"
0009
0010 class TrackingRegion;
0011 class OrderedHitPairs;
0012 class HitPairGeneratorFromLayerPair;
0013 class SeedingLayerSetsHits;
0014 namespace edm {
0015 class Event;
0016 class EventSetup;
0017 }
0018
0019 #include <memory>
0020
0021
0022
0023
0024
0025 class CombinedHitPairGenerator : public HitPairGenerator {
0026 public:
0027 typedef LayerHitMapCache LayerCacheType;
0028
0029 public:
0030 CombinedHitPairGenerator(const edm::ParameterSet& cfg, edm::ConsumesCollector& iC);
0031 ~CombinedHitPairGenerator() override;
0032
0033
0034 void hitPairs(const TrackingRegion& reg,
0035 OrderedHitPairs& result,
0036 const edm::Event& ev,
0037 const edm::EventSetup& es) override;
0038
0039 private:
0040 edm::EDGetTokenT<SeedingLayerSetsHits> theSeedingLayerToken;
0041
0042 LayerCacheType theLayerCache;
0043
0044 std::unique_ptr<HitPairGeneratorFromLayerPair> theGenerator;
0045 };
0046 #endif