CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PixelGeomDetUnit.h
Go to the documentation of this file.
1 #ifndef Geometry_TrackerGeometryBuilder_PixelGeomDetUnit_H
2 #define Geometry_TrackerGeometryBuilder_PixelGeomDetUnit_H
3 
4 #include <boost/shared_ptr.hpp>
5 
9 
10 class PixelGeomDetType;
11 class PixelTopology;
12 class SurfaceDeformation;
17 class PixelGeomDetUnit final : public TrackerGeomDet {
18 public:
19 
21 
22  // DetUnit interface
23 
30  virtual const GeomDetType& type() const override;
31 
33  virtual const Topology& topology() const override;
34 
41  virtual const PixelGeomDetType& specificType() const;
42 
44  virtual const PixelTopology& specificTopology() const;
45 
47  virtual const SurfaceDeformation * surfaceDeformation() const {
48  return theTopology->surfaceDeformation();
49  }
50 
51  bool isLeaf() const override { return true;}
52 
53 private:
54 
56  virtual void setSurfaceDeformation(const SurfaceDeformation * deformation);
57 
58  std::unique_ptr<ProxyPixelTopology> theTopology;
59 };
60 
61 #endif // Tracker_PixelGeomDetUnit_H
type
Definition: HCALResponse.h:21
virtual const GeomDetType & type() const override
bool isLeaf() const override
is a Unit
virtual const Topology & topology() const override
Returns a reference to the pixel proxy topology.
std::unique_ptr< ProxyPixelTopology > theTopology
Definition: DetId.h:18
virtual const PixelTopology & specificTopology() const
Returns a reference to the pixel proxy topology.
virtual void setSurfaceDeformation(const SurfaceDeformation *deformation)
set the SurfaceDeformation for this StripGeomDetUnit to proxy topology.
virtual const SurfaceDeformation * surfaceDeformation() const
Return pointer to surface deformation.
PixelGeomDetUnit(BoundPlane *sp, PixelGeomDetType const *type, DetId id)
virtual const PixelGeomDetType & specificType() const