CMS 3D CMS Logo

HcalLogicalMap.h
Go to the documentation of this file.
1 #ifndef HcalLogicalMap_h
2 #define HcalLogicalMap_h
3 
6 #include <vector>
7 class HcalTopology;
8 
10 public:
12  std::vector<HBHEHFLogicalMapEntry>&,
13  std::vector<HOHXLogicalMapEntry>&,
14  std::vector<CALIBLogicalMapEntry>&,
15  std::vector<ZDCLogicalMapEntry>&,
16  std::vector<HTLogicalMapEntry>&,
17  std::vector<uint32_t>&,
18  std::vector<uint32_t>&,
19  std::vector<uint32_t>&,
20  std::vector<uint32_t>&,
21  std::vector<uint32_t>&,
22  std::vector<uint32_t>&,
23  std::vector<uint32_t>&,
24  std::vector<uint32_t>&);
25 
27 
28  void checkHashIds();
30  void checkIdFunctions();
31  void printMap(unsigned int mapIOV);
32  std::unique_ptr<HcalElectronicsMap> generateHcalElectronicsMap();
33  const DetId getDetId(const HcalElectronicsId&);
35  uint32_t static makeEntryNumber(bool, int, int);
36 
37 private:
38  void printHBEFMap(FILE* hbefmapfile);
39  void printHOXMap(FILE* hoxmapfile);
40  void printCalibMap(FILE* calibmapfile);
41  void printZDCMap(FILE* zdcmapfile);
42  void printHTMap(FILE* htmapfile);
43 
44  unsigned int mapIOV_;
45 
46  std::vector<HBHEHFLogicalMapEntry> HBHEHFEntries_;
47  std::vector<HOHXLogicalMapEntry> HOHXEntries_;
48  std::vector<CALIBLogicalMapEntry> CALIBEntries_;
49  std::vector<ZDCLogicalMapEntry> ZDCEntries_;
50  std::vector<HTLogicalMapEntry> HTEntries_;
51  std::vector<uint32_t> LinearIndex2Entry_;
52  std::vector<uint32_t> HbHash2Entry_;
53  std::vector<uint32_t> HeHash2Entry_;
54  std::vector<uint32_t> HfHash2Entry_;
55  std::vector<uint32_t> HtHash2Entry_;
56  std::vector<uint32_t> HoHash2Entry_;
57  std::vector<uint32_t> HxCalibHash2Entry_;
58  std::vector<uint32_t> ZdcHash2Entry_;
59 
61 };
62 
63 #endif
static uint32_t makeEntryNumber(bool, int, int)
void printCalibMap(FILE *calibmapfile)
std::vector< uint32_t > HeHash2Entry_
std::unique_ptr< HcalElectronicsMap > generateHcalElectronicsMap()
void printHTMap(FILE *htmapfile)
std::vector< HBHEHFLogicalMapEntry > HBHEHFEntries_
void printHOXMap(FILE *hoxmapfile)
void printZDCMap(FILE *zdcmapfile)
std::vector< uint32_t > HbHash2Entry_
std::vector< uint32_t > LinearIndex2Entry_
std::vector< uint32_t > HoHash2Entry_
std::vector< uint32_t > ZdcHash2Entry_
const HcalTopology * topo_
unsigned int mapIOV_
void checkElectronicsHashIds()
std::vector< HTLogicalMapEntry > HTEntries_
void printMap(unsigned int mapIOV)
const HcalFrontEndId getHcalFrontEndId(const DetId &)
Definition: DetId.h:17
std::vector< HOHXLogicalMapEntry > HOHXEntries_
void printHBEFMap(FILE *hbefmapfile)
std::vector< uint32_t > HtHash2Entry_
std::vector< CALIBLogicalMapEntry > CALIBEntries_
const DetId getDetId(const HcalElectronicsId &)
std::vector< ZDCLogicalMapEntry > ZDCEntries_
std::vector< uint32_t > HxCalibHash2Entry_
std::vector< uint32_t > HfHash2Entry_
Readout chain identification for Hcal.
HcalLogicalMap(const HcalTopology *, std::vector< HBHEHFLogicalMapEntry > &, std::vector< HOHXLogicalMapEntry > &, std::vector< CALIBLogicalMapEntry > &, std::vector< ZDCLogicalMapEntry > &, std::vector< HTLogicalMapEntry > &, std::vector< uint32_t > &, std::vector< uint32_t > &, std::vector< uint32_t > &, std::vector< uint32_t > &, std::vector< uint32_t > &, std::vector< uint32_t > &, std::vector< uint32_t > &, std::vector< uint32_t > &)