CMS 3D CMS Logo

CmsMTDStringToEnum.cc
Go to the documentation of this file.
2 
4 
6  map_.emplace("FastTimerRegion", GeometricTimingDet::MTD);
7  map_.emplace("FastTimerRegionBTL", GeometricTimingDet::MTD);
8  map_.emplace("FastTimerRegionETL", GeometricTimingDet::MTD);
9  map_.emplace("BarrelTimingLayer", GeometricTimingDet::BTL);
10  map_.emplace("Layer1", GeometricTimingDet::BTLLayer);
11  map_.emplace("Layer1Timing", GeometricTimingDet::BTLLayer);
12  map_.emplace("BModule", GeometricTimingDet::BTLModule);
13  map_.emplace("BTLModu", GeometricTimingDet::BTLModule); // truncate name to have the same length as old versions
14  map_.emplace("EndcapTimingLayer", GeometricTimingDet::ETL);
15  map_.emplace("Disc1", GeometricTimingDet::ETLDisc);
16  map_.emplace("Disc1Timing", GeometricTimingDet::ETLDisc);
17  map_.emplace("Disc2Timing", GeometricTimingDet::ETLDisc);
18  map_.emplace("EModule", GeometricTimingDet::ETLModule);
19 }
20 
22  // remove namespace if present
23  std::string_view v = s;
24  auto first = v.find_first_of(':');
25  v.remove_prefix(std::min(first + 1, v.size()));
26  MapEnumType::const_iterator p = map().find({v.data(), v.size()});
27  if (p != map().end())
28  return p->second;
30 }
static const Impl m_impl
GeometricTimingDet::GeometricTimingEnumType type(std::string const &) const
static MapEnumType const & map()
enum GTDEnumType { unknown=100, MTD=0, BTL=1, BTLLayer=2, BTLTray=3, BTLModule=4, BTLSensor=5, BTLCrystal=6, ETL=7, ETLDisc=8, ETLRing=9, ETLModule=10, ETLSensor=11 } GeometricTimingEnumType