CMS 3D CMS Logo

RectangularStripTopology.h
Go to the documentation of this file.
1 #ifndef Geometry_CommonTopologies_RectangularStripTopology_H
2 #define Geometry_CommonTopologies_RectangularStripTopology_H
3 
10 
12 public:
13  RectangularStripTopology(int nstrips, float pitch, float detlength);
14 
16  LocalPoint localPosition(float strip) const override;
17 
18  LocalPoint localPosition(const MeasurementPoint&) const override;
19 
21  LocalError localError(float strip, float stripErr2) const override;
22 
23  LocalError localError(const MeasurementPoint&, const MeasurementError&) const override;
24 
25  float strip(const LocalPoint&) const override;
26 
27  // the number of strip span by the segment between the two points..
28  float coveredStrips(const LocalPoint& lp1, const LocalPoint& lp2) const override;
29 
30  MeasurementPoint measurementPosition(const LocalPoint&) const override;
31 
32  MeasurementError measurementError(const LocalPoint&, const LocalError&) const override;
33 
34  int channel(const LocalPoint& lp) const override { return std::min(int(strip(lp)), theNumberOfStrips - 1); }
35 
36  float pitch() const override { return thePitch; }
37 
38  float localPitch(const LocalPoint&) const override { return thePitch; }
39 
40  float stripAngle(float strip) const override { return 0; }
41 
42  int nstrips() const override { return theNumberOfStrips; }
43 
44  float stripLength() const override { return theStripLength; }
45 
46  float localStripLength(const LocalPoint& /*aLP*/) const override { return stripLength(); }
47 
48 private:
49  float thePitch;
52  float theOffset;
53 };
54 
55 #endif
LocalPoint localPosition(float strip) const override
int channel(const LocalPoint &lp) const override
float pitch() const override
float strip(const LocalPoint &) const override
LocalError localError(float strip, float stripErr2) const override
float coveredStrips(const LocalPoint &lp1, const LocalPoint &lp2) const override
float stripLength() const override
float localPitch(const LocalPoint &) const override
RectangularStripTopology(int nstrips, float pitch, float detlength)
float stripAngle(float strip) const override
MeasurementPoint measurementPosition(const LocalPoint &) const override
virtual LocalError localError(float strip, float stripErr2) const =0
virtual LocalPoint localPosition(float strip) const =0
float localStripLength(const LocalPoint &) const override
MeasurementError measurementError(const LocalPoint &, const LocalError &) const override