CMS 3D CMS Logo

ProxyStripTopology.h
Go to the documentation of this file.
1 #ifndef Geometry_TrackerTopology_ProxyStripTopology_H
2 #define Geometry_TrackerTopology_ProxyStripTopology_H
3 
15 //
26 
30 class Plane;
31 
32 class ProxyStripTopology final : public StripTopology {
33 public:
35 
36  LocalPoint localPosition(const MeasurementPoint& mp) const override { return specificTopology().localPosition(mp); }
38  LocalPoint localPosition(const MeasurementPoint& mp, const Topology::LocalTrackPred& trkPred) const override;
39 
40  LocalPoint localPosition(float strip) const override { return specificTopology().localPosition(strip); }
42  LocalPoint localPosition(float strip, const Topology::LocalTrackPred& trkPred) const override;
43 
44  LocalError localError(float strip, float stripErr2) const override {
45  return specificTopology().localError(strip, stripErr2);
46  }
48  LocalError localError(float strip, float stripErr2, const Topology::LocalTrackPred& trkPred) const override;
49 
50  LocalError localError(const MeasurementPoint& mp, const MeasurementError& me) const override {
51  return specificTopology().localError(mp, me);
52  }
55  const MeasurementError& me,
56  const Topology::LocalTrackPred& trkPred) const override;
57 
58  MeasurementPoint measurementPosition(const LocalPoint& lp) const override {
60  }
62 
63  MeasurementError measurementError(const LocalPoint& lp, const LocalError& le) const override {
64  return specificTopology().measurementError(lp, le);
65  }
67  const LocalError& le,
68  const Topology::LocalTrackAngles& dir) const override;
69 
70  int channel(const LocalPoint& lp) const override { return specificTopology().channel(lp); }
71  int channel(const LocalPoint& lp, const Topology::LocalTrackAngles& dir) const override;
72 
73  float strip(const LocalPoint& lp) const override { return specificTopology().strip(lp); }
75  float strip(const LocalPoint& lp, const Topology::LocalTrackAngles& dir) const override;
76 
77  float coveredStrips(const LocalPoint& lp1, const LocalPoint& lp2) const override {
78  return specificTopology().coveredStrips(lp1, lp2);
79  }
80 
81  float pitch() const override { return specificTopology().pitch(); }
82  float localPitch(const LocalPoint& lp) const override { return specificTopology().localPitch(lp); }
84  float localPitch(const LocalPoint& lp, const Topology::LocalTrackAngles& dir) const override;
85 
86  float stripAngle(float strip) const override { return specificTopology().stripAngle(strip); }
87 
88  int nstrips() const override { return specificTopology().nstrips(); }
89 
90  float stripLength() const override { return specificTopology().stripLength(); }
91  float localStripLength(const LocalPoint& lp) const override { return specificTopology().localStripLength(lp); }
92  float localStripLength(const LocalPoint& lp, const Topology::LocalTrackAngles& dir) const override;
93 
94  virtual const GeomDetType& type() const { return *theType; }
95  virtual StripGeomDetType const& specificType() const { return *theType; }
96 
97  const SurfaceDeformation* surfaceDeformation() const { return theSurfaceDeformation.operator->(); }
98  virtual void setSurfaceDeformation(const SurfaceDeformation* deformation);
99 
100  virtual const StripTopology& specificTopology() const { return specificType().specificTopology(); }
101 
102 private:
106  const Topology::LocalTrackAngles& dir) const;
110 
113  std::unique_ptr<const SurfaceDeformation> theSurfaceDeformation;
114 };
115 
116 #endif
ProxyStripTopology::specificType
virtual StripGeomDetType const & specificType() const
Definition: ProxyStripTopology.h:95
Point2DBase
Definition: Point2DBase.h:9
ProxyStripTopology::localError
LocalError localError(const MeasurementPoint &mp, const MeasurementError &me) const override
Definition: ProxyStripTopology.h:50
StripGeomDetType.h
StripTopology::localStripLength
virtual float localStripLength(const LocalPoint &aLP) const =0
StripTopology::localPosition
virtual LocalPoint localPosition(float strip) const =0
pos
Definition: PixelAliasList.h:18
ProxyStripTopology::measurementPosition
MeasurementPoint measurementPosition(const LocalPoint &lp) const override
Definition: ProxyStripTopology.h:58
ProxyStripTopology
Definition: ProxyStripTopology.h:32
GeomDetType
Definition: GeomDetType.h:9
ProxyStripTopology::theType
StripGeomDetType const * theType
Definition: ProxyStripTopology.h:111
ProxyStripTopology::theWidth
float theWidth
Definition: ProxyStripTopology.h:112
StripTopology.h
StripTopology::localPitch
virtual float localPitch(const LocalPoint &) const =0
ProxyStripTopology::localError
LocalError localError(float strip, float stripErr2) const override
Definition: ProxyStripTopology.h:44
SurfaceDeformation
Definition: SurfaceDeformation.h:18
ProxyStripTopology::setSurfaceDeformation
virtual void setSurfaceDeformation(const SurfaceDeformation *deformation)
Definition: ProxyStripTopology.cc:166
StripTopology::pitch
virtual float pitch() const =0
ProxyStripTopology::localPitch
float localPitch(const LocalPoint &lp) const override
Definition: ProxyStripTopology.h:82
MeasurementError
Definition: MeasurementError.h:8
Topology::channel
virtual int channel(const LocalPoint &p) const =0
Topology::LocalTrackPred
Definition: Topology.h:56
Topology::measurementError
virtual MeasurementError measurementError(const LocalPoint &, const LocalError &) const =0
Vector2DBase
Definition: Vector2DBase.h:8
StripTopology::coveredStrips
virtual float coveredStrips(const LocalPoint &lp1, const LocalPoint &lp2) const
Definition: StripTopology.h:36
ProxyStripTopology::stripAngle
float stripAngle(float strip) const override
Definition: ProxyStripTopology.h:86
Point3DBase< float, LocalTag >
StripTopology::strip
virtual float strip(const LocalPoint &) const =0
ProxyStripTopology::channel
int channel(const LocalPoint &lp) const override
Definition: ProxyStripTopology.h:70
ProxyStripTopology::pitch
float pitch() const override
Definition: ProxyStripTopology.h:81
SurfaceDeformation.h
StripTopology::stripLength
virtual float stripLength() const =0
ProxyStripTopology::surfaceDeformation
const SurfaceDeformation * surfaceDeformation() const
Definition: ProxyStripTopology.h:97
LocalError
Definition: LocalError.h:12
ProxyStripTopology::specificTopology
virtual const StripTopology & specificTopology() const
Definition: ProxyStripTopology.h:100
ProxyStripTopology::localStripLength
float localStripLength(const LocalPoint &lp) const override
Definition: ProxyStripTopology.h:91
StripTopology::stripAngle
virtual float stripAngle(float strip) const =0
Topology::LocalTrackAngles
Definition: Topology.h:44
Topology::measurementPosition
virtual MeasurementPoint measurementPosition(const LocalPoint &) const =0
ProxyStripTopology::theSurfaceDeformation
std::unique_ptr< const SurfaceDeformation > theSurfaceDeformation
Definition: ProxyStripTopology.h:113
ProxyStripTopology::stripLength
float stripLength() const override
Definition: ProxyStripTopology.h:90
ProxyStripTopology::ProxyStripTopology
ProxyStripTopology(StripGeomDetType const *type, Plane *bp)
Definition: ProxyStripTopology.cc:8
StripTopology::nstrips
virtual int nstrips() const =0
StripGeomDetType
Definition: StripGeomDetType.h:11
type
type
Definition: HCALResponse.h:21
Plane
Definition: Plane.h:16
StripGeomDetType::specificTopology
virtual const TopologyType & specificTopology() const
Definition: StripGeomDetType.h:23
ProxyStripTopology::localPosition
LocalPoint localPosition(float strip) const override
Definition: ProxyStripTopology.h:40
ProxyStripTopology::theLength
float theLength
Definition: ProxyStripTopology.h:112
ProxyStripTopology::nstrips
int nstrips() const override
Definition: ProxyStripTopology.h:88
ProxyStripTopology::coveredStrips
float coveredStrips(const LocalPoint &lp1, const LocalPoint &lp2) const override
Definition: ProxyStripTopology.h:77
ProxyStripTopology::measurementError
MeasurementError measurementError(const LocalPoint &lp, const LocalError &le) const override
Definition: ProxyStripTopology.h:63
hlt_dqm_clientPB-live_cfg.me
me
Definition: hlt_dqm_clientPB-live_cfg.py:56
ProxyStripTopology::localPosition
LocalPoint localPosition(const MeasurementPoint &mp) const override
Definition: ProxyStripTopology.h:36
StripTopology::localError
virtual LocalError localError(float strip, float stripErr2) const =0
ProxyStripTopology::strip
float strip(const LocalPoint &lp) const override
Definition: ProxyStripTopology.h:73
StripTopology
Definition: StripTopology.h:11
ProxyStripTopology::type
virtual const GeomDetType & type() const
Definition: ProxyStripTopology.h:94
ProxyStripTopology::positionCorrection
SurfaceDeformation::Local2DVector positionCorrection(const LocalPoint &pos, const Topology::LocalTrackAngles &dir) const
Definition: ProxyStripTopology.cc:171
DeadROC_duringRun.dir
dir
Definition: DeadROC_duringRun.py:23