Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-12-12 23:19:13

0001 #ifndef Geometry_MTDGeometryBuilder_MTDGeomBuilderFromGeometricTimingDet_H
0002 #define Geometry_MTDGeometryBuilder_MTDGeomBuilderFromGeometricTimingDet_H
0003 
0004 #include <string>
0005 #include <vector>
0006 #include <map>
0007 #include "Geometry/MTDGeometryBuilder/interface/PlaneBuilderFromGeometricTimingDet.h"
0008 #include "Geometry/MTDNumberingBuilder/interface/GeometricTimingDet.h"
0009 #include "Geometry/CommonDetUnit/interface/GeomDetType.h"
0010 
0011 class MTDGeometry;
0012 class MTDGeomDetType;
0013 class PMTDParameters;
0014 
0015 class MTDGeomBuilderFromGeometricTimingDet {
0016 public:
0017   MTDGeometry* build(const GeometricTimingDet* gd, const PMTDParameters& ptp);
0018 
0019 private:
0020   void buildPixel(std::vector<const GeometricTimingDet*> const&,
0021                   MTDGeometry*,
0022                   GeomDetType::SubDetector det,
0023                   const PMTDParameters& ptp);
0024   void buildGeomDet(MTDGeometry*);
0025 
0026   PlaneBuilderFromGeometricTimingDet::ResultType buildPlaneWithMaterial(const GeometricTimingDet* gd,
0027                                                                         double scaleFactor = 1.) const;
0028 
0029   std::map<std::string, const MTDGeomDetType*> theMTDDetTypeMap;
0030 };
0031 
0032 #endif