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 void setHTR(int crate, int slot, int tb)
int cboxChannel() const
get the calibration box channel (if relevant)
constexpr int32_t htrSlot() const
get the htr slot
constexpr int zside() const
get the z-side of the cell (1/-1)
constexpr int ietaAbs() const
get the absolute value of the cell ieta
constexpr int32_t htrTopBottom() const
get the htr top/bottom (1=top/0=bottom), valid for VME
HcalSubdetector hcalSubdet() const
get the HcalSubdetector (if relevant)
constexpr int32_t depth() const
get the depth (1 for EM, channel + 1 for HAD, 2 for RPD, not sure yet for LUM, leave as default) ...
int iphi() const
get the tower iphi
constexpr HcalSubdetector subdet() const
get the subdetector
constexpr int32_t readoutVMECrateId() const
get the readout VME crate number
constexpr int32_t fiberChanId() const
get the fiber channel id (which of channels on a fiber)
constexpr int32_t spigot() const
get the spigot (input number on DCC, AMC card number for uTCA)
int iphi() const
get the low-edge iphi (if relevant)
constexpr int32_t slbSiteNumber() const
get the SLB site number (valid only for VME trigger-chain ids)
int zside() const
get the sign of ieta (+/-1)
int ieta() const
get the tower ieta
bool isHcalCalibDetId() const
constexpr uint32_t rawId() const
get the raw id
constexpr int32_t fiberIndex() const
get the fiber index. For VME 1-8 (which of eight fibers carried by a spigot), for uTCA fibers are zer...
constexpr uint32_t rawId() const
constexpr Section section() const
get the section
constexpr int32_t slbChannelIndex() const
get the SLB channel index (valid only for VME trigger-chain ids)
constexpr int32_t channel() const
get the channel
constexpr int32_t zside() const
get the z-side of the cell (1/-1)
Readout chain identification for Hcal.
constexpr int iphi() const
get the cell iphi
constexpr int32_t dccid() const
get the (Hcal local) DCC id for VME, crate number for uTCA
constexpr int depth() const
get the tower depth