CMS 3D CMS Logo

GlobalTrackingRegion.h
Go to the documentation of this file.
1 #ifndef GlobalTrackingRegion_H
2 #define GlobalTrackingRegion_H
3 
11 #include <vector>
12 
13 class GlobalTrackingRegion final : public TrackingRegion {
14 public:
15 
23  float originRadius, float originHalfLength, bool precise=false, bool useMS=false)
24  : TrackingRegionBase(GlobalVector( 0, 0, 0), origin,
25  Range( -1/ptMin, 1/ptMin), originRadius, originHalfLength),
26  thePrecise(precise), theUseMS(useMS) { }
27 
28  // obsolete constructor
29  GlobalTrackingRegion ( float ptMin = 1., float originRadius = 0.2,
30  float originHalfLength = 22.7, float originZPos = 0.,
31  bool precise = false)
34  thePrecise(precise) { }
35 
37  const edm::EventSetup& es,
38  const SeedingLayerSetsHits::SeedingLayer& layer) const override;
39 
40 
41  virtual HitRZCompatibility * checkRZ(const DetLayer* layer,
42  const Hit & outerHit,
43  const edm::EventSetup& iSetup,
44  const DetLayer* outerlayer=0,
45  float lr=0, float gz=0, float dr=0, float dz=0) const override;
46 
47  virtual GlobalTrackingRegion* clone() const override {
48  return new GlobalTrackingRegion(*this);
49  }
50 
51  virtual std::string name() const override { return "GlobalTrackingRegion"; }
52  virtual std::string print() const override;
53 
54 private:
55  bool thePrecise=false;
56  bool theUseMS=false;
57 };
58 #endif
GlobalPoint const & origin() const
virtual std::string print() const override
GlobalTrackingRegion(float ptMin, const GlobalPoint &origin, float originRadius, float originHalfLength, bool precise=false, bool useMS=false)
virtual HitRZCompatibility * checkRZ(const DetLayer *layer, const Hit &outerHit, const edm::EventSetup &iSetup, const DetLayer *outerlayer=0, float lr=0, float gz=0, float dr=0, float dz=0) const override
TrackingRegion::Hits hits(const edm::EventSetup &es, const SeedingLayerSetsHits::SeedingLayer &layer) const override
get hits from layer compatible with region constraints
SeedingLayerSetsHits::Hits Hits
float ptMin() const
minimal pt of interest
virtual std::string name() const override
GlobalTrackingRegion(float ptMin=1., float originRadius=0.2, float originHalfLength=22.7, float originZPos=0., bool precise=false)
virtual GlobalTrackingRegion * clone() const override