CMS 3D CMS Logo

GEMEtaPartition.h
Go to the documentation of this file.
1 #ifndef Geometry_GEMGeometry_GEMEtaPartition_H
2 #define Geometry_GEMGeometry_GEMEtaPartition_H
3 
8 
9 class StripTopology;
11 
12 class GEMEtaPartition : public GeomDet
13 {
14 public:
15 
17  ~GEMEtaPartition() override;
18 
19  const GEMEtaPartitionSpecs* specs() const { return specs_; }
20  GEMDetId id() const { return id_; }
21 
22  const Topology& topology() const override;
23  const StripTopology& specificTopology() const;
24 
25  const Topology& padTopology() const;
26  const StripTopology& specificPadTopology() const;
27 
28  const GeomDetType& type() const override;
29 
30  // strip-related methods:
31 
33  int nstrips() const;
34 
37  LocalPoint centreOfStrip(int strip) const;
38 
41  LocalPoint centreOfStrip(float strip) const;
42  LocalError localError(float strip, float cluster_size= 1.) const;
46  float strip(const LocalPoint& lp) const;
47 
48  float pitch() const;
49  float localPitch(const LocalPoint& lp) const;
50 
51 
52  // GEM-CSC pad-related methods:
53 
55  int npads() const;
56 
59  LocalPoint centreOfPad(int pad) const;
60 
63  LocalPoint centreOfPad(float pad) const;
64 
66  float pad(const LocalPoint& lp) const;
67 
69  float padPitch() const;
71  float localPadPitch(const LocalPoint& lp) const;
72 
73 
74  // relations between strips and pads:
75 
77  float padOfStrip(int strip) const;
78 
80  int firstStripInPad(int pad) const;
81 
83  int lastStripInPad(int pad) const;
84 
85 private:
86 
89 };
90 
91 #endif
92 
float localPadPitch(const LocalPoint &lp) const
pad pitch at a particular point
const Topology & padTopology() const
LocalError localError(float strip, float cluster_size=1.) const
int lastStripInPad(int pad) const
returns last strip (INT number [0,nstrip-1]) for pad (an integer [0,npads-1])
float padPitch() const
pad pitch in a center
const Topology & topology() const override
GEMDetId id() const
float padOfStrip(int strip) const
returns FRACTIONAL pad number [0.,npads) for an integer strip [0,nstrip-1]
LocalPoint centreOfStrip(int strip) const
float localPitch(const LocalPoint &lp) const
int nstrips() const
number of readout strips in partition
int firstStripInPad(int pad) const
returns first strip (INT number [0,nstrip-1]) for pad (an integer [0,npads-1])
const GeomDetType & type() const override
GEMEtaPartition(GEMDetId id, const BoundPlane::BoundPlanePointer &bp, GEMEtaPartitionSpecs *rrs)
float pad(const LocalPoint &lp) const
returns FRACTIONAL pad number [0.,npads) for a point
int npads() const
number of GEM-CSC trigger readout pads in partition
const StripTopology & specificTopology() const
const StripTopology & specificPadTopology() const
GEMEtaPartitionSpecs * specs_
float pitch() const
~GEMEtaPartition() override
const GEMEtaPartitionSpecs * specs() const
float strip(const LocalPoint &lp) const
LocalPoint centreOfPad(int pad) const