CMS 3D CMS Logo

PixelGeomDetUnit.h
Go to the documentation of this file.
1 #ifndef Geometry_TrackerGeometryBuilder_PixelGeomDetUnit_H
2 #define Geometry_TrackerGeometryBuilder_PixelGeomDetUnit_H
3 
7 
8 class PixelGeomDetType;
9 class PixelTopology;
10 class SurfaceDeformation;
15 class PixelGeomDetUnit final : public TrackerGeomDet {
16 public:
17 
19 
20  // DetUnit interface
21 
28  virtual const GeomDetType& type() const override;
29 
31  virtual const Topology& topology() const override;
32 
39  virtual const PixelGeomDetType& specificType() const;
40 
42  virtual const PixelTopology& 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 private:
52 
54  virtual void setSurfaceDeformation(const SurfaceDeformation * deformation) override;
55 
56  std::unique_ptr<ProxyPixelTopology> theTopology;
57 };
58 
59 #endif // Tracker_PixelGeomDetUnit_H
type
Definition: HCALResponse.h:21
virtual const GeomDetType & type() const override
virtual void setSurfaceDeformation(const SurfaceDeformation *deformation) override
set the SurfaceDeformation for this StripGeomDetUnit to proxy topology.
virtual const Topology & topology() const override
Returns a reference to the pixel proxy topology.
virtual const SurfaceDeformation * surfaceDeformation() const override
Return pointer to surface deformation.
std::unique_ptr< ProxyPixelTopology > theTopology
Definition: DetId.h:18
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
bool isLeaf() const override
is a Unit
Definition: sp.h:21
PixelGeomDetUnit(BoundPlane *sp, PixelGeomDetType const *type, DetId id)
virtual const PixelGeomDetType & specificType() const