CMS 3D CMS Logo

CmsMTDDetIdBuilder.h
Go to the documentation of this file.
1 #ifndef Geometry_MTDNumberingBuilder_CmsMTDDetIdBuilder_H
2 #define Geometry_MTDNumberingBuilder_CmsMTDDetIdBuilder_H
3 
5 #include <ostream>
6 #include <vector>
7 #include <array>
8 
10 
16 public:
17  CmsMTDDetIdBuilder(std::vector<int> detidShifts);
19 
20 protected:
21  void iterate(GeometricTimingDet *det, int level, unsigned int ID);
22 
23 private:
24  static const unsigned int nSubDet = 6;
25  static const int maxLevels = 6;
26 
27  // This is the map between detid and navtype to restore backward compatibility between 12* and 13* series
28  std::map<std::string, uint32_t> m_mapNavTypeToDetId;
29  std::array<int, nSubDet * maxLevels> m_detidshifts;
30 };
31 
32 #endif
CmsMTDDetIdBuilder(std::vector< int > detidShifts)
uint32_t ID
Definition: Definitions.h:24
void iterate(GeometricTimingDet *det, int level, unsigned int ID)
GeometricTimingDet * buildId(GeometricTimingDet *det)
static const int maxLevels
static const unsigned int nSubDet
std::array< int, nSubDet *maxLevels > m_detidshifts
std::map< std::string, uint32_t > m_mapNavTypeToDetId