CMS 3D CMS Logo

PixelGeomDetUnit.h
Go to the documentation of this file.
1 #ifndef Geometry_CommonTopologies_PixelGeomDetUnit_H
2 #define Geometry_CommonTopologies_PixelGeomDetUnit_H
3 
7 
8 class PixelGeomDetType;
9 class PixelTopology;
10 class SurfaceDeformation;
15 class PixelGeomDetUnit final : public TrackerGeomDet {
16 public:
18 
19  // DetUnit interface
20 
27  const GeomDetType& type() const override;
28 
30  const Topology& topology() const override;
31 
38  virtual const PixelGeomDetType& specificType() const;
39 
41  virtual const PixelTopology& specificTopology() const;
42 
44  const SurfaceDeformation* surfaceDeformation() const override { return theTopology->surfaceDeformation(); }
45 
46  bool isLeaf() const override { return true; }
47 
48 private:
50  void setSurfaceDeformation(const SurfaceDeformation* deformation) override;
51 
52  std::unique_ptr<ProxyPixelTopology> theTopology;
53 };
54 
55 #endif // Tracker_PixelGeomDetUnit_H
void setSurfaceDeformation(const SurfaceDeformation *deformation) override
set the SurfaceDeformation for this StripGeomDet to proxy topology.
const GeomDetType & type() const override
bool isLeaf() const override
is a Unit
const Topology & topology() const override
Returns a reference to the pixel proxy topology.
virtual const PixelGeomDetType & specificType() const
std::unique_ptr< ProxyPixelTopology > theTopology
Definition: DetId.h:17
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
PixelGeomDetUnit(BoundPlane *sp, PixelGeomDetType const *type, DetId id)
const SurfaceDeformation * surfaceDeformation() const override
Return pointer to surface deformation.