CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RPCRoll.h
Go to the documentation of this file.
1 #ifndef Geometry_RPCSimAlgo_RPCRoll_H
2 #define Geometry_RPCSimAlgo_RPCRoll_H
3 
8 
9 class StripTopology;
10 class RPCRollSpecs;
11 class RPCChamber;
12 class RPCRoll : public GeomDetUnit {
13 public:
15  ~RPCRoll() override;
16  const RPCRollSpecs* specs() const;
17  RPCDetId id() const;
18  const Topology& topology() const override;
19  const StripTopology& specificTopology() const;
20  const GeomDetType& type() const override;
21 
23  const RPCChamber* chamber() const;
24 
25  int nstrips() const;
26 
27  LocalPoint centreOfStrip(int strip) const;
28  LocalPoint centreOfStrip(float strip) const;
29  LocalError localError(float strip) const;
30 
31  float strip(const LocalPoint& lp) const;
32  float pitch() const;
33  float localPitch(const LocalPoint& lp) const;
34  bool isBarrel() const;
35  bool isForward() const;
36  bool isIRPC() const {
37  return (((this->id()).region() != 0) && (((this->id()).station() == 3) || ((this->id()).station() == 4)) &&
38  ((this->id()).ring() == 1));
39  }
40 
41 private:
42  void setChamber(const RPCChamber* ch);
43 
44 private:
47  const RPCChamber* theCh; // NOT owned
48 };
49 
50 #endif
float strip(const LocalPoint &lp) const
Definition: RPCRoll.cc:35
LocalPoint centreOfStrip(int strip) const
Definition: RPCRoll.cc:26
void setChamber(const RPCChamber *ch)
Definition: RPCRoll.cc:51
int nstrips() const
Definition: RPCRoll.cc:24
const RPCRollSpecs * specs() const
Definition: RPCRoll.cc:14
const StripTopology & specificTopology() const
Definition: RPCRoll.cc:49
bool isBarrel() const
Definition: RPCRoll.cc:41
bool isIRPC() const
Definition: RPCRoll.h:36
RPCDetId id() const
Definition: RPCRoll.cc:16
LocalError localError(float strip) const
Definition: RPCRoll.cc:33
const RPCChamber * chamber() const
Return the chamber this roll belongs to.
Definition: RPCRoll.cc:22
RPCRollSpecs * _rrs
Definition: RPCRoll.h:46
float localPitch(const LocalPoint &lp) const
Definition: RPCRoll.cc:37
float pitch() const
Definition: RPCRoll.cc:39
~RPCRoll() override
Definition: RPCRoll.cc:10
const GeomDetType & type() const override
Definition: RPCRoll.cc:20
const Topology & topology() const override
Definition: RPCRoll.cc:18
bool isForward() const
Definition: RPCRoll.cc:43
RPCRoll(RPCDetId id, const BoundPlane::BoundPlanePointer &bp, RPCRollSpecs *rrs)
Definition: RPCRoll.cc:5
RPCDetId _id
Definition: RPCRoll.h:45
const RPCChamber * theCh
Definition: RPCRoll.h:47