CMS 3D CMS Logo

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