21 #include "GaudiKernel/MsgStream.h"
27 static const int NMAXHIT = 200;
32 const std::string&
name,
69 return StatusCode::FAILURE;
78 std::vector<std::string> hardware_name_list;
79 std::vector<std::string> layer_name_list;
80 std::vector<std::string> layervslayer_name_list;
81 std::vector<std::string> layerPhivsEta_name_list;
82 std::vector<std::string> layerPhivsEtaSector_name_list;
83 hardware_name_list.push_back(
"XXX");
91 return StatusCode::SUCCESS;
99 return StatusCode::SUCCESS;
112 "RpcLv1RawDataValAlg::RPCLV1 RawData Monitoring Histograms being "
125 DetectorManagerHandle.cptr();
128 "nullptr to the read MuonDetectorManager conditions object");
129 return StatusCode::FAILURE;
132 int i_triggertimelowpt = -1;
133 int i_triggertimehighpt = -1;
134 int n_triggerlowpt = 0;
135 int n_triggerlowpt_eta = 0;
136 int n_triggerlowpt_phi = 0;
137 int n_triggerhighpt = 0;
138 int n_triggerhighpt_eta = 0;
139 int n_triggerhighpt_phi = 0;
141 int IJKtriggerLowPtPhi = 0;
142 int IJKtriggerLowPtEta = 0;
143 int IJKtriggerHighPtPhi = 0;
144 int IJKtriggerHighPtEta = 0;
146 int nFiredChannels = 0;
148 int PhiOr[64][4][4][32] = {{{{0}}}};
156 rdoColli != rpcRDO->
end(); ++rdoColli) {
157 const RpcPad* rdoColl = *rdoColli;
159 if ((rdoColl)->
size() != 0) {
161 for (; itCM != (rdoColl)->
end(); ++itCM) {
164 for (; itChan != (*itCM)->end(); ++itChan) {
167 int i_cmaId = (*itCM)->onlineId();
168 int i_bcId = (*itChan)->bcid();
169 int i_time = (*itChan)->time();
170 int i_ijk = (*itChan)->ijk();
175 i_triggertimelowpt += i_bcId * 8 + i_time;
177 n_triggerlowpt_phi++;
179 n_triggerlowpt_eta++;
183 i_triggertimehighpt += i_bcId * 8 + i_time;
186 n_triggerhighpt_phi++;
188 n_triggerhighpt_eta++;
198 if (n_triggerlowpt > 0)
199 i_triggertimelowpt = i_triggertimelowpt / n_triggerlowpt;
200 if (n_triggerhighpt > 0)
201 i_triggertimehighpt = i_triggertimehighpt / n_triggerhighpt;
204 std::string generic_path_rpclv1monitoring =
205 "Muon/MuonRawDataMonitoring/RPCLV1";
208 generic_path_rpclv1monitoring +
"/Overview",
211 generic_path_rpclv1monitoring +
"/GLOBAL",
213 MonGroup rpcCoolDb(
this, generic_path_rpclv1monitoring +
"/CoolDB",
run,
216 TH1* rpclv1_hitperEvent =
nullptr;
217 sc = rpclv1prd_shift.
getHist(rpclv1_hitperEvent,
"rpclv1_hitperEvent");
220 "couldn't register rpclv1_hitperEvent hist to MonGroup");
221 rpclv1_hitperEvent->
Fill(
float(nFiredChannels));
223 TH1* rpclv1triggerlowpt_etastat =
nullptr;
224 sc = rpclv1prd_shift.
getHist(rpclv1triggerlowpt_etastat,
225 "Trigger_Hits_LowPt_eta_Stat");
228 "couldn't register rpclv1triggerlowpt_etastat hist to "
230 rpclv1triggerlowpt_etastat->
Fill(
float(n_triggerlowpt_eta));
232 TH1* rpclv1triggerlowpt_phistat =
nullptr;
233 sc = rpclv1prd_shift.
getHist(rpclv1triggerlowpt_phistat,
234 "Trigger_Hits_LowPt_phi_Stat");
237 "couldn't register rpclv1triggerlowpt_phistat hist to "
239 rpclv1triggerlowpt_phistat->
Fill(
float(n_triggerlowpt_phi));
241 TH2* rpclv1triggerlowpt_etaphistat =
nullptr;
242 sc = rpclv1prd_shift.
getHist(rpclv1triggerlowpt_etaphistat,
243 "Trigger_Hits_Lowpt_etaphi_Stat");
246 "couldn't register Trigger_Hits_Lowpt_etaphi_Stat hist to "
248 rpclv1triggerlowpt_etaphistat->
Fill(
float(n_triggerlowpt_phi),
249 float(n_triggerlowpt_eta));
251 TH1* rpclv1triggerhighpt_etastat =
nullptr;
252 sc = rpclv1prd_shift.
getHist(rpclv1triggerhighpt_etastat,
253 "Trigger_Hits_HighPt_eta_Stat");
256 "couldn't register rpclv1triggerhighpt_eta_stat hist to "
258 rpclv1triggerhighpt_etastat->
Fill(
float(n_triggerhighpt_eta));
260 TH1* rpclv1triggerhighpt_phistat =
nullptr;
261 sc = rpclv1prd_shift.
getHist(rpclv1triggerhighpt_phistat,
262 "Trigger_Hits_HighPt_phi_Stat");
265 "couldn't register rpclv1triggerhighpt_phi_stat hist to "
267 rpclv1triggerhighpt_phistat->
Fill(
float(n_triggerhighpt_phi));
269 TH2* rpclv1triggerhighpt_etaphistat =
nullptr;
270 sc = rpclv1prd_shift.
getHist(rpclv1triggerhighpt_etaphistat,
271 "Trigger_Hits_HighPt_etaphi_Stat");
274 "couldn't register Trigger_Hits_HighPt_etaphi_Stat hist to "
276 rpclv1triggerhighpt_etaphistat->
Fill(
float(n_triggerhighpt_phi),
277 float(n_triggerhighpt_eta));
279 TH2* rpclv1ROI_LowPt =
nullptr;
280 sc = rpclv1prd_shift.
getHist(rpclv1ROI_LowPt,
"ROI_LowPt_distribution");
283 "couldn't register ROI_LowPt_distribution hist to MonGroup");
285 TH2* rpclv1ROI_HighPt =
nullptr;
286 sc = rpclv1prd_shift.
getHist(rpclv1ROI_HighPt,
287 "ROI_HighPt_distribution");
290 "couldn't register ROI_HighPt_distribution hist to MonGroup");
292 TH1* rpclv1sectorlogicstat =
nullptr;
293 sc = rpclv1prd_shift.
getHist(rpclv1sectorlogicstat,
294 "SLChannel_per_SectorLogic");
297 "couldn't register rpclv1sectorlogicstat hist to MonGroup");
299 TH1* rpclv1towervslogicstat =
nullptr;
300 sc = rpclv1prd_shift.
getHist(rpclv1towervslogicstat,
301 "PadChannel_per_SectorLogic");
304 "couldn't register rpclv1towervslogicstat hist to MonGroup");
306 TH2* rpclv1cmalogicstat =
nullptr;
307 sc = rpclv1prd_shift.
getHist(rpclv1cmalogicstat,
308 "CMChannel_per_SectorLogic");
311 "couldn't register rpclv1cmalogicstat hist to MonGroup");
313 TH1* rpclv1_BCid_per_TriggerCorr =
nullptr;
314 sc = rpclv1prd_shift.
getHist(rpclv1_BCid_per_TriggerCorr,
315 "rpclv1_BCid_per_TriggerCorrelation");
318 "couldn't register rpclv1_BCid_per_TriggerCorr hist to "
321 TH2* rpclv1_BCid_vs_SL =
nullptr;
322 sc = rpclv1_shift_dqmf.
getHist(rpclv1_BCid_vs_SL,
323 "rpclv1_BCid_vs_SectorLogic");
326 "couldn't register rpclv1_BCid_vs_SectorLogic hist to "
329 TH2* rpclv1_LPt_BCid_vs_SL =
nullptr;
330 sc = rpclv1_shift_dqmf.
getHist(rpclv1_LPt_BCid_vs_SL,
331 "rpclv1_LPt_BCid_vs_SectorLogic");
334 "couldn't register rpclv1_LPt_BCid_vs_SectorLogic hist to "
337 TH2* rpclv1_HPt_BCid_vs_SL =
nullptr;
338 sc = rpclv1_shift_dqmf.
getHist(rpclv1_HPt_BCid_vs_SL,
339 "rpclv1_HPt_BCid_vs_SectorLogic");
342 "couldn't register rpclv1_HPt_BCid_vs_SectorLogic hist to "
345 TH1* rpclv1_BCid_per_TriggerType =
nullptr;
346 sc = rpclv1_shift_dqmf.
getHist(rpclv1_BCid_per_TriggerType,
347 "rpclv1_BCid_per_TriggerType");
350 "couldn't register rpclv1_BCid_per_TriggerType hist to "
353 TH2* rpclv1_TriggerCond_vs_SL =
nullptr;
354 sc = rpclv1_shift_dqmf.
getHist(rpclv1_TriggerCond_vs_SL,
355 "TriggerCondition_vs_SectorLogic");
358 "couldn't register TriggerCondition_vs_SectorLogic hist to "
362 TH2* rpclv1_logicalOR_LowPt0 =
nullptr;
363 sc = rpclv1prd_shift.
getHist(rpclv1_logicalOR_LowPt0,
364 "PhiLogicalOR_LowPt0");
368 TH2* rpclv1_logicalOR_LowPt1 =
nullptr;
369 sc = rpclv1prd_shift.
getHist(rpclv1_logicalOR_LowPt1,
370 "PhiLogicalOR_LowPt1");
374 TH2* rpclv1_logicalOR_HighPt0 =
nullptr;
375 sc = rpclv1prd_shift.
getHist(rpclv1_logicalOR_HighPt0,
376 "PhiLogicalOR_HighPt0");
380 TH2* rpclv1_logicalOR_HighPt1 =
nullptr;
381 sc = rpclv1prd_shift.
getHist(rpclv1_logicalOR_HighPt1,
382 "PhiLogicalOR_HighPt1");
386 TH2* TriggerCondition_vs_CM =
nullptr;
387 sc = rpclv1prd_shift.
getHist(TriggerCondition_vs_CM,
388 "Trigger_Condition_vs_CM");
393 rdoColli != rpcRDO->
end(); ++rdoColli) {
394 const RpcPad* rdoColl = *rdoColli;
396 if ((rdoColl)->
size() != 0) {
398 for (; itCM != (rdoColl)->
end(); ++itCM) {
401 for (; itChan != (*itCM)->end(); ++itChan) {
402 int i_sector = (rdoColl)->sector();
403 int i_padId = (rdoColl)->onlineId();
404 int i_cmaId = (*itCM)->onlineId();
405 int i_bcId = (*itChan)->bcid();
406 int i_time = (*itChan)->time();
407 int i_ijk = (*itChan)->ijk();
408 int i_channel = (*itChan)->channel();
416 for (itChanThr = itChan + 1;
417 itChanThr != (*itCM)->end(); ++itChanThr) {
420 if ((*itChanThr)->ijk() < 6) {
424 if ((*itChanThr)->bcid() != i_bcId ||
425 (*itChanThr)->time() != i_time) {
431 if ((*itChanThr)->ijk() == 7 &&
432 (*itChanThr)->bcid() == i_bcId &&
433 (*itChanThr)->time() == i_time) {
434 i_thr = (*itChanThr)->thr();
440 rpclv1_BCid_per_TriggerCorr->
Fill(
443 for (
int k = 0;
k != 8 + 1;
k++) {
446 if (trigBinType != 0)
447 rpclv1_BCid_per_TriggerType->
Fill(
448 k, i_bcId + 8 *
int(i_cmaId / 4));
451 rpclv1_BCid_vs_SL->
Fill(
452 i_sector, i_bcId + 8 *
int(i_cmaId / 4));
455 rpclv1_LPt_BCid_vs_SL->
Fill(i_sector,
458 rpclv1_HPt_BCid_vs_SL->
Fill(i_sector,
463 int NtriggerLowPtPhi = 0;
464 int NtriggerLowPtEta = 0;
465 int NtriggerHighPtPhi = 0;
466 int NtriggerHighPtEta = 0;
468 IJKtriggerLowPtPhi = 0;
469 IJKtriggerLowPtEta = 0;
470 IJKtriggerHighPtPhi = 0;
471 IJKtriggerHighPtEta = 0;
475 for (; itChan3 != (*itCM)->end(); ++itChan3) {
476 int ijk_trigger = (*itChan3)->ijk();
480 int Layertrigger = ijk_trigger;
481 if (ijk_trigger == 3)
482 Layertrigger = Layertrigger - 1;
483 if (ijk_trigger == 4)
484 Layertrigger = Layertrigger - 1;
485 if (ijk_trigger == 5)
486 Layertrigger = Layertrigger - 2;
491 int(
pow(2,
float(Layertrigger)));
494 if (i_cmaId == 2 || i_cmaId == 3) {
497 int(
pow(2,
float(Layertrigger)));
500 if (i_cmaId == 4 || i_cmaId == 5) {
501 IJKtriggerHighPtPhi =
502 IJKtriggerHighPtPhi |
503 int(
pow(2,
float(Layertrigger)));
506 if (i_cmaId == 6 || i_cmaId == 7) {
507 IJKtriggerHighPtEta =
508 IJKtriggerHighPtEta |
509 int(
pow(2,
float(Layertrigger)));
518 int ConfirmCh = (*itChan3)->channel();
519 if (ijk_trigger == 3)
521 if (ijk_trigger == 5)
524 char sectorlogic_name_char[1000];
525 sprintf(sectorlogic_name_char,
526 "SectorLogic%d", i_sector);
527 std::string sectorlogic_name =
528 sectorlogic_name_char;
529 char tower_name_char[1000];
530 sprintf(tower_name_char,
"Tower%d",
532 std::string tower_name = tower_name_char;
533 char cma_name_char[1000];
534 sprintf(cma_name_char,
"Cma%d", i_cmaId);
535 std::string cma_name = cma_name_char;
536 char thr_name_char[1000];
537 sprintf(thr_name_char,
"Thr%d", i_thr);
538 std::string thr_name = thr_name_char;
540 bool histo_flag =
true;
542 std::string>::const_iterator iter =
548 if ((sectorlogic_name + tower_name +
549 cma_name + thr_name) == *iter) {
555 .push_back(sectorlogic_name +
556 tower_name + cma_name +
560 sectorlogic_name, tower_name,
561 cma_name, thr_name));
567 TH2* RPCLV1TriggerRoad =
hists.getH2(
568 sectorlogic_name +
"_" + tower_name +
569 cma_name + thr_name +
"_TriggerRoad");
570 if (RPCLV1TriggerRoad) {
571 RPCLV1TriggerRoad->
Fill(
572 float(i_channel),
float(ConfirmCh));
575 "RPCLV1TriggerRoad not in hist "
581 TH2* rpclv1_TriggerLy_vs_SL =
nullptr;
583 rpclv1_TriggerLy_vs_SL,
584 "TriggerLayer_vs_SectorLogic");
588 "TriggerCondition_vs_SectorLogic hist "
591 if (NtriggerLowPtPhi > 0) {
592 TH1* rpclv1Trigger_cond_LowPt_phi =
nullptr;
594 rpclv1Trigger_cond_LowPt_phi,
595 "Trigger_Condition_LowPt_Phi");
599 "Trigger_Layer_LowPt_Phi hist to "
601 rpclv1Trigger_cond_LowPt_phi->
Fill(
602 float(IJKtriggerLowPtPhi));
603 rpclv1_TriggerLy_vs_SL->
Fill(
606 TriggerCondition_vs_CM->
Fill(
607 i_sector * 56 + i_padId * 8 + i_cmaId,
610 if (NtriggerLowPtEta > 0) {
611 TH1* rpclv1Trigger_cond_LowPt_eta =
nullptr;
613 rpclv1Trigger_cond_LowPt_eta,
614 "Trigger_Condition_LowPt_Eta");
618 "registerTrigger_Condition_LowPt_"
619 "Eta hist to MonGroup");
620 rpclv1Trigger_cond_LowPt_eta->
Fill(
621 float(IJKtriggerLowPtEta));
622 rpclv1_TriggerLy_vs_SL->
Fill(
625 TriggerCondition_vs_CM->
Fill(
626 i_sector * 56 + i_padId * 8 + i_cmaId,
629 if (NtriggerHighPtPhi > 0) {
630 TH1* rpclv1Trigger_cond_HighPt_phi =
633 rpclv1Trigger_cond_HighPt_phi,
634 "Trigger_Condition_HighPt_Phi");
638 "registerTrigger_Condition_LowPt_"
639 "Eta hist to MonGroup");
640 rpclv1Trigger_cond_HighPt_phi->
Fill(
641 float(IJKtriggerHighPtPhi));
642 rpclv1_TriggerLy_vs_SL->
Fill(
644 IJKtriggerHighPtPhi + 16);
645 TriggerCondition_vs_CM->
Fill(
646 i_sector * 56 + i_padId * 8 + i_cmaId,
647 IJKtriggerHighPtPhi);
649 if (NtriggerHighPtEta > 0) {
650 TH1* rpclv1Trigger_cond_HighPt_eta =
653 rpclv1Trigger_cond_HighPt_eta,
654 "Trigger_Condition_HighPt_Eta");
658 "registerTrigger_Condition_LowPt_"
659 "Eta hist to MonGroup");
660 rpclv1Trigger_cond_HighPt_eta->
Fill(
661 float(IJKtriggerHighPtEta));
662 rpclv1_TriggerLy_vs_SL->
Fill(
664 IJKtriggerHighPtEta + 16);
665 TriggerCondition_vs_CM->
Fill(
666 i_sector * 56 + i_padId * 8 + i_cmaId,
667 IJKtriggerHighPtEta);
670 int n_trigLow_ly = 0;
671 int n_trigHigh_ly = 0;
672 for (
int k = 0;
k != 4;
k++) {
673 if (((IJKtriggerLowPtPhi |
674 IJKtriggerLowPtEta) &
675 int(
pow(2,
float(
k)))) != 0)
678 if (NtriggerLowPtPhi > 0 ||
679 NtriggerLowPtEta > 0) {
680 rpclv1_TriggerCond_vs_SL->
Fill(
681 i_sector, n_trigLow_ly);
683 if (((IJKtriggerHighPtPhi |
684 IJKtriggerHighPtEta) &
686 for (
int k = 2;
k != 4;
k++) {
687 if (((IJKtriggerHighPtPhi |
688 IJKtriggerHighPtEta) &
689 int(
pow(2,
float(
k)))) != 0)
692 if (n_trigHigh_ly == 0) {
693 rpclv1_TriggerCond_vs_SL->
Fill(i_sector,
697 rpclv1_TriggerCond_vs_SL->
Fill(
698 i_sector, n_trigHigh_ly + 5);
703 int i_cma_phi = i_cmaId;
706 for (; itCM2 != (rdoColl)->
end(); ++itCM2) {
707 int i_cmaId2 = (*itCM2)->onlineId();
708 int i_cma_eta = i_cmaId2;
713 if (i_cma_eta == 2 || i_cma_eta == 3) {
715 itChan2 = (*itCM2)->begin();
716 for (; itChan2 != (*itCM2)->end();
718 if ((*itChan2)->ijk() == 6) {
723 rpclv1ROI_LowPt->
Fill(
729 }
else if (i_cmaId == 4 ||
733 if (i_cma_eta == 6 || i_cma_eta == 7) {
735 itChan2 = (*itCM2)->begin();
736 for (; itChan2 != (*itCM2)->end();
738 if ((*itChan2)->ijk() == 6) {
743 rpclv1ROI_HighPt->
Fill(
757 if (i_ijk > 1 && i_ijk < 6) {
758 if (i_cmaId == 0 || i_cmaId == 1) {
759 PhiOr[i_sector][i_cmaId][i_ijk - 2]
761 PhiOr[i_sector][i_cmaId][i_ijk - 2]
763 int(
pow(2,
float(i_padId)));
765 if (i_cmaId == 4 || i_cmaId == 5) {
766 PhiOr[i_sector][i_cmaId - 2][i_ijk - 2]
768 PhiOr[i_sector][i_cmaId - 2]
769 [i_ijk - 2][i_channel] |
770 int(
pow(2,
float(i_padId)));
774 rpclv1sectorlogicstat->
Fill(
float(i_sector));
777 rpclv1towervslogicstat->
Fill(
float(i_sector),
781 rpclv1cmalogicstat->
Fill(
782 float(i_sector),
float(i_padId * 8 + i_cmaId));
784 char sectorlogic_name_char[1000];
785 sprintf(sectorlogic_name_char,
"SectorLogic%d",
787 std::string sectorlogic_name =
788 sectorlogic_name_char;
789 char tower_name_char[1000];
790 sprintf(tower_name_char,
"Tower%d", i_padId);
791 std::string tower_name = tower_name_char;
792 char cma_name_char[1000];
793 sprintf(cma_name_char,
"Cma%d", i_cmaId);
794 std::string cma_name = cma_name_char;
795 char ijk_name_char[1000];
796 sprintf(ijk_name_char,
"ijk%d", i_ijk);
797 std::string ijk_name = ijk_name_char;
799 std::string generic_path_RPCLV1cmatimevschcxx =
800 generic_path_rpclv1monitoring +
"/" +
801 sectorlogic_name +
"/";
802 generic_path_RPCLV1cmatimevschcxx += tower_name;
803 generic_path_RPCLV1cmatimevschcxx +=
804 "/rpclv1cosmic_cmatimevsch";
805 generic_path_RPCLV1cmatimevschcxx += cma_name;
808 generic_path_RPCLV1cmatimetriggervschcxx =
809 generic_path_rpclv1monitoring +
"/" +
810 sectorlogic_name +
"/";
811 generic_path_RPCLV1cmatimetriggervschcxx +=
813 generic_path_RPCLV1cmatimetriggervschcxx +=
814 "/rpclv1cosmic_cmatimetriggervsch";
815 generic_path_RPCLV1cmatimetriggervschcxx +=
820 bool histo_flag =
true;
821 for (std::vector<std::string>::const_iterator
827 if ((sectorlogic_name + tower_name +
828 cma_name) == *iter) {
834 sectorlogic_name + tower_name +
837 sectorlogic_name, tower_name,
843 TH2* RPCLV1cmatimevsch =
hists.getH2(
844 sectorlogic_name +
"_" + tower_name +
845 cma_name +
"_time_vs_channel");
846 if (RPCLV1cmatimevsch) {
847 RPCLV1cmatimevsch->
Fill(
848 float(i_channel + i_ijk * 32),
849 float(i_bcId * 8 + i_time));
852 "RPCLV1cmatimevsch not in hist list!");
855 if (n_triggerlowpt > 0) {
856 TH2* RPCLV1cmatimetriggervsch =
hists.getH2(
857 sectorlogic_name +
"_" + tower_name +
859 "_(time-triggertime)_vs_channel");
860 if (RPCLV1cmatimetriggervsch) {
861 RPCLV1cmatimetriggervsch->
Fill(
862 float(i_channel + i_ijk * 32),
863 float(i_bcId * 8 + i_time -
864 i_triggertimelowpt));
867 "RPCLV1cmatimetriggervsch not in "
879 std::string cma_name_p;
880 char cma_name_p_char[1000];
881 if (i_cmaId == 1 || i_cmaId == 3 ||
882 i_cmaId == 5 || i_cmaId == 7) {
883 sprintf(cma_name_p_char,
"Cma%d_%d",
884 i_cmaId - 1, i_cmaId);
885 cma_name_p = cma_name_p_char;
888 sprintf(cma_name_p_char,
"Cma%d_%d",
889 i_cmaId, i_cmaId + 1);
890 cma_name_p = cma_name_p_char;
894 std::string ijk_name_p;
895 if (i_ijk == 2 || i_ijk == 3) {
896 ijk_name_p =
"ijk2_3";
898 shift_cm = shift_cm * 2;
900 if (i_ijk == 4 || i_ijk == 5) {
901 ijk_name_p =
"ijk4_5";
903 shift_cm = shift_cm * 2;
905 ijk_name_p = ijk_name;
909 if (i_ijk == 3 || i_ijk == 5) {
913 bool histo_flag =
true;
914 for (std::vector<std::string>::const_iterator
917 if ((sectorlogic_name + cma_name_p +
918 ijk_name_p) == *iter) {
931 i_sector, sectorlogic_name, cma_name_p,
937 sectorlogic_name +
"_" + cma_name_p +
"_" +
938 ijk_name_p +
"_Profiles");
939 if (RPCLV1Profiles) {
940 RPCLV1Profiles->
Fill(
float(
941 i_padId * shift_pad * 64 + shift_cm +
942 shift_ijk + i_channel));
945 "RPCLV1Profiles not in hist list!");
967 std::list<Identifier> idList =
971 std::list<Identifier>::const_iterator it_list;
973 for (it_list = idList.begin();
974 it_list != idList.end(); ++it_list) {
978 std::vector<std::string>
979 rpclayersectorsidename =
983 std::string sector_dphi_layer =
984 rpclayersectorsidename[12];
998 TH1* rpcCool_StripProfile =
nullptr;
999 if (cmaId == 0 || cmaId == 2 ||
1000 cmaId == 4 || cmaId == 6)
1002 rpcCool_StripProfile,
1004 "_ProfileDataCMeven");
1005 if (cmaId == 1 || cmaId == 3 ||
1006 cmaId == 5 || cmaId == 7)
1008 rpcCool_StripProfile,
1010 "_ProfileDataCModd");
1014 << sector_dphi_layer
1015 <<
"_ProfileDataCMeven or odd");
1016 if (rpcCool_StripProfile) {
1017 rpcCool_StripProfile->
Fill(
1035 for (
int iSL = 0; iSL != 64; iSL++) {
1036 for (
int k = 0;
k != 2;
k++) {
1037 for (
int iCh = 0; iCh != 32; iCh++) {
1038 if (PhiOr[iSL][0 +
k][0 +
k][iCh] != 0)
1039 rpclv1_logicalOR_LowPt0->
Fill(
1040 iSL + 1, PhiOr[iSL][0 +
k][0 +
k][iCh]);
1041 if (PhiOr[iSL][0 +
k][2 +
k][iCh] != 0)
1042 rpclv1_logicalOR_LowPt1->
Fill(
1043 iSL + 1, PhiOr[iSL][0 +
k][2 +
k][iCh]);
1044 if (PhiOr[iSL][2 +
k][0 +
k][iCh] != 0)
1045 rpclv1_logicalOR_HighPt0->
Fill(
1046 iSL + 1, PhiOr[iSL][2 +
k][0 +
k][iCh]);
1047 if (PhiOr[iSL][2 +
k][2 +
k][iCh] != 0)
1048 rpclv1_logicalOR_HighPt1->
Fill(
1049 iSL + 1, PhiOr[iSL][2 +
k][2 +
k][iCh]);
1063 ATH_MSG_DEBUG(
"RPC RawData Monitoring Histograms being booked");
1071 std::string generic_path_rpclv1monitoring =
1072 "Muon/MuonRawDataMonitoring/RPCLV1";
1075 generic_path_rpclv1monitoring +
"/Overview",
1078 generic_path_rpclv1monitoring +
"/GLOBAL",
1080 MonGroup rpcCoolDb(
this, generic_path_rpclv1monitoring +
"/CoolDB",
run,
1087 DetectorManagerHandle.cptr();
1090 "nullptr to the read MuonDetectorManager conditions object");
1091 return StatusCode::FAILURE;
1098 std::string rpclv1_TriggerLy_vs_SL_title =
1099 "TriggerLayer_vs_SectorLogic";
1100 const char* rpclv1_TriggerLy_vs_SL_title_char =
1101 rpclv1_TriggerLy_vs_SL_title.c_str();
1103 TH2* rpclv1_TriggerLy_vs_SL =
new TH2I(
1104 rpclv1_TriggerLy_vs_SL_title_char,
1105 rpclv1_TriggerLy_vs_SL_title_char, 64, 0, 64, 32, 0, 32);
1106 sc = rpclv1prd_shift.
regHist(rpclv1_TriggerLy_vs_SL);
1107 if (
sc.isFailure()) {
1109 "rpclv1_TriggerLy_vs_SL Failed to register histogram ");
1112 rpclv1_TriggerLy_vs_SL->GetXaxis()->SetTitle(
"Sector Logic");
1113 rpclv1_TriggerLy_vs_SL->GetYaxis()->SetTitle(
"");
1114 rpclv1_TriggerLy_vs_SL->SetOption(
"COLZ");
1117 << rpclv1_TriggerLy_vs_SL
1118 << rpclv1_TriggerLy_vs_SL_title.c_str());
1121 ATH_MSG_DEBUG(
"Booked rpclv1_TriggerLy_vs_SL successfully");
1124 for (
int ie = 1;
ie != 16;
ie++) {
1125 std::ostringstream YLabel;
1134 YLabel <<
"," <<
layer;
1137 rpclv1_TriggerLy_vs_SL->GetYaxis()->SetBinLabel(
1138 ie + 1, YLabel.str().c_str());
1139 rpclv1_TriggerLy_vs_SL->GetYaxis()->SetBinLabel(
1140 ie + 1 + 16, YLabel.str().c_str());
1147 int n_bin_trigCm = 8 * 7 * 64;
1148 std::string rpclv1_TriggerCond_vs_CM_title =
1149 "Trigger_Condition_vs_CM";
1150 const char* rpclv1_TriggerCond_vs_CM_title_char =
1151 rpclv1_TriggerCond_vs_CM_title.c_str();
1152 TH2* rpclv1_TriggerCond_vs_CM =
1153 new TH2I(rpclv1_TriggerCond_vs_CM_title_char,
1154 rpclv1_TriggerCond_vs_CM_title_char, n_bin_trigCm, 1,
1155 n_bin_trigCm + 1, 16, 0, 16);
1156 sc = rpclv1prd_shift.
regHist(rpclv1_TriggerCond_vs_CM);
1158 rpclv1_TriggerCond_vs_CM->GetXaxis()->SetTitle(
1159 "CM + Pad*8 + SL*56");
1160 rpclv1_TriggerCond_vs_CM->GetYaxis()->SetTitle(
"");
1161 rpclv1_TriggerCond_vs_CM->SetOption(
"COLZ");
1164 rpclv1_TriggerCond_vs_CM->GetYaxis()->SetBinLabel(1,
"No Hits");
1165 for (
int ie = 1;
ie != 16;
ie++) {
1166 std::ostringstream YLabel;
1175 YLabel <<
"," <<
layer;
1178 rpclv1_TriggerCond_vs_CM->GetYaxis()->SetBinLabel(
1179 ie + 1, YLabel.str().c_str());
1186 std::vector<std::string> LyNameVec;
1187 LyNameVec.push_back(
"LowPt0");
1188 LyNameVec.push_back(
"LowPt1");
1189 LyNameVec.push_back(
"HighPt0");
1190 LyNameVec.push_back(
"HighPt1");
1194 int n_bin_logOR = 64;
1196 for (std::vector<std::string>::const_iterator
it =
1198 it != LyNameVec.end(); ++
it) {
1199 std::string rpclv1_logicalOR_title =
"PhiLogicalOR_" + *
it;
1200 const char* rpclv1_logicalOR_title_char =
1201 rpclv1_logicalOR_title.c_str();
1202 TH2* rpclv1_logicalOR =
new TH2I(
1203 rpclv1_logicalOR_title_char, rpclv1_logicalOR_title_char,
1204 n_bin_logOR, 0, n_bin_logOR, 128, 0, 128);
1205 sc = rpclv1prd_shift.
regHist(rpclv1_logicalOR);
1207 rpclv1_logicalOR->GetXaxis()->SetTitle(
"Sector Logic");
1209 rpclv1_logicalOR->SetOption(
"COLZ");
1210 rpclv1_logicalOR->GetYaxis()->SetLabelSize(0.03);
1211 for (
int ie = 0 + 1;
ie != 128;
ie++) {
1212 std::ostringstream YLabel;
1214 for (
int k = 0;
k != 8;
k++) {
1215 if ((
int(
pow(2,
float(
k))) &
ie) != 0) {
1219 rpclv1_logicalOR->GetYaxis()->SetBinLabel(
1220 ie + 1, YLabel.str().c_str());
1226 std::string rpclv1_TriggerCond_vs_SL_title =
1227 "TriggerCondition_vs_SectorLogic";
1228 const char* rpclv1_TriggerCond_vs_SL_title_char =
1229 rpclv1_TriggerCond_vs_SL_title.c_str();
1231 TH2* rpclv1_TriggerCond_vs_SL =
new TH2I(
1232 rpclv1_TriggerCond_vs_SL_title_char,
1233 rpclv1_TriggerCond_vs_SL_title_char, 64, 0, 64, 7, 1, 8);
1234 sc = rpclv1_shift_dqmf.
regHist(rpclv1_TriggerCond_vs_SL);
1235 if (
sc.isFailure()) {
1237 "rpclv1_TriggerCond_vs_SL Failed to register histogram ");
1240 rpclv1_TriggerCond_vs_SL->GetXaxis()->SetTitle(
"Sector Logic");
1241 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetTitle(
"");
1242 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetTitleSize(0.03);
1243 rpclv1_TriggerCond_vs_SL->SetOption(
"COLZ");
1246 << rpclv1_TriggerCond_vs_SL
1247 << rpclv1_TriggerCond_vs_SL_title.c_str());
1250 ATH_MSG_DEBUG(
"Booked rpclv1_TriggerCond_vs_SL successfully");
1253 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetBinLabel(
1255 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetBinLabel(2,
"2/4 Lpt ");
1256 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetBinLabel(3,
"3/4 Lpt ");
1257 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetBinLabel(4,
"4/4 Lpt ");
1258 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetBinLabel(
1260 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetBinLabel(6,
"Lpt+1/2Hpt");
1261 rpclv1_TriggerCond_vs_SL->GetYaxis()->SetBinLabel(7,
"Lpt+2/2Hpt");
1264 std::string rpclv1_BCid_vs_SL_title =
"rpclv1_BCid_vs_SectorLogic";
1265 const char* rpclv1_BCid_vs_SL_title_char =
1266 rpclv1_BCid_vs_SL_title.c_str();
1268 TH2* rpclv1_BCid_vs_SL =
1269 new TH2I(rpclv1_BCid_vs_SL_title_char,
1270 rpclv1_BCid_vs_SL_title_char, 64, 0, 64, 8 * 2, 0, 16);
1271 sc = rpclv1_shift_dqmf.
regHist(rpclv1_BCid_vs_SL);
1272 if (
sc.isFailure()) {
1274 "rpclv1_BCid_vs_SectorLogic Failed to register histogram ");
1277 rpclv1_BCid_vs_SL->GetXaxis()->SetTitle(
1278 "Triggered RPC Sector Logic");
1279 rpclv1_BCid_vs_SL->GetYaxis()->SetTitle(
1280 "BCId+HPtTrigger*8 for trigger hits");
1281 rpclv1_BCid_vs_SL->SetOption(
"COLZ");
1284 << rpclv1_BCid_vs_SL
1285 << rpclv1_BCid_vs_SL_title.c_str());
1288 ATH_MSG_DEBUG(
"Booked rpclv1_BCid_vs_SectorLogic successfully");
1291 std::string rpclv1_LPt_BCid_vs_SL_title =
1292 "rpclv1_LPt_BCid_vs_SectorLogic";
1293 const char* rpclv1_LPt_BCid_vs_SL_title_char =
1294 rpclv1_LPt_BCid_vs_SL_title.c_str();
1296 TH2* rpclv1_LPt_BCid_vs_SL =
1297 new TH2I(rpclv1_LPt_BCid_vs_SL_title_char,
1298 rpclv1_LPt_BCid_vs_SL_title_char, 64, 0, 64, 8, 0, 8);
1299 sc = rpclv1_shift_dqmf.
regHist(rpclv1_LPt_BCid_vs_SL);
1300 if (
sc.isFailure()) {
1302 "rpclv1_BCid_vs_SectorLogic Failed to register histogram ");
1305 rpclv1_LPt_BCid_vs_SL->GetXaxis()->SetTitle(
1306 "Triggered LPt RPC Sector Logic");
1307 rpclv1_LPt_BCid_vs_SL->GetYaxis()->SetTitle(
"Trigger hits BCid");
1308 rpclv1_LPt_BCid_vs_SL->SetOption(
"COLZ");
1311 << rpclv1_LPt_BCid_vs_SL
1312 << rpclv1_LPt_BCid_vs_SL_title.c_str());
1315 ATH_MSG_DEBUG(
"Booked rpclv1_BCid_vs_SectorLogic successfully");
1318 std::string rpclv1_HPt_BCid_vs_SL_title =
1319 "rpclv1_HPt_BCid_vs_SectorLogic";
1320 const char* rpclv1_HPt_BCid_vs_SL_title_char =
1321 rpclv1_HPt_BCid_vs_SL_title.c_str();
1323 TH2* rpclv1_HPt_BCid_vs_SL =
1324 new TH2I(rpclv1_HPt_BCid_vs_SL_title_char,
1325 rpclv1_HPt_BCid_vs_SL_title_char, 64, 0, 64, 8, 0, 8);
1326 sc = rpclv1_shift_dqmf.
regHist(rpclv1_HPt_BCid_vs_SL);
1327 if (
sc.isFailure()) {
1329 "rpclv1_BCid_vs_SectorLogic Failed to register histogram ");
1332 rpclv1_HPt_BCid_vs_SL->GetXaxis()->SetTitle(
1333 "Triggered HPt RPC Sector Logic");
1334 rpclv1_HPt_BCid_vs_SL->GetYaxis()->SetTitle(
"Trigger hits BCid");
1335 rpclv1_HPt_BCid_vs_SL->SetOption(
"COLZ");
1338 << rpclv1_HPt_BCid_vs_SL
1339 << rpclv1_HPt_BCid_vs_SL_title.c_str());
1342 ATH_MSG_DEBUG(
"Booked rpclv1_BCid_vs_SectorLogic successfully");
1347 std::string rpclv1_hitperEvent_title =
"rpclv1_hitperEvent";
1348 const char* rpclv1_hitperEvent_title_char =
1349 rpclv1_hitperEvent_title.c_str();
1351 TH1* rpclv1_hitperEvent =
1352 new TH1I(rpclv1_hitperEvent_title_char,
1353 rpclv1_hitperEvent_title_char, NMAXHIT, 0., NMAXHIT);
1354 sc = rpclv1prd_shift.
regHist(rpclv1_hitperEvent);
1355 if (
sc.isFailure()) {
1357 "rpclv1_hitperEvent Failed to register histogram ");
1360 rpclv1_hitperEvent->SetFillColor(42);
1361 rpclv1_hitperEvent->GetXaxis()->SetTitle(
"RPC hit / event");
1362 rpclv1_hitperEvent->GetYaxis()->SetTitle(
"Counts");
1364 ATH_MSG_DEBUG(
"INSIDE bookHistograms : " << rpclv1_hitperEvent);
1370 std::string generic_path_rpclv1triggerlowpt_etastat =
1371 generic_path_rpclv1monitoring +
"/Overview";
1372 std::string rpclv1triggerlowpt_etastat_title =
1373 "Trigger_Hits_LowPt_eta_Stat";
1374 const char* rpclv1triggerlowpt_etastat_title_char =
1375 rpclv1triggerlowpt_etastat_title.c_str();
1377 TH1* rpclv1triggerlowpt_etastat =
1378 new TH1I(rpclv1triggerlowpt_etastat_title_char,
1379 rpclv1triggerlowpt_etastat_title_char, 15, 0, 15);
1380 sc = rpclv1prd_shift.
regHist(rpclv1triggerlowpt_etastat);
1381 if (
sc.isFailure()) {
1383 "rpclv1triggerlowpt_etastat Failed to register histogram ");
1386 rpclv1triggerlowpt_etastat->SetFillColor(42);
1387 rpclv1triggerlowpt_etastat->GetXaxis()->SetTitle(
1388 "LowPt eta trigger hits / event");
1389 rpclv1triggerlowpt_etastat->GetYaxis()->SetTitle(
"Counts");
1392 << rpclv1triggerlowpt_etastat
1393 << generic_path_rpclv1triggerlowpt_etastat.c_str());
1396 ATH_MSG_DEBUG(
"Booked rpclv1triggerlowpt_etastat successfully");
1401 std::string generic_path_rpclv1triggerlowpt_phistat =
1402 generic_path_rpclv1monitoring +
"/Overview";
1403 std::string rpclv1triggerlowpt_phistat_title =
1404 "Trigger_Hits_LowPt_phi_Stat";
1405 const char* rpclv1triggerlowpt_phistat_title_char =
1406 rpclv1triggerlowpt_phistat_title.c_str();
1408 TH1* rpclv1triggerlowpt_phistat =
1409 new TH1I(rpclv1triggerlowpt_phistat_title_char,
1410 rpclv1triggerlowpt_phistat_title_char, 15, 0, 15);
1411 sc = rpclv1prd_shift.
regHist(rpclv1triggerlowpt_phistat);
1412 if (
sc.isFailure()) {
1414 "rpclv1triggerlowpt_phistat Failed to register histogram ");
1417 rpclv1triggerlowpt_phistat->SetFillColor(42);
1418 rpclv1triggerlowpt_phistat->GetXaxis()->SetTitle(
1419 "LowPt phi trigger hits / event");
1420 rpclv1triggerlowpt_phistat->GetYaxis()->SetTitle(
"Counts");
1423 << rpclv1triggerlowpt_phistat
1424 << generic_path_rpclv1triggerlowpt_phistat.c_str());
1427 ATH_MSG_DEBUG(
"Booked rpclv1triggerlowpt_phistat successfully");
1432 std::string generic_path_rpclv1triggerlowpt_etaphistat =
1433 generic_path_rpclv1monitoring +
"/Overview";
1434 std::string rpclv1triggerlowpt_etaphistat_title =
1435 "Trigger_Hits_Lowpt_etaphi_Stat";
1436 const char* rpclv1triggerlowpt_etaphistat_title_char =
1437 rpclv1triggerlowpt_etaphistat_title.c_str();
1439 TH2* rpclv1triggerlowpt_etaphistat =
new TH2I(
1440 rpclv1triggerlowpt_etaphistat_title_char,
1441 rpclv1triggerlowpt_etaphistat_title_char, 15, 0, 15, 15, 0, 15);
1442 sc = rpclv1prd_shift.
regHist(rpclv1triggerlowpt_etaphistat);
1443 if (
sc.isFailure()) {
1445 "rpclv1triggerlowpt_etaphistat Failed to register "
1449 rpclv1triggerlowpt_etaphistat->SetOption(
"COLZ");
1450 rpclv1triggerlowpt_etaphistat->GetXaxis()->SetTitle(
1451 "LowPt phi trigger hits / event");
1452 rpclv1triggerlowpt_etaphistat->GetYaxis()->SetTitle(
1453 "LowPt eta trigger hits / event");
1456 "INSIDE bookHistograms : "
1457 << rpclv1triggerlowpt_etaphistat
1458 << generic_path_rpclv1triggerlowpt_etaphistat.c_str());
1461 ATH_MSG_DEBUG(
"Booked rpclv1triggerlowpt_etaphistat successfully");
1466 std::string generic_path_rpclv1triggerhighpt_etastat =
1467 generic_path_rpclv1monitoring +
"/Overview";
1468 std::string rpclv1triggerhighpt_etastat_title =
1469 "Trigger_Hits_HighPt_eta_Stat";
1470 const char* rpclv1triggerhighpt_etastat_title_char =
1471 rpclv1triggerhighpt_etastat_title.c_str();
1472 TH1* rpclv1triggerhighpt_etastat =
1473 new TH1I(rpclv1triggerhighpt_etastat_title_char,
1474 rpclv1triggerhighpt_etastat_title_char, 15, 0, 15);
1475 sc = rpclv1prd_shift.
regHist(rpclv1triggerhighpt_etastat);
1476 if (
sc.isFailure()) {
1478 "rpclv1triggerhighpt_etastat Failed to register "
1482 rpclv1triggerhighpt_etastat->SetFillColor(42);
1483 rpclv1triggerhighpt_etastat->GetXaxis()->SetTitle(
1484 "HighPt eta trigger hits / event");
1485 rpclv1triggerhighpt_etastat->GetYaxis()->SetTitle(
"Counts");
1488 << rpclv1triggerhighpt_etastat
1489 << generic_path_rpclv1triggerhighpt_etastat.c_str());
1493 "Booked rpclv1triggertimehighpt_etastat successfully");
1498 std::string generic_path_rpclv1triggerhighpt_phistat =
1499 generic_path_rpclv1monitoring +
"/Overview";
1500 std::string rpclv1triggerhighpt_phistat_title =
1501 "Trigger_Hits_HighPt_phi_Stat";
1502 const char* rpclv1triggerhighpt_phistat_title_char =
1503 rpclv1triggerhighpt_phistat_title.c_str();
1504 TH1* rpclv1triggerhighpt_phistat =
1505 new TH1I(rpclv1triggerhighpt_phistat_title_char,
1506 rpclv1triggerhighpt_phistat_title_char, 15, 0, 15);
1507 sc = rpclv1prd_shift.
regHist(rpclv1triggerhighpt_phistat);
1508 if (
sc.isFailure()) {
1510 "rpclv1triggerhighpt_phistat Failed to register "
1514 rpclv1triggerhighpt_phistat->SetFillColor(42);
1515 rpclv1triggerhighpt_phistat->GetXaxis()->SetTitle(
1516 "HighPt phi trigger hits / event");
1517 rpclv1triggerhighpt_phistat->GetYaxis()->SetTitle(
"Counts");
1520 << rpclv1triggerhighpt_phistat
1521 << generic_path_rpclv1triggerhighpt_phistat.c_str());
1525 "Booked rpclv1triggertimehighpt_phistat successfully");
1530 std::string generic_path_rpclv1triggerhighpt_etaphistat =
1531 generic_path_rpclv1monitoring +
"/Overview";
1532 std::string rpclv1triggerhighpt_etaphistat_title =
1533 "Trigger_Hits_HighPt_etaphi_Stat";
1534 const char* rpclv1triggerhighpt_etaphistat_title_char =
1535 rpclv1triggerhighpt_etaphistat_title.c_str();
1536 TH2* rpclv1triggerhighpt_etaphistat =
1537 new TH2I(rpclv1triggerhighpt_etaphistat_title_char,
1538 rpclv1triggerhighpt_etaphistat_title_char, 15, 0, 15,
1540 sc = rpclv1prd_shift.
regHist(rpclv1triggerhighpt_etaphistat);
1541 if (
sc.isFailure()) {
1543 "rpclv1triggerhighpt_etaphistat Failed to register "
1547 rpclv1triggerhighpt_etaphistat->SetOption(
"COLZ");
1548 rpclv1triggerhighpt_etaphistat->GetXaxis()->SetTitle(
1549 "HighPt phi trigger hits / event");
1550 rpclv1triggerhighpt_etaphistat->GetYaxis()->SetTitle(
1551 "HighPt eta trigger hits / event");
1554 "INSIDE bookHistograms : "
1555 << rpclv1triggerhighpt_etaphistat
1556 << generic_path_rpclv1triggerhighpt_etaphistat.c_str());
1560 "Booked rpclv1triggertimehighpt_etaphistat successfully");
1565 std::string generic_path_rpclv1sectorlogicstat =
1566 generic_path_rpclv1monitoring +
"/Overview";
1567 std::string rpclv1sectorlogicstat_title =
1568 "SLChannel_per_SectorLogic";
1569 const char* rpclv1sectorlogicstat_title_char =
1570 rpclv1sectorlogicstat_title.c_str();
1571 TH1* rpclv1sectorlogicstat =
1572 new TH1I(rpclv1sectorlogicstat_title_char,
1573 rpclv1sectorlogicstat_title_char, 64, 0, 64);
1574 sc = rpclv1prd_shift.
regHist(rpclv1sectorlogicstat);
1575 if (
sc.isFailure()) {
1577 "rpclv1sectorlogicstat Failed to register histogram ");
1580 rpclv1sectorlogicstat->SetFillColor(42);
1581 rpclv1sectorlogicstat->GetXaxis()->SetTitle(
"SectorLogic");
1582 rpclv1sectorlogicstat->GetYaxis()->SetTitle(
"Counts/Sector Logic ");
1585 << rpclv1sectorlogicstat
1586 << generic_path_rpclv1sectorlogicstat.c_str());
1594 std::string generic_path_rpclv1towervslogicstat =
1595 generic_path_rpclv1monitoring +
"/Overview";
1596 std::string rpclv1towervslogicstat_title =
1597 "PadChannel_per_SectorLogic";
1598 const char* rpclv1towervslogicstat_title_char =
1599 rpclv1towervslogicstat_title.c_str();
1600 TH2* rpclv1towervslogicstat =
1601 new TH2I(rpclv1towervslogicstat_title_char,
1602 rpclv1towervslogicstat_title_char, 64, 0, 64, 8, 0, 8);
1603 sc = rpclv1prd_shift.
regHist(rpclv1towervslogicstat);
1604 if (
sc.isFailure()) {
1606 "rpclv1towervslogicstat Failed to register histogram ");
1609 rpclv1towervslogicstat->SetFillColor(42);
1610 rpclv1towervslogicstat->SetOption(
"COLZ");
1611 rpclv1towervslogicstat->GetXaxis()->SetTitle(
"SectorLogic");
1612 rpclv1towervslogicstat->GetYaxis()->SetTitle(
"Pad");
1615 << rpclv1towervslogicstat
1616 << generic_path_rpclv1towervslogicstat.c_str());
1619 ATH_MSG_DEBUG(
"Booked rpclv1towervslogicstat successfully");
1624 std::string generic_path_rpclv1cmalogicstat =
1625 generic_path_rpclv1monitoring +
"/Overview";
1626 std::string rpclv1cmalogicstat_title =
"CMChannel_per_SectorLogic";
1627 const char* rpclv1cmalogicstat_title_char =
1628 rpclv1cmalogicstat_title.c_str();
1629 TH2* rpclv1cmalogicstat =
new TH2I(rpclv1cmalogicstat_title_char,
1630 rpclv1cmalogicstat_title_char,
1631 64, 0, 64, 8 * 8, 0, 8 * 8);
1632 sc = rpclv1prd_shift.
regHist(rpclv1cmalogicstat);
1633 if (
sc.isFailure()) {
1635 "rpclv1cmalogicstat Failed to register histogram ");
1638 rpclv1cmalogicstat->SetFillColor(42);
1639 rpclv1cmalogicstat->SetOption(
"COLZ");
1640 rpclv1cmalogicstat->GetXaxis()->SetTitle(
"SectorLogic");
1641 rpclv1cmalogicstat->GetYaxis()->SetTitle(
"Pad*8+Cma");
1644 << rpclv1cmalogicstat
1645 << generic_path_rpclv1cmalogicstat.c_str());
1653 std::string generic_path_rpclv1ROI_LowPt =
1654 generic_path_rpclv1monitoring +
"/Overview";
1655 std::string rpclv1ROI_LowPt_title =
"ROI_LowPt_distribution";
1656 const char* rpclv1ROI_LowPt_title_char =
1657 rpclv1ROI_LowPt_title.c_str();
1658 TH2* rpclv1ROI_LowPt =
1659 new TH2I(rpclv1ROI_LowPt_title_char, rpclv1ROI_LowPt_title_char,
1660 64, 0, 64, 28, 0, 28);
1661 sc = rpclv1prd_shift.
regHist(rpclv1ROI_LowPt);
1662 if (
sc.isFailure()) {
1663 ATH_MSG_FATAL(
"rpclv1ROI_LowPt Failed to register histogram ");
1666 rpclv1ROI_LowPt->SetOption(
"COLZ");
1667 rpclv1ROI_LowPt->GetXaxis()->SetTitle(
"SectorLogic");
1668 rpclv1ROI_LowPt->GetYaxis()->SetTitle(
"Region of Interest");
1671 << rpclv1ROI_LowPt << rpclv1ROI_LowPt_title.c_str());
1679 std::string generic_path_rpclv1ROI_HighPt =
1680 generic_path_rpclv1monitoring +
"/Overview";
1681 std::string rpclv1ROI_HighPt_title =
"ROI_HighPt_distribution";
1682 const char* rpclv1ROI_HighPt_title_char =
1683 rpclv1ROI_HighPt_title.c_str();
1684 TH2* rpclv1ROI_HighPt =
1685 new TH2I(rpclv1ROI_HighPt_title_char,
1686 rpclv1ROI_HighPt_title_char, 64, 0, 64, 28, 0, 28);
1687 sc = rpclv1prd_shift.
regHist(rpclv1ROI_HighPt);
1688 if (
sc.isFailure()) {
1689 ATH_MSG_FATAL(
"rpclv1ROI_HighPt Failed to register histogram ");
1692 rpclv1ROI_HighPt->SetOption(
"COLZ");
1693 rpclv1ROI_HighPt->GetXaxis()->SetTitle(
"SectorLogic");
1694 rpclv1ROI_HighPt->GetYaxis()->SetTitle(
"Region of Interest");
1698 << rpclv1ROI_HighPt_title.c_str());
1706 std::string generic_path_rpclv1Trigger_cond_LowPt_phi =
1707 generic_path_rpclv1monitoring +
"/Overview";
1708 std::string rpclv1Trigger_cond_LowPt_phi_title =
1709 "Trigger_Condition_LowPt_Phi";
1710 const char* rpclv1Trigger_cond_LowPt_phi_title_char =
1711 rpclv1Trigger_cond_LowPt_phi_title.c_str();
1712 TH1* rpclv1Trigger_cond_LowPt_phi =
1713 new TH1I(rpclv1Trigger_cond_LowPt_phi_title_char,
1714 rpclv1Trigger_cond_LowPt_phi_title_char, 16, 0, 16);
1715 sc = rpclv1prd_shift.
regHist(rpclv1Trigger_cond_LowPt_phi);
1716 if (
sc.isFailure()) {
1718 "Trigger_Condition_LowPt_Phi Failed to register "
1722 rpclv1Trigger_cond_LowPt_phi->SetFillColor(42);
1723 rpclv1Trigger_cond_LowPt_phi->GetXaxis()->SetTitle(
1724 "Trigger Conditions: 0=Pivot0, 1=Pivot1, 2=LowPt0, 3=LowPt1");
1725 rpclv1Trigger_cond_LowPt_phi->GetYaxis()->SetTitle(
"Counts");
1726 rpclv1Trigger_cond_LowPt_phi->GetXaxis()->SetBinLabel(1,
"None");
1727 rpclv1Trigger_cond_LowPt_phi->GetXaxis()->SetBinLabel(1,
"None");
1730 << rpclv1Trigger_cond_LowPt_phi
1731 << rpclv1Trigger_cond_LowPt_phi_title.c_str());
1734 ATH_MSG_DEBUG(
"Booked Trigger_Condition_LowPt_Phi successfully");
1739 std::string generic_path_rpclv1Trigger_cond_LowPt_eta =
1740 generic_path_rpclv1monitoring +
"/Overview";
1741 std::string rpclv1Trigger_cond_LowPt_eta_title =
1742 "Trigger_Condition_LowPt_Eta";
1743 const char* rpclv1Trigger_cond_LowPt_eta_title_char =
1744 rpclv1Trigger_cond_LowPt_eta_title.c_str();
1745 TH1* rpclv1Trigger_cond_LowPt_eta =
1746 new TH1I(rpclv1Trigger_cond_LowPt_eta_title_char,
1747 rpclv1Trigger_cond_LowPt_eta_title_char, 16, 0, 16);
1748 sc = rpclv1prd_shift.
regHist(rpclv1Trigger_cond_LowPt_eta);
1749 if (
sc.isFailure()) {
1751 "Trigger_Condition_LowPt_eta Failed to register "
1755 rpclv1Trigger_cond_LowPt_eta->SetFillColor(42);
1756 rpclv1Trigger_cond_LowPt_eta->GetXaxis()->SetTitle(
1757 "Trigger Conditions: 0=Pivot0, 1=Pivot1, 2=LowPt0, 3=LowPt1");
1758 rpclv1Trigger_cond_LowPt_eta->GetYaxis()->SetTitle(
"Counts");
1759 rpclv1Trigger_cond_LowPt_eta->GetXaxis()->SetBinLabel(1,
"None");
1760 rpclv1Trigger_cond_LowPt_eta->GetXaxis()->SetBinLabel(1,
"None");
1763 << rpclv1Trigger_cond_LowPt_eta
1764 << rpclv1Trigger_cond_LowPt_eta_title.c_str());
1767 ATH_MSG_DEBUG(
"Booked Trigger_Condition_LowPt_eta successfully");
1772 std::string generic_path_rpclv1Trigger_cond_HighPt_phi =
1773 generic_path_rpclv1monitoring +
"/Overview";
1774 std::string rpclv1Trigger_cond_HighPt_phi_title =
1775 "Trigger_Condition_HighPt_Phi";
1776 const char* rpclv1Trigger_cond_HighPt_phi_title_char =
1777 rpclv1Trigger_cond_HighPt_phi_title.c_str();
1778 TH1* rpclv1Trigger_cond_HighPt_phi =
1779 new TH1I(rpclv1Trigger_cond_HighPt_phi_title_char,
1780 rpclv1Trigger_cond_HighPt_phi_title_char, 16, 0, 16);
1781 sc = rpclv1prd_shift.
regHist(rpclv1Trigger_cond_HighPt_phi);
1782 if (
sc.isFailure()) {
1784 "Trigger_Condition_HighPt_Phi Failed to register "
1788 rpclv1Trigger_cond_HighPt_phi->SetFillColor(42);
1789 rpclv1Trigger_cond_HighPt_phi->GetXaxis()->SetTitle(
1790 "Trigger Conditions: 0=Trigger from LowPt, 2=HighPt0, "
1792 rpclv1Trigger_cond_HighPt_phi->GetYaxis()->SetTitle(
"Counts");
1793 rpclv1Trigger_cond_HighPt_phi->GetXaxis()->SetBinLabel(1,
"None");
1794 rpclv1Trigger_cond_HighPt_phi->GetXaxis()->SetBinLabel(1,
"None");
1797 << rpclv1Trigger_cond_HighPt_phi
1798 << rpclv1Trigger_cond_HighPt_phi_title.c_str());
1801 ATH_MSG_DEBUG(
"Booked Trigger_Condition_HighPt_Phi successfully");
1806 std::string generic_path_rpclv1Trigger_cond_HighPt_eta =
1807 generic_path_rpclv1monitoring +
"/Overview";
1808 std::string rpclv1Trigger_cond_HighPt_eta_title =
1809 "Trigger_Condition_HighPt_Eta";
1810 const char* rpclv1Trigger_cond_HighPt_eta_title_char =
1811 rpclv1Trigger_cond_HighPt_eta_title.c_str();
1812 TH1* rpclv1Trigger_cond_HighPt_eta =
1813 new TH1I(rpclv1Trigger_cond_HighPt_eta_title_char,
1814 rpclv1Trigger_cond_HighPt_eta_title_char, 16, 0, 16);
1815 sc = rpclv1prd_shift.
regHist(rpclv1Trigger_cond_HighPt_eta);
1816 if (
sc.isFailure()) {
1818 "Trigger_Condition_HighPt_eta Failed to register "
1822 rpclv1Trigger_cond_HighPt_eta->SetFillColor(42);
1823 rpclv1Trigger_cond_HighPt_eta->GetXaxis()->SetTitle(
1824 "Trigger Conditions: 0 =Trigger from LowPt, 2=HighPt0, "
1826 rpclv1Trigger_cond_HighPt_eta->GetYaxis()->SetTitle(
"Counts");
1827 rpclv1Trigger_cond_HighPt_eta->GetXaxis()->SetBinLabel(1,
"None");
1828 rpclv1Trigger_cond_HighPt_eta->GetXaxis()->SetBinLabel(1,
"None");
1831 << rpclv1Trigger_cond_HighPt_eta
1832 << rpclv1Trigger_cond_HighPt_eta_title.c_str());
1835 ATH_MSG_DEBUG(
"Booked Trigger_Condition_HighPt_eta successfully");
1840 for (
int ie = 1;
ie != 16;
ie++) {
1841 std::ostringstream
XLabel;
1853 rpclv1Trigger_cond_LowPt_phi->GetXaxis()->SetBinLabel(
1855 rpclv1Trigger_cond_LowPt_phi->GetXaxis()->SetBinLabel(
1858 rpclv1Trigger_cond_LowPt_eta->GetXaxis()->SetBinLabel(
1860 rpclv1Trigger_cond_LowPt_eta->GetXaxis()->SetBinLabel(
1863 rpclv1Trigger_cond_HighPt_phi->GetXaxis()->SetBinLabel(
1865 rpclv1Trigger_cond_HighPt_phi->GetXaxis()->SetBinLabel(
1868 rpclv1Trigger_cond_HighPt_eta->GetXaxis()->SetBinLabel(
1870 rpclv1Trigger_cond_HighPt_eta->GetXaxis()->SetBinLabel(
1931 std::string rpclv1_BCid_per_TriggerType_title =
1932 "rpclv1_BCid_per_TriggerType";
1933 const char* rpclv1_BCid_per_TriggerType_title_char =
1934 rpclv1_BCid_per_TriggerType_title.c_str();
1936 TH2* rpclv1_BCid_per_TriggerType =
new TH2I(
1937 rpclv1_BCid_per_TriggerType_title_char,
1938 rpclv1_BCid_per_TriggerType_title_char, 8, 0, 8, 8 * 2, 0, 16);
1939 sc = rpclv1_shift_dqmf.
regHist(rpclv1_BCid_per_TriggerType);
1940 if (
sc.isFailure()) {
1942 "rpclv1_BCid_per_TriggerType Failed to register "
1946 rpclv1_BCid_per_TriggerType->SetFillColor(42);
1947 rpclv1_BCid_per_TriggerType->GetXaxis()->SetTitle(
"Trigger Type");
1948 rpclv1_BCid_per_TriggerType->GetYaxis()->SetTitle(
1949 "BCId+HPtTrigger*8 for trigger hits");
1950 rpclv1_BCid_per_TriggerType->SetOption(
"COLZ");
1953 "INSIDE bookHistograms : " << rpclv1_BCid_per_TriggerType);
1956 ATH_MSG_DEBUG(
"Booked rpclv1_BCid_per_TriggerType successfully");
1960 std::string rpclv1_BCid_per_TriggerCorr_title =
1961 "rpclv1_BCid_per_TriggerCorrelation";
1962 const char* rpclv1_BCid_per_TriggerCorr_title_char =
1963 rpclv1_BCid_per_TriggerCorr_title.c_str();
1965 TH2* rpclv1_BCid_per_TriggerCorr =
1966 new TH2I(rpclv1_BCid_per_TriggerCorr_title_char,
1967 rpclv1_BCid_per_TriggerCorr_title_char, 256, 0, 256,
1969 sc = rpclv1prd_shift.
regHist(rpclv1_BCid_per_TriggerCorr);
1970 if (
sc.isFailure()) {
1972 "rpclv1_BCid_per_TriggerCorr Failed to register "
1976 rpclv1_BCid_per_TriggerCorr->SetFillColor(42);
1977 rpclv1_BCid_per_TriggerCorr->GetXaxis()->SetTitle(
"Trigger Corr");
1978 rpclv1_BCid_per_TriggerCorr->GetYaxis()->SetTitle(
1979 "BCId+HPtTrigger*8 for trigger hits");
1980 rpclv1_BCid_per_TriggerCorr->SetOption(
"COLZ");
1983 "INSIDE bookHistograms : " << rpclv1_BCid_per_TriggerCorr);
1986 ATH_MSG_DEBUG(
"Booked rpclv1_BCid_per_TriggerCorr successfully");
1992 std::vector<std::string> DB_list;
1994 DB_list.push_back(
"ProfileCabling");
1995 DB_list.push_back(
"ProfileDataCModd");
1996 DB_list.push_back(
"ProfileDataCMeven");
1998 for (std::vector<std::string>::const_iterator iter =
2000 iter != DB_list.end(); ++iter) {
2001 for (
int isec = 0; isec != 16; isec++) {
2002 for (
int idblPhi = 0; idblPhi != 2; idblPhi++) {
2020 for (
uint16_t slogic = 0; slogic != 32; slogic++) {
2021 for (
uint16_t padId = 0; padId != 9; padId++) {
2022 for (
uint16_t cmaId = 0; cmaId != 8; cmaId++) {
2023 for (
uint16_t ijk = 0; ijk != 6; ijk++) {
2024 if (cmaId > 3 && ijk < 2)
2035 std::list<Identifier> idList =
2037 side, slogic, padId, cmaId, ijk,
2040 std::list<Identifier>::const_iterator
2043 for (it_list = idList.begin();
2044 it_list != idList.end();
2049 std::vector<std::string>
2050 rpclayersectorsidename =
RpcGM::
2055 std::string sector_dphi_layer =
2056 rpclayersectorsidename[12];
2073 TH1* rpcCool_PanelIdHist =
2076 rpcCool_PanelIdHist,
2082 << sector_dphi_layer
2083 <<
"_ProfileCabling");
2085 if (rpcCool_PanelIdHist) {
2086 rpcCool_PanelIdHist->
Fill(
2108 const std::string& sectorlogic_name,
const std::string& tower_name,
2109 const std::string& cma_name) {
2115 std::string generic_path_rpclv1monitoring =
2116 "Muon/MuonRawDataMonitoring/RPCLV1";
2119 generic_path_rpclv1monitoring +
"/TriggerRoad/" + sectorlogic_name,
2123 std::string generic_path_RPCLV1cmatimevsch =
2124 generic_path_rpclv1monitoring +
"/" + sectorlogic_name +
"/" +
2125 tower_name +
"/rpclv1cosmic_cmatimevsch" + cma_name;
2126 std::string RPCLV1cmatimevsch_title =
2127 sectorlogic_name +
"_" + tower_name + cma_name +
"_time_vs_channel";
2128 const char* RPCLV1cmatimevsch_title_char =
2129 RPCLV1cmatimevsch_title.c_str();
2130 TH2* RPCLV1cmatimevsch =
2131 new TH2I(RPCLV1cmatimevsch_title_char, RPCLV1cmatimevsch_title_char,
2133 lst.
addHist(RPCLV1cmatimevsch);
2134 RPCLV1cmatimevsch->SetFillColor(42);
2135 RPCLV1cmatimevsch->SetMarkerColor(1);
2136 RPCLV1cmatimevsch->SetMarkerStyle(21);
2137 RPCLV1cmatimevsch->SetMarkerSize(0.2);
2138 RPCLV1cmatimevsch->GetXaxis()->SetTitle(
"Channel + 32 * ijk");
2139 RPCLV1cmatimevsch->GetYaxis()->SetTitle(
"Time=bcId*8+ticks");
2142 << RPCLV1cmatimevsch
2143 << generic_path_RPCLV1cmatimevsch.c_str());
2147 sc = rpclv1prd_expert.
regHist(RPCLV1cmatimevsch);
2150 "couldn't register RPCLV1cmatimevsch hist to MonGroup");
2152 std::string generic_path_RPCLV1cmatimetriggervsch =
2153 generic_path_rpclv1monitoring +
"/" + sectorlogic_name +
"/" +
2154 tower_name +
"/rpclv1cosmic_cmatimetriggervsch" + cma_name;
2155 std::string RPCLV1cmatimetriggervsch_title =
2156 sectorlogic_name +
"_" + tower_name + cma_name +
2157 "_(time-triggertime)_vs_channel";
2158 const char* RPCLV1cmatimetriggervsch_title_char =
2159 RPCLV1cmatimetriggervsch_title.c_str();
2161 TH2* RPCLV1cmatimetriggervsch =
2162 new TH2I(RPCLV1cmatimetriggervsch_title_char,
2163 RPCLV1cmatimetriggervsch_title_char,
2165 lst.
addHist(RPCLV1cmatimetriggervsch);
2166 RPCLV1cmatimetriggervsch->SetFillColor(42);
2167 RPCLV1cmatimetriggervsch->SetMarkerColor(1);
2168 RPCLV1cmatimetriggervsch->SetMarkerStyle(21);
2169 RPCLV1cmatimetriggervsch->SetMarkerSize(0.2);
2170 RPCLV1cmatimetriggervsch->GetXaxis()->SetTitle(
"Channel + 32 * ijk");
2171 RPCLV1cmatimetriggervsch->GetYaxis()->SetTitle(
"Time=bcId*8+ticks");
2174 << RPCLV1cmatimetriggervsch
2175 << generic_path_RPCLV1cmatimetriggervsch.c_str());
2179 sc = rpclv1prd_expert.
regHist(RPCLV1cmatimetriggervsch);
2182 "couldn't register RPCLV1cmatimetriggervsch hist to MonGroup");
2189 const std::string& sectorlogic_name,
const std::string& tower_name,
2190 const std::string& cma_name,
const std::string& thr_name)
2199 std::string generic_path_rpclv1monitoring =
2200 "Muon/MuonRawDataMonitoring/RPCLV1";
2203 generic_path_rpclv1monitoring +
"/TriggerRoad/" + sectorlogic_name,
2207 std::string generic_path_RPCLV1TriggerRoad =
2208 generic_path_rpclv1monitoring +
"/" + sectorlogic_name +
"/" +
2209 tower_name +
"/rpclv1cosmic_TriggerRoad" + cma_name + thr_name;
2210 std::string RPCLV1TriggerRoad_title = sectorlogic_name +
"_" +
2211 tower_name + cma_name + thr_name +
2213 const char* RPCLV1TriggerRoad_title_char =
2214 RPCLV1TriggerRoad_title.c_str();
2215 TH2* RPCLV1TriggerRoad =
new TH2I(
2216 RPCLV1TriggerRoad_title_char, RPCLV1TriggerRoad_title_char,
2218 lst.
addHist(RPCLV1TriggerRoad);
2219 RPCLV1TriggerRoad->SetOption(
"COLZ");
2220 RPCLV1TriggerRoad->GetXaxis()->SetTitle(
"Channel (ijk=6)");
2221 RPCLV1TriggerRoad->GetYaxis()->SetTitle(
"Confirm channel");
2224 << RPCLV1TriggerRoad
2225 << generic_path_RPCLV1TriggerRoad.c_str());
2229 sc = rpclv1prd_expert.
regHist(RPCLV1TriggerRoad);
2232 "couldn't register RPCLV1TriggerRoad hist to MonGroup");
2243 int i_sector,
const std::string& sectorlogic_name,
2244 const std::string& cma_name,
int i_ijk,
const std::string& ijk_name) {
2251 std::string cm_ch_label =
"64";
2252 std::string pad_ch_label =
"128";
2255 std::string generic_path_rpclv1monitoring =
2256 "Muon/MuonRawDataMonitoring/RPCLV1";
2259 generic_path_rpclv1monitoring +
"/Profiles/" + sectorlogic_name,
2263 std::string generic_path_RPCLV1Profiles =
2264 generic_path_rpclv1monitoring +
"/" + sectorlogic_name +
"_" +
2265 cma_name +
"_" + ijk_name +
"_profiles";
2267 if ((i_sector % 4) == 0 || (i_sector % 4) == 3) {
2270 int N_bin_profile = 0;
2271 if (i_ijk < 2 || i_ijk == 6) {
2272 N_bin_profile = 2 * 32 * N_pad;
2274 pad_ch_label =
"64";
2276 N_bin_profile = 2 * 64 * N_pad;
2287 std::string RPCLV1Profiles_title =
2288 sectorlogic_name +
"_" + cma_name +
"_" + ijk_name +
"_Profiles";
2289 const char* RPCLV1Profiles_title_char = RPCLV1Profiles_title.c_str();
2290 TH1* RPCLV1Profiles =
2291 new TH1I(RPCLV1Profiles_title_char, RPCLV1Profiles_title_char,
2295 std::string x_axis_title =
"Channel+ (ijk-ijk_off)*32 +cm*" +
2296 cm_ch_label +
" +pad*" + pad_ch_label;
2297 const char* x_axis_title_char = x_axis_title.c_str();
2298 RPCLV1Profiles->GetXaxis()->SetTitle(x_axis_title_char);
2299 RPCLV1Profiles->GetYaxis()->SetTitle(
"Counts ");
2300 RPCLV1Profiles->SetFillColor(42);
2303 << RPCLV1Profiles << generic_path_RPCLV1Profiles.c_str());
2307 sc = rpclv1prd_expert.
regHist(RPCLV1Profiles);
2310 "couldn't register RPCLV1Profiles hist to MonGroup");
2320 std::vector<std::string>::const_iterator& iter,
int isec,
int idblPhi,
2321 const std::string&
layer) {
2324 std::string generic_path_rpcmonitoring =
2325 "Muon/MuonRawDataMonitoring/RPCLV1";
2326 MonGroup rpcCoolDb(
this, generic_path_rpcmonitoring +
"/CoolDB",
run,
2329 char histName_char[100];
2330 sprintf(histName_char,
"Sector%.2d_%s_dblPhi%d", isec + 1,
layer.c_str(),
2334 std::string
histName = histName_char;
2337 int istatPhi =
int(isec / 2);
2346 if (
layer ==
"Pivot0" ||
layer ==
"Pivot1") {
2350 ig =
atoi((
layer.substr(5, 1)).c_str());
2352 if (
layer ==
"LowPt0" ||
layer ==
"LowPt1") {
2356 ig =
atoi((
layer.substr(5, 1)).c_str());
2358 if (
layer ==
"HighPt0" ||
layer ==
"HighPt1") {
2362 ig =
atoi((
layer.substr(6, 1)).c_str());
2365 else if (isec == 11 || isec == 13) {
2366 if (
layer ==
"Pivot0" ||
layer ==
"Pivot1") {
2370 ig =
atoi((
layer.substr(5, 1)).c_str());
2372 if (
layer ==
"LowPt0" ||
layer ==
"LowPt1") {
2376 ig =
atoi((
layer.substr(5, 1)).c_str());
2378 if (
layer ==
"HighPt0" ||
layer ==
"HighPt1") {
2382 ig =
atoi((
layer.substr(6, 1)).c_str());
2387 if (
layer ==
"Pivot0" ||
layer ==
"Pivot1") {
2388 iName = 2 + (isec % 2);
2390 ig =
atoi((
layer.substr(5, 1)).c_str());
2392 if (
layer ==
"LowPt0" ||
layer ==
"LowPt1") {
2393 iName = 2 + (isec % 2);
2395 ig =
atoi((
layer.substr(5, 1)).c_str());
2397 if (
layer ==
"HighPt0" ||
layer ==
"HighPt1") {
2398 iName = 4 + (isec % 2);
2400 ig =
atoi((
layer.substr(6, 1)).c_str());
2409 int NTotStripsSideA = 1;
2410 int NTotStripsSideC = 1;
2416 DetectorManagerHandle.cptr();
2419 "nullptr to the read MuonDetectorManager conditions object");
2423 kName, 1, istatPhi + 1,
ir, 1, idblPhi + 1, 1, 1,
2428 << kName <<
", eta=1, phi=" << istatPhi + 1
2429 <<
", doubletR=" <<
ir);
2438 NTotStripsSideA = rpcstripshift[6] + rpcstripshift[17];
2441 kName, -1, istatPhi + 1,
ir, 1, idblPhi + 1, 1, 1,
2446 << kName <<
", eta=-1, phi=" << istatPhi + 1
2447 <<
", doubletR=" <<
ir);
2455 NTotStripsSideC = rpcstripshift[7] + rpcstripshift[18];
2459 NTotStripsSideC + NTotStripsSideA,
2460 -NTotStripsSideC, NTotStripsSideA);
2465 rpcCoolHisto->GetXaxis()->SetTitle(
"strip");
2468 if ((
histName.find(
"ProfileCabling", 0)) != std::string::npos) {
2469 TH1* rpcCool_PanelIdHist =
nullptr;
2473 rpcCool_PanelIdHist->GetYaxis()->SetTitle(
"strip Id");
2474 rpcCool_PanelIdHist->SetBit(TH1::kIsAverage);
2475 int rpcElemPhiStrip;
2476 int rpcElemEtaStrip;
2477 int coolStripIndex = 0;
2479 for (
int ieta = 0; ieta != 17; ieta++) {
2480 for (
int iNameF = iName; iNameF != iNameMax + 1; iNameF++) {
2484 if (kName > 10 && kName != 53)
2486 for (
int iz = 0; iz != 3; iz++) {
2488 if (std::abs(ieta - 8) == 7 &&
ir == 1 && kName == 2)
2490 if (isec == 12 && std::abs(ieta - 8) == 6 &&
ir == 1 &&
2493 if (std::abs(ieta - 8) == 7 &&
ir == 2)
2495 if (isec == 12 && std::abs(ieta - 8) == 6 &&
ir == 2)
2499 kName, ieta - 8, istatPhi + 1, irc, iz + 1, idblPhi + 1,
2505 "Could not get valid Identifier for stationName="
2506 << kName <<
", eta=" << ieta - 8
2507 <<
", phi=" << istatPhi + 1 <<
", doubletR=" << irc
2508 <<
", doubletZ=" << iz + 1
2509 <<
", doubletPhi=" << idblPhi + 1);
2525 for (
int istripEta = 0; istripEta != rpcElemEtaStrip;
2529 idr, iz + 1, idblPhi + 1, ig + 1, 0,
2538 rpcCool_PanelIdHist->
Fill(coolStripIndex, -1);
2540 for (
int istripPhi = 0; istripPhi != rpcElemPhiStrip;
2544 idr, iz + 1, idblPhi + 1, ig + 1, 1,
2553 rpcCool_PanelIdHist->
Fill(coolStripIndex, -1);
2565 return StatusCode::SUCCESS;