CMS 3D CMS Logo

MuonTrackingRegionBuilder.h
Go to the documentation of this file.
1 #ifndef RecoMuon_TrackingTools_MuonTrackingRegionBuilder_H
2 #define RecoMuon_TrackingTools_MuonTrackingRegionBuilder_H
3 
24 
28 
31 
34 
35 class MuonServiceProxy;
37 
38 namespace edm {class ParameterSet; class Event;}
39 
41 
42  public:
43 
45  explicit MuonTrackingRegionBuilder(const edm::ParameterSet& par, edm::ConsumesCollector& iC) { build(par, iC); }
46  explicit MuonTrackingRegionBuilder(const edm::ParameterSet& par, edm::ConsumesCollector&& iC) { build(par, iC); }
47 
50 
52  virtual std::vector<std::unique_ptr<TrackingRegion> > regions(const edm::Event&, const edm::EventSetup&) const override;
53 
55  std::unique_ptr<RectangularEtaPhiTrackingRegion> region(const reco::TrackRef&) const;
56  std::unique_ptr<RectangularEtaPhiTrackingRegion> region(const reco::Track& t) const { return region(t,*theEvent); }
57  std::unique_ptr<RectangularEtaPhiTrackingRegion> region(const reco::Track&, const edm::Event&) const;
58 
60  virtual void setEvent(const edm::Event&);
61 
63  static void fillDescriptions(edm::ParameterSetDescription& descriptions);
64 
65  // Separating the offline part of the fillDescriptions() above
66  // TODO: make similar fillDescriptionsHLT, and switch the
67  // fillDescriptions() above take edm::ConfigurationDescriptions&
68  static void fillDescriptionsOffline(edm::ParameterSetDescription& descriptions);
69 
70  private:
71 
72  void build(const edm::ParameterSet&, edm::ConsumesCollector&);
73 
75 
76  bool useVertex;
77  bool useFixedZ;
78  bool useFixedPt;
81  bool thePrecise;
82 
84 
85  double theNsigmaEta;
86  double theNsigmaPhi;
87  double theNsigmaDz;
88 
93 
94  double thePtMin;
95  double thePhiMin;
96  double theEtaMin;
97  double theDeltaR;
98  double theHalfZ;
99  double theDeltaPhi;
100  double theDeltaEta;
101 
107 };
108 #endif
edm::EDGetTokenT< reco::BeamSpot > beamSpotToken
virtual ~MuonTrackingRegionBuilder()
Destructor.
MuonTrackingRegionBuilder(const edm::ParameterSet &par, edm::ConsumesCollector &&iC)
MuonTrackingRegionBuilder(const edm::ParameterSet &par, edm::ConsumesCollector &iC)
Constructor.
std::unique_ptr< RectangularEtaPhiTrackingRegion > region(const reco::Track &t) const
RectangularEtaPhiTrackingRegion::UseMeasurementTracker theOnDemand
edm::EDGetTokenT< reco::TrackCollection > inputCollectionToken
HLT enums.
edm::EDGetTokenT< reco::VertexCollection > vertexCollectionToken
edm::EDGetTokenT< MeasurementTrackerEvent > theMeasurementTrackerToken