File indexing completed on 2024-04-06 12:28:35
0001 #ifndef RecoTracker_PixelSeeding_plugins_PixelTripletNoTipGenerator_h
0002 #define RecoTracker_PixelSeeding_plugins_PixelTripletNoTipGenerator_h
0003
0004 #include "FWCore/Framework/interface/FrameworkfwdMostUsed.h"
0005 #include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
0006 #include "RecoTracker/PixelSeeding/interface/HitTripletGeneratorFromPairAndLayers.h"
0007 #include "RecoTracker/Record/interface/TrackerMultipleScatteringRecord.h"
0008 #include "RecoTracker/TkMSParametrization/interface/MultipleScatteringParametrisationMaker.h"
0009
0010 #include "CombinedHitTripletGenerator.h"
0011
0012 #include <utility>
0013 #include <vector>
0014
0015 class PixelTripletNoTipGenerator : public HitTripletGeneratorFromPairAndLayers {
0016 typedef CombinedHitTripletGenerator::LayerCacheType LayerCacheType;
0017
0018 public:
0019 PixelTripletNoTipGenerator(const edm::ParameterSet& cfg, edm::ConsumesCollector& iC);
0020
0021 ~PixelTripletNoTipGenerator() override;
0022
0023 void hitTriplets(const TrackingRegion& region,
0024 OrderedHitTriplets& trs,
0025 const edm::Event& ev,
0026 const edm::EventSetup& es,
0027 const SeedingLayerSetsHits::SeedingLayerSet& pairLayers,
0028 const std::vector<SeedingLayerSetsHits::SeedingLayer>& thirdLayers) override;
0029 void hitTriplets(const TrackingRegion& region,
0030 OrderedHitTriplets& result,
0031 const edm::EventSetup& es,
0032 const HitDoublets& doublets,
0033 const RecHitsSortedInPhi** thirdHitMap,
0034 const std::vector<const DetLayer*>& thirdLayerDetLayer,
0035 const int nThirdLayers) override;
0036
0037 private:
0038 edm::ESGetToken<MagneticField, IdealMagneticFieldRecord> fieldToken_;
0039 edm::ESGetToken<MultipleScatteringParametrisationMaker, TrackerMultipleScatteringRecord> msmakerToken_;
0040 float extraHitRZtolerance;
0041 float extraHitRPhitolerance;
0042 float extraHitPhiToleranceForPreFiltering;
0043 double theNSigma;
0044 double theChi2Cut;
0045 };
0046 #endif