00001 #ifndef Geometry_TrackerGeometryBuilder_PixelGeomDetUnit_H 00002 #define Geometry_TrackerGeometryBuilder_PixelGeomDetUnit_H 00003 00004 00005 #include "Geometry/CommonDetUnit/interface/GeomDetUnit.h" 00006 #include "DataFormats/DetId/interface/DetId.h" 00007 00008 00009 class PixelGeomDetType; 00010 class PixelTopology; 00011 class GeometricDet; 00016 class PixelGeomDetUnit : public GeomDetUnit { 00017 public: 00018 00019 PixelGeomDetUnit(BoundPlane* sp, PixelGeomDetType* type, const GeometricDet* gd); 00020 00021 // DetUnit interface 00022 00023 virtual const GeomDetType& type() const; 00024 00025 virtual const Topology& topology() const; 00026 00027 DetId geographicalId() const; 00028 00029 virtual PixelGeomDetType& specificType() const { return *theType;} 00030 00031 virtual const PixelTopology& specificTopology() const; 00032 00033 private: 00034 PixelGeomDetType* theType; 00035 const GeometricDet* theGD; 00036 }; 00037 00038 #endif // Tracker_PixelGeomDetUnit_H