CMS 3D CMS Logo

StripGeomDetUnit.h
Go to the documentation of this file.
1 #ifndef Geometry_TrackerGeometryBuilder_StripGeomDetUnit_H
2 #define Geometry_TrackerGeometryBuilder_StripGeomDetUnit_H
3 
7 
8 class StripGeomDetType;
9 class StripTopology;
10 class SurfaceDeformation;
15 class StripGeomDetUnit final : public TrackerGeomDet {
16 public:
17 
19 
20  // Det interface
21 
28  virtual const GeomDetType& type() const override;
29 
31  virtual const Topology& topology() const override;
32 
39  virtual StripGeomDetType const & specificType() const;
40 
42  virtual const StripTopology& specificTopology() const;
43 
45  virtual const SurfaceDeformation * surfaceDeformation() const override {
46  return theTopology->surfaceDeformation();
47  }
48 
49  bool isLeaf() const override { return true;}
50 
51 
52 private:
53 
55  virtual void setSurfaceDeformation(const SurfaceDeformation * deformation) override;
56 
57  std::unique_ptr<ProxyStripTopology> theTopology;
58 };
59 
60 #endif // Tracker_StripGeomDetUnit_H
type
Definition: HCALResponse.h:21
virtual const SurfaceDeformation * surfaceDeformation() const override
Return pointer to surface deformation.
bool isLeaf() const override
is a Unit
virtual const StripTopology & specificTopology() const
Returns a reference to the strip proxy topology.
StripGeomDetUnit(BoundPlane *sp, StripGeomDetType const *type, DetId id)
std::unique_ptr< ProxyStripTopology > theTopology
virtual StripGeomDetType const & specificType() const
virtual const GeomDetType & type() const override
virtual const Topology & topology() const override
Returns a reference to the strip proxy topology.
Definition: DetId.h:18
Definition: sp.h:21
virtual void setSurfaceDeformation(const SurfaceDeformation *deformation) override
set the SurfaceDeformation for this StripGeomDetUnit to proxy topology.