CMS 3D CMS Logo

HashFunctions.h
Go to the documentation of this file.
1 #ifndef HashFunctions_h
2 #define HashFunctions_h
3 
14 
15 namespace hcaldqm {
16  namespace hashfunctions {
20  uint32_t hash_Subdet(HcalDetId const &);
21  uint32_t hash_Subdetiphi(HcalDetId const &);
22  uint32_t hash_Subdetieta(HcalDetId const &);
23  uint32_t hash_Subdetdepth(HcalDetId const &);
24  uint32_t hash_SubdetPM(HcalDetId const &);
25  uint32_t hash_SubdetPMiphi(HcalDetId const &);
26  uint32_t hash_iphi(HcalDetId const &);
27  uint32_t hash_ieta(HcalDetId const &);
28  uint32_t hash_depth(HcalDetId const &);
29  uint32_t hash_HFPMiphi(HcalDetId const &);
30  uint32_t hash_HBHEPartition(HcalDetId const &);
31  uint32_t hash_DChannel(HcalDetId const &);
32 
36  uint32_t hash_FED(HcalElectronicsId const &);
37  uint32_t hash_FEDSpigot(HcalElectronicsId const &);
38  uint32_t hash_FEDSlot(HcalElectronicsId const &);
39  uint32_t hash_Crate(HcalElectronicsId const &);
40  uint32_t hash_CrateSpigot(HcalElectronicsId const &);
41  uint32_t hash_CrateSlot(HcalElectronicsId const &);
42  uint32_t hash_Fiber(HcalElectronicsId const &);
43  uint32_t hash_FiberFiberCh(HcalElectronicsId const &);
44  uint32_t hash_FiberCh(HcalElectronicsId const &);
45  uint32_t hash_Electronics(HcalElectronicsId const &);
46  uint32_t hash_EChannel(HcalElectronicsId const &);
47 
51  uint32_t hash_TTSubdet(HcalTrigTowerDetId const &);
52  uint32_t hash_TTSubdetPM(HcalTrigTowerDetId const &);
53  uint32_t hash_TTSubdetPMiphi(HcalTrigTowerDetId const &);
54  uint32_t hash_TTSubdetieta(HcalTrigTowerDetId const &);
55  uint32_t hash_TTdepth(HcalTrigTowerDetId const &);
56  uint32_t hash_TChannel(HcalTrigTowerDetId const &);
57 
61  uint32_t hash_TTSubdetFW(HcalTrigTowerDetId const &, HcalElectronicsId const &);
62 
75 
76  uint32_t hash_Subdet(std::string const &);
77  uint32_t hash_Subdetiphi(std::string const &);
78  uint32_t hash_Subdetieta(std::string const &);
79  uint32_t hash_Subdetdepth(std::string const &);
80  uint32_t hash_SubdetPM(std::string const &);
81  uint32_t hash_SubdetPMiphi(std::string const &);
82  uint32_t hash_iphi(std::string const &);
83  uint32_t hash_ieta(std::string const &);
84  uint32_t hash_depth(std::string const &);
85  uint32_t hash_HFPMiphi(std::string const &);
86  uint32_t hash_HBHEPartition(std::string const &);
87  uint32_t hash_DChannel(std::string const &);
88 
100 
101  uint32_t hash_FED(std::string const &);
102  uint32_t hash_FEDSpigot(std::string const &);
103  uint32_t hash_FEDSlot(std::string const &);
104  uint32_t hash_Crate(std::string const &);
105  uint32_t hash_CrateSpigot(std::string const &);
106  uint32_t hash_CrateSlot(std::string const &);
107  uint32_t hash_Fiber(std::string const &);
108  uint32_t hash_FiberFiberCh(std::string const &);
109  uint32_t hash_FiberCh(std::string const &);
110  uint32_t hash_Electronics(std::string const &);
111  uint32_t hash_EChannel(std::string const &);
112 
119 
120  uint32_t hash_TTSubdet(std::string const &);
121  uint32_t hash_TTSubdetPM(std::string const &);
122  uint32_t hash_TTSubdetPMiphi(std::string const &);
123  uint32_t hash_TTSubdetieta(std::string const &);
124  uint32_t hash_TTdepth(std::string const &);
125  uint32_t hash_TChannel(std::string const &);
126 
128 
129  uint32_t hash_TTSubdetFW(std::string const &);
130 
131  enum HashType {
132  fSubdet = 0,
138  fiphi = 6,
139  fieta = 7,
140  fdepth = 8,
143  fDChannel = 11,
145  fFED = 13,
147  fFEDSlot = 15,
148  fCrate = 16,
151  fFiber = 19,
153  fFiberCh = 21,
155  fEChannel = 23,
157  fTTSubdet = 25,
161  fTTdepth = 29,
162  fTChannel = 30,
167  };
168  typedef uint32_t (*hash_function_did)(HcalDetId const &);
169  typedef uint32_t (*hash_function_eid)(HcalElectronicsId const &);
170  typedef uint32_t (*hash_function_tid)(HcalTrigTowerDetId const &);
171  typedef uint32_t (*hash_function_mixid)(HcalTrigTowerDetId const &, HcalElectronicsId const &);
182  hash_iphi,
183  hash_ieta,
184  hash_depth,
187  hash_DChannel};
190  hash_FEDSlot,
191  hash_Crate,
194  hash_Fiber,
196  hash_FiberCh,
198  hash_EChannel};
208  name_iphi,
209  name_ieta,
210  name_depth,
213  name_DChannel};
216  name_FEDSlot,
217  name_Crate,
220  name_Fiber,
222  name_FiberCh,
224  name_EChannel};
231  "Subdet", "Subdetiphi", "Subdetieta", "Subdetdepth", "SubdetPM", "SubdetPMiphi",
232  "iphi", "ieta", "depth", "HFPMiphi", "HBHEPartition", "DChannel",
233 
234  "FED", "FEDSpigot", "FEDSlot", "Crate", "CrateSpigot", "CrateSlot",
235  "Fiber", "FiberFiberCh", "FiberCh", "Electronics", "EChannel",
236 
237  "TTSubdet", "TTSubdetPM", "TTSubdetPMiphi", "TTSubdetieta", "TTdepth", "TChannel",
238 
239  "TTSubdetFW"};
240  } // namespace hashfunctions
241 } // namespace hcaldqm
242 
243 #endif
std::string name_CrateSpigot(HcalElectronicsId const &)
uint32_t hash_TTSubdetFW(HcalTrigTowerDetId const &, HcalElectronicsId const &)
std::string name_Electronics(HcalElectronicsId const &)
uint32_t hash_Subdetdepth(HcalDetId const &)
std::string name_CrateSlot(HcalElectronicsId const &)
std::string name_Crate(HcalElectronicsId const &)
uint32_t hash_SubdetPM(HcalDetId const &)
uint32_t(* hash_function_eid)(HcalElectronicsId const &)
uint32_t hash_SubdetPMiphi(HcalDetId const &)
std::string name_FiberFiberCh(HcalElectronicsId const &)
uint32_t hash_TTSubdet(HcalTrigTowerDetId const &)
uint32_t hash_Subdetiphi(HcalDetId const &)
std::string name_TTdepth(HcalTrigTowerDetId const &)
std::string name_FiberCh(HcalElectronicsId const &)
std::string name_TChannel(HcalTrigTowerDetId const &)
uint32_t hash_Subdetieta(HcalDetId const &)
hash_function_tid const hash_tid[nHashType_tid - nHashType_eid - 1]
std::string name_Subdetieta(HcalDetId const &)
std::string name_Subdetiphi(HcalDetId const &)
uint32_t hash_Crate(HcalElectronicsId const &)
uint32_t hash_iphi(HcalDetId const &)
uint32_t hash_FED(HcalElectronicsId const &)
std::string const hash_names[nhashes]
std::string(* name_function_did)(HcalDetId const &)
std::string(* name_function_eid)(HcalElectronicsId const &)
uint32_t hash_DChannel(HcalDetId const &)
uint32_t hash_TTSubdetieta(HcalTrigTowerDetId const &)
uint32_t hash_FiberFiberCh(HcalElectronicsId const &)
hash_function_mixid const hash_mixid[nHashType_mixid - nHashType_tid - 1]
std::string name_EChannel(HcalElectronicsId const &)
name_function_eid const name_eid[nHashType_eid - nHashType_did - 1]
std::string name_FEDSpigot(HcalElectronicsId const &)
uint32_t hash_Fiber(HcalElectronicsId const &)
uint32_t hash_TTSubdetPM(HcalTrigTowerDetId const &)
std::string name_TTSubdet(HcalTrigTowerDetId const &)
std::string name_SubdetPM(HcalDetId const &)
name_function_mixid const name_mixid[nHashType_mixid - nHashType_tid - 1]
uint32_t(* hash_function_mixid)(HcalTrigTowerDetId const &, HcalElectronicsId const &)
std::string name_TTSubdetieta(HcalTrigTowerDetId const &)
uint32_t hash_TChannel(HcalTrigTowerDetId const &)
std::string(* name_function_mixid)(HcalTrigTowerDetId const &, HcalElectronicsId const &)
uint32_t hash_FEDSpigot(HcalElectronicsId const &)
uint32_t hash_depth(HcalDetId const &)
std::string name_DChannel(HcalDetId const &)
name_function_tid const name_tid[nHashType_tid - nHashType_eid - 1]
uint32_t(* hash_function_tid)(HcalTrigTowerDetId const &)
std::string name_HFPMiphi(HcalDetId const &)
hash_function_did const hash_did[nHashType_did]
uint32_t hash_TTSubdetPMiphi(HcalTrigTowerDetId const &)
uint32_t hash_FEDSlot(HcalElectronicsId const &)
uint32_t hash_Subdet(HcalDetId const &)
std::string(* name_function_tid)(HcalTrigTowerDetId const &)
uint32_t hash_FiberCh(HcalElectronicsId const &)
uint32_t hash_ieta(HcalDetId const &)
std::string name_TTSubdetPMiphi(HcalTrigTowerDetId const &)
std::string name_SubdetPMiphi(HcalDetId const &)
uint32_t hash_HFPMiphi(HcalDetId const &)
uint32_t hash_CrateSlot(HcalElectronicsId const &)
uint32_t hash_CrateSpigot(HcalElectronicsId const &)
std::string name_FED(HcalElectronicsId const &)
std::string name_TTSubdetFW(HcalTrigTowerDetId const &, HcalElectronicsId const &)
hash_function_eid const hash_eid[nHashType_eid - nHashType_did - 1]
std::string name_ieta(HcalDetId const &)
std::string name_HBHEPartition(HcalDetId const &)
std::string name_depth(HcalDetId const &)
name_function_did const name_did[nHashType_did]
std::string name_iphi(HcalDetId const &)
uint32_t(* hash_function_did)(HcalDetId const &)
uint32_t hash_Electronics(HcalElectronicsId const &)
uint32_t hash_EChannel(HcalElectronicsId const &)
Readout chain identification for Hcal.
uint32_t hash_TTdepth(HcalTrigTowerDetId const &)
std::string name_TTSubdetPM(HcalTrigTowerDetId const &)
uint32_t hash_HBHEPartition(HcalDetId const &)
std::string name_Fiber(HcalElectronicsId const &)
std::string name_FEDSlot(HcalElectronicsId const &)
std::string name_Subdet(HcalDetId const &)
std::string name_Subdetdepth(HcalDetId const &)