CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalTopologyMode.h
Go to the documentation of this file.
1 #ifndef Geometry_HcalCommonData_HcalTopologyMode_H
2 #define Geometry_HcalCommonData_HcalTopologyMode_H
3 
5 #include <map>
6 #include <string>
7 #include <algorithm>
8 
9 template< typename T >
11 {
12  std::map< std::string, T > enumMap;
13 public:
14 
15  StringToEnumParser( void );
16 
18  typename std::map<std::string, T>::const_iterator iValue = enumMap.find( value );
19  if( iValue == enumMap.end())
20  throw cms::Exception( "Configuration" )
21  << "the value " << value << " is not defined.";
22 
23  return iValue->second;
24  }
25 };
26 
27 namespace HcalTopologyMode {
28  enum Mode { LHC=0, H2=1, SLHC=2, H2HE=3 };
29 
30  enum TriggerMode {
31  tm_LHC_PreLS1=0 // HF is summed in 3x2 regions
32  };
33 }
34 
35 #endif // CALO_TOPOLOGY_HCAL_TOPOLOGY_MODE_H
std::map< std::string, T > enumMap
long double T
T parseString(const std::string &value)