1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#ifndef Geometry_MTDNumberingBuilder_CmsMTDStringToEnum_H
#define Geometry_MTDNumberingBuilder_CmsMTDStringToEnum_H
#include "Geometry/MTDNumberingBuilder/interface/GeometricTimingDet.h"
#include <string>
#include <map>
/**
* Builds map between Det type and an enum
*/
class CmsMTDStringToEnum {
public:
static constexpr size_t kModStrLen = 7;
using MapEnumType = std::map<std::string, GeometricTimingDet::GeometricTimingEnumType>;
GeometricTimingDet::GeometricTimingEnumType type(std::string const&) const;
private:
static MapEnumType const& map() { return m_impl.map_; }
// a quick fix
struct Impl {
Impl();
MapEnumType map_;
};
static const Impl m_impl;
};
#endif
|