CMS 3D CMS Logo

SeedFinderSelector.h
Go to the documentation of this file.
1 #ifndef SEEDFINDERSELECTOR_H
2 #define SEEDFINDERSELECTOR_H
3 
4 #include <vector>
5 #include <memory>
6 #include <string>
7 
17 
18 class TrackingRegion;
19 class FastTrackerRecHit;
25 class MagneticField;
28 
30 public:
32 
34 
35  void initEvent(const edm::Event&, const edm::EventSetup&);
36 
37  void setTrackingRegion(const TrackingRegion* trackingRegion) { trackingRegion_ = trackingRegion; }
38 
39  bool pass(const std::vector<const FastTrackerRecHit*>& hits) const;
40  //new for Phase1
42 
43 private:
44  std::unique_ptr<HitTripletGeneratorFromPairAndLayers> pixelTripletGenerator_;
45  std::unique_ptr<MultiHitGeneratorFromPairAndLayers> multiHitGenerator_;
55  const MagneticField* field_ = nullptr;
57  std::unique_ptr<CAHitTripletGenerator> CAHitTriplGenerator_;
58  std::unique_ptr<CAHitQuadrupletGenerator> CAHitQuadGenerator_;
59  std::unique_ptr<SeedingLayerSetsBuilder> seedingLayers_;
60  std::unique_ptr<SeedingLayerSetsHits> seedingLayer;
61  std::vector<unsigned> layerPairs_;
62  std::vector<SeedingLayerSetsBuilder::SeedingLayerId> seedingLayerIds;
63 };
64 
65 #endif
SeedFinderSelector(const edm::ParameterSet &, edm::ConsumesCollector &&)
void setTrackingRegion(const TrackingRegion *trackingRegion)
std::unique_ptr< CAHitQuadrupletGenerator > CAHitQuadGenerator_
const edm::EventSetup * eventSetup_
std::unique_ptr< SeedingLayerSetsHits > seedingLayer
const MagneticField * field_
const edm::ESGetToken< MultipleScatteringParametrisationMaker, TrackerMultipleScatteringRecord > msMakerESToken_
SeedingLayerSetsBuilder::SeedingLayerId Layer_tuple(const FastTrackerRecHit *hit) const
std::unique_ptr< HitTripletGeneratorFromPairAndLayers > pixelTripletGenerator_
std::vector< SeedingLayerSetsBuilder::SeedingLayerId > seedingLayerIds
std::tuple< GeomDetEnumerators::SubDetector, TrackerDetSide, int > SeedingLayerId
std::vector< unsigned > layerPairs_
const TrackingRegion * trackingRegion_
const edm::ESGetToken< MagneticField, IdealMagneticFieldRecord > fieldESToken_
void initEvent(const edm::Event &, const edm::EventSetup &)
bool pass(const std::vector< const FastTrackerRecHit *> &hits) const
const edm::ESGetToken< MeasurementTracker, CkfComponentsRecord > measurementTrackerESToken_
std::unique_ptr< SeedingLayerSetsBuilder > seedingLayers_
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > trackerTopologyESToken_
const MeasurementTracker * measurementTracker_
const std::string measurementTrackerLabel_
const MultipleScatteringParametrisationMaker * msmaker_
std::unique_ptr< CAHitTripletGenerator > CAHitTriplGenerator_
const TrackerTopology * trackerTopology_
std::unique_ptr< MultiHitGeneratorFromPairAndLayers > multiHitGenerator_