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