CMS 3D CMS Logo

HGCalGeometryMode.h
Go to the documentation of this file.
1 #ifndef Geometry_HGCalCommonData_HGCalGeometryMode_H
2 #define Geometry_HGCalCommonData_HGCalGeometryMode_H
3 
5 #include <map>
6 #include <string>
7 #include <algorithm>
8 
9 template< typename T >
11  std::map<std::string, T> enumMap;
12 public:
13 
15 
17  typename std::map<std::string, T>::const_iterator itr = enumMap.find(value);
18  if (itr == enumMap.end())
19  throw cms::Exception("Configuration") << "the value " << value
20  << " is not defined.";
21  return itr->second;
22  }
23 };
24 
25 enum class HGCalGeometryMode : int { Square=0, Hexagon=1, HexagonFull=2 };
26 
27 #endif
T parseString(const std::string &value)
std::map< std::string, T > enumMap
Definition: value.py:1
HGCalGeometryMode
long double T