47 (in_s_fpga ==
"bot") ? mytopbot = 0 : mytopbot = 1;
52 myrctcra_ = in_rctcra;
53 myrctcar_ = in_rctcar;
54 myrctcon_ = in_rctcon;
58 myslbin2_ = in_s_slb2;
59 myslnam_ = in_s_slnam;
60 myrctnam_ = in_s_rctnam;
64 heid.
setHTR(in_cr, in_htr, mytopbot);
69 else if (in_s_det ==
"HE")
71 else if (in_s_det ==
"HF")
74 HcalDetId hdid(mysubdet, in_sid * in_et, in_ph, in_dep);
76 HcalFrontEndId hrbx(in_s_rbx, in_rm, in_pix, in_rm_fi, in_fi_ch, in_qie, in_adc);
79 hcalEID_ = heid.
rawId();
80 hcalDetID_ = hdid.
rawId();
81 hcalFrontEndID_ = hrbx.
rawId();
85 static char myline[512];
94 if ((hcaleid.
dccid() % 2) == 1) {
107 : ((mysubdet == 2) ? mydet =
"HE" 108 : ((mysubdet == 3) ? mydet =
"HO" : ((mysubdet == 4) ? mydet =
"HF" : mydet =
"invalid")));
110 (hcaleid.
htrTopBottom() == 0) ? myfpga =
"bot" : myfpga =
"top";
113 "%1d %6d %6d %6d %6d %6d %6s %7s %6d %6d %6d",
125 sprintf(myline + strlen(myline),
126 "%6d %6d %6d %6d %6d %6d %6s",
134 sprintf(myline + strlen(myline),
135 "%8d %7d %6d %6d %6d %6s",
142 sprintf(myline + strlen(myline),
143 "%8s %15s %6d %6d %6d %20s %6d\n",
150 hcaleid.
dccid() + 700);
179 (in_s_fpga ==
"bot") ? mytopbot = 0 : mytopbot = 1;
184 myletter_ = in_s_let;
188 heid.
setHTR(in_cr, in_htr, mytopbot);
190 if (in_s_det ==
"HO") {
193 hcalDetID_ = hdid.
rawId();
197 hcalDetID_ = hdid.
rawId();
200 HcalFrontEndId hrbx(in_s_rbx, in_rm, in_pix, in_rm_fi, in_fi_ch, in_qie, in_adc);
203 hcalEID_ = heid.
rawId();
204 hcalFrontEndID_ = hrbx.
rawId();
208 static char myline[512];
216 if ((hcaleid.
dccid() % 2) == 1) {
234 myside = hcalcompid.
zside();
235 myeta = hcalcompid.
ieta() * myside;
236 myphi = hcalcompid.
iphi();
244 : ((mysubdet ==
HcalOuter) ? mydet =
"HO" 245 : ((mysubdet ==
HcalForward) ? mydet =
"HF" : mydet =
"invalid")));
246 mydepth = hcalcompid.
depth();
247 myside = hcalcompid.
zside();
249 myphi = hcalcompid.
iphi();
252 (hcaleid.
htrTopBottom() == 0) ? myfpga =
"bot" : myfpga =
"top";
255 "%1d %6d %6d %6d %6d %6d %6s %7s %6d %6d %6d",
267 sprintf(myline + strlen(myline),
268 "%6d %6d %6d %6d %8s %6d %6d %6s",
277 sprintf(myline + strlen(myline),
278 "%8d %7d %6d %6d %6d\n",
283 hcaleid.
dccid() + 700);
308 (in_s_fpga ==
"bot") ? mytopbot = 0 : mytopbot = 1;
314 mycalibsubdet_ = in_s_subdet;
318 heid.
setHTR(in_cr, in_htr, mytopbot);
322 if (in_s_det ==
"HB")
324 else if (in_s_det ==
"HE")
326 else if (in_s_det ==
"HO")
328 else if (in_s_det ==
"HF")
333 int in_rm, in_pix, in_qie, in_adc;
335 if (in_s_det ==
"HF")
342 in_adc = in_fi_ch + (3 * (in_rm_fi - 1));
344 HcalFrontEndId hrbx(in_s_rbx, in_rm, in_pix, in_rm_fi, in_fi_ch, in_qie, in_adc);
347 hcalEID_ = heid.
rawId();
348 hcalCalibDetID_ = hcalibdid.
rawId();
349 hcalFrontEndID_ = hrbx.
rawId();
353 static char myline[512];
362 if ((hcaleid.
dccid() % 2) == 1) {
377 : ((mysubdet ==
HcalOuter) ? mydet =
"HO" 378 : ((mysubdet ==
HcalForward) ? mydet =
"HF" : mydet =
"invalid")));
379 (hcaleid.
htrTopBottom() == 0) ? myfpga =
"bot" : myfpga =
"top";
382 "%1d %6d %6d %6d %6d %6s %7s",
389 rbxid.
rbx().c_str());
390 sprintf(myline + strlen(myline),
391 "%8d %6d %6d %6d %6d %4d %5s",
399 sprintf(myline + strlen(myline),
400 "%8d %7d %6d %4d %6d %8d %9s\n",
405 hcaleid.
dccid() + 700,
407 mycalibsubdet_.c_str());
434 (in_s_fpga ==
"bot") ? mytopbot = 0 : mytopbot = 1;
447 heid.
setHTR(in_cr, in_htr, mytopbot);
452 if (in_s_det ==
"ZDC_EM")
454 else if (in_s_det ==
"ZDC_HAD")
456 else if (in_s_det ==
"ZDC_LUM")
458 else if (in_s_det ==
"ZDC_RPD")
463 (in_sid > 0) ? myzdccheck =
true : myzdccheck =
false;
467 hcalEID_ = heid.
rawId();
468 hcalZDCDetID_ = hzdcdid.
rawId();
472 static char myline[512];
480 if ((hcaleid.
dccid() % 2) == 1) {
489 string mydet =
"ZDC_";
494 else if (myzdcsec == 1)
496 else if (myzdcsec == 2)
498 else if (myzdcsec == 3)
503 (hcaleid.
htrTopBottom() == 0) ? myfpga =
"bot" : myfpga =
"top";
506 "%1d %5d %2d %2d %3d %6d %7s %7d",
515 sprintf(myline + strlen(myline),
516 "%7d %3d %4d %4d %6d %6d %6d",
524 sprintf(myline + strlen(myline),
525 "%5d %5s %7d %7d %6d %4d %6d\n",
532 hcaleid.
dccid() + 700);
564 myrctcra_ = in_rctcra;
565 myrctcar_ = in_rctcar;
566 myrctcon_ = in_rctcon;
571 myslbin2_ = in_s_slb2;
572 myslnam_ = in_s_slnam;
573 myrctnam_ = in_s_rctnam;
577 in_tb == 1 ? top = 0 : top = 1;
579 HcalElectronicsId hteid(in_ndat, in_slb, in_spig, in_fed - 700, in_cr, in_htr, top);
586 hcalTrigEID_ = hteid.
rawId();
587 hcalTrigDetID_ = htrigdid.
rawId();
591 static char myline[512];
598 if ((hcaltrigeid.
dccid() % 2) == 1) {
607 (hcaltrigeid.
htrTopBottom() == 0) ? myfpga =
"bot" : myfpga =
"top";
610 "%1d %5d %4d %4d %5d %6d %4s %7d %6d ",
620 sprintf(myline + strlen(myline),
621 "%4d %5s %7d %6d %4d %4d %6s %7s %5d ",
631 sprintf(myline + strlen(myline),
632 "%13s %7d %7d %7d %17s %6d\n",
638 hcaltrigeid.
dccid() + 700);
constexpr uint32_t rawId() const
constexpr void setHTR(int crate, int slot, int tb)
HcalSubdetector subdet() const
get the subdetector
int zside() const
get the z-side of the cell (1/-1)
int zside() const
get the z-side of the cell (1/-1)
constexpr uint32_t rawId() const
get the raw id
constexpr int slbChannelIndex() const
get the SLB channel index (valid only for VME trigger-chain ids)
constexpr int dccid() const
get the (Hcal local) DCC id for VME, crate number for uTCA
int ieta() const
get the tower ieta
constexpr int htrTopBottom() const
get the htr top/bottom (1=top/0=bottom), valid for VME
int depth() const
get the tower depth
constexpr int htrSlot() const
get the htr slot
constexpr int readoutVMECrateId() const
get the readout VME crate number
constexpr int spigot() const
get the spigot (input number on DCC, AMC card number for uTCA)
int ietaAbs() const
get the absolute value of the cell ieta
int iphi() const
get the low-edge iphi (if relevant)
int iphi() const
get the cell iphi
constexpr int fiberIndex() const
get the fiber index. For VME 1-8 (which of eight fibers carried by a spigot), for uTCA fibers are zer...
int zside() const
get the sign of ieta (+/-1)
int depth() const
get the depth (1 for EM, channel + 1 for HAD, 2 for RPD, not sure yet for LUM, leave as default) ...
int channel() const
get the channel
Section section() const
get the section
int cboxChannel() const
get the calibration box channel (if relevant)
bool isHcalCalibDetId() const
constexpr int slbSiteNumber() const
get the SLB site number (valid only for VME trigger-chain ids)
constexpr int fiberChanId() const
get the fiber channel id (which of channels on a fiber)
HcalSubdetector hcalSubdet() const
get the HcalSubdetector (if relevant)
Readout chain identification for Hcal.
int iphi() const
get the tower iphi