CMS 3D CMS Logo

ElectronicsMap.h
Go to the documentation of this file.
1 #ifndef ElectronicsMap_h
2 #define ElectronicsMap_h
3 
17 
18 #include "string"
19 #include <unordered_map>
20 
21 namespace hcaldqm {
22  namespace electronicsmap {
30  };
31 
33  public:
34  ElectronicsMap() : _emap(nullptr) {}
35  // define how to use upon construction
36  ElectronicsMap(ElectronicsMapType etype) : _etype(etype), _emap(nullptr) {}
38 
40 
41  // filter is to filter things you do not need out
43  uint32_t lookup(DetId const &);
44  uint32_t lookup(HcalDetId const &);
45  uint32_t lookup(HcalElectronicsId const &);
46 
47  void print();
48 
49  private:
50  // configures how to use emap
52 
53  // 2 choices either use as HcalElectronicsMap or as ur hash
54  typedef std::unordered_map<uint32_t, uint32_t> EMapType;
56 
57  //
59  };
60  } // namespace electronicsmap
61 } // namespace hcaldqm
62 
63 #endif
void initialize(HcalElectronicsMap const *, ElectronicsMapType etype=fHcalElectronicsMap)
HcalElectronicsMap const * _emap
Definition: DetId.h:17
std::unordered_map< uint32_t, uint32_t > EMapType
ElectronicsMap(ElectronicsMapType etype)
Readout chain identification for Hcal.