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:
22  const GlobalPoint& origin,
23  float originRadius,
24  float originHalfLength,
25  bool precise = false,
26  bool useMS = false)
27  : TrackingRegionBase(GlobalVector(0, 0, 0), origin, Range(-1 / ptMin, 1 / ptMin), originRadius, originHalfLength),
29  theUseMS(useMS) {}
30 
31  // obsolete constructor
33  float originRadius = 0.2,
34  float originHalfLength = 22.7,
35  float originZPos = 0.,
36  bool precise = false)
38  GlobalPoint(0, 0, originZPos),
39  Range(-1 / ptMin, 1 / ptMin),
43 
44  TrackingRegion::Hits hits(const edm::EventSetup& es, const SeedingLayerSetsHits::SeedingLayer& layer) const override;
45 
46  HitRZCompatibility* checkRZ(const DetLayer* layer,
47  const Hit& outerHit,
48  const edm::EventSetup& iSetup,
49  const DetLayer* outerlayer = nullptr,
50  float lr = 0,
51  float gz = 0,
52  float dr = 0,
53  float dz = 0) const override;
54 
55  GlobalTrackingRegion* clone() const override { return new GlobalTrackingRegion(*this); }
56 
57  std::string name() const override { return "GlobalTrackingRegion"; }
58  std::string print() const override;
59 
60 private:
61  bool thePrecise = false;
62  bool theUseMS = false;
63 };
64 #endif
GlobalPoint const & origin() const
std::string print() const override
GlobalTrackingRegion * clone() const override
GlobalTrackingRegion(float ptMin, const GlobalPoint &origin, float originRadius, float originHalfLength, bool precise=false, bool useMS=false)
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
std::string name() const override
SeedingLayerSetsHits::Hits Hits
float ptMin() const
minimal pt of interest
GlobalTrackingRegion(float ptMin=1., float originRadius=0.2, float originHalfLength=22.7, float originZPos=0., bool precise=false)