Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:15:17

0001 #ifndef Geometry_MTDNumberingBuilder_DDCmsMTDConstruction_H
0002 #define Geometry_MTDNumberingBuilder_DDCmsMTDConstruction_H
0003 
0004 #include "Geometry/MTDNumberingBuilder/interface/CmsMTDStringToEnum.h"
0005 #include "FWCore/ParameterSet/interface/types.h"
0006 #include <string>
0007 #include <vector>
0008 #include <memory>
0009 
0010 class GeometricTimingDet;
0011 class DDCompactView;
0012 
0013 namespace cms {
0014   class DDCompactView;
0015 }
0016 
0017 /**
0018  * High level class to build a tracker. It will only build subdets,
0019  * then call subdet builders
0020  */
0021 
0022 class DDCmsMTDConstruction {
0023 public:
0024   DDCmsMTDConstruction() = delete;
0025   static std::unique_ptr<GeometricTimingDet> construct(const DDCompactView& cpv);
0026   static std::unique_ptr<GeometricTimingDet> construct(const cms::DDCompactView& cpv);
0027 
0028 private:
0029   static constexpr size_t kNLayerPreTDR = 3;
0030   static constexpr size_t kNLayerTDR = 5;
0031 };
0032 
0033 #endif