41 for (
int ieta = LowerEta; ieta != UpperEta + 1; ++ieta) {
42 if (ieta == 0 && ecap ==
'E')
continue;
44 (ieta < 0) ? eta_s +=
"C" : ((ieta > 0) ? eta_s +=
"A" : eta_s +=
"B");
51 for (
int iphi = 1; iphi <= 16; iphi++) {
56 if (ecap ==
'B' && (iphi == 11 || iphi == 15)) {
57 h->Fill(eta_s,
"I," + phi_s +
",R", 0);
58 h->Fill(eta_s,
"I," + phi_s +
",M", 0);
59 h->Fill(eta_s,
"M," + phi_s, 0);
60 h->Fill(eta_s,
"O," + phi_s, 0);
62 h->Fill(eta_s,
"I," + phi_s, 0);
63 h->Fill(eta_s,
"M," + phi_s, 0);
64 h->Fill(eta_s,
"O," + phi_s, 0);
65 if (iphi % 2 == 0 && ecap ==
'B')
66 h->Fill(eta_s,
"E," + phi_s, 0);
68 h->Fill(eta_s,
"E," + phi_s, 0);
72 h->LabelsDeflate(
"X");
73 h->LabelsDeflate(
"Y");
74 h->LabelsOption(
"a",
"Y");
75 h->GetYaxis()->SetLabelSize(0.025);
204 for (
int i = 0;
i < 59;
i += 1) {
205 TLine*
l =
new TLine(0,
i, 0.55,
i);
207 h->GetListOfFunctions()->Add(
l);
209 for (
int i = 0;
i != 18; ++
i) {
210 TLine*
l =
new TLine(
i, 0,
i, 0.55 / 17 * 58);
212 h->GetListOfFunctions()->Add(
l);
214 TLine* lx =
new TLine(0, 0, 0, 58);
215 TLine* ly =
new TLine(0, 0, 17, 0);
216 lx->SetLineColor(kBlack);
217 ly->SetLineColor(kBlack);
218 h->GetListOfFunctions()->Add(lx);
219 h->GetListOfFunctions()->Add(ly);
361 for (
int i = 0;
i < 65;
i++) {
362 TLine*
l =
new TLine(0,
i, 0.55 * 12 / 17,
i);
364 h->GetListOfFunctions()->Add(
l);
366 for (
int i = 0;
i != 13; ++
i) {
367 TLine*
l =
new TLine(
i, 0,
i, 0.55 / 17 * 64);
369 h->GetListOfFunctions()->Add(
l);
376 return StatusCode::SUCCESS;
383 if (xAxis.substr(0, 2) ==
"BO" || xAxis.substr(0, 2) ==
"BI") {
386 }
else if (xAxis.substr(0, 2) ==
"BM" || xAxis.substr(0, 2) ==
"EO") {
389 }
else if (xAxis.substr(0, 2) ==
"EM" || xAxis.substr(0, 2) ==
"EI") {
399 for (
int ieta = LowerEta; ieta != UpperEta + 1; ++ieta) {
400 if (xAxis.substr(2, 1) ==
"A" && ieta < 0)
continue;
401 if (xAxis.substr(2, 1) ==
"C" && ieta == 0)
break;
402 if (ieta == 0 && xAxis.substr(0, 2) ==
"BO")
407 eta_s = xAxis.substr(0, 3);
409 h->Fill(eta_s, 1, 0);
412 bool barrelExtra = (xAxis ==
"BEA" || xAxis ==
"BEC");
415 for (
int iphi = 1; iphi <= 16; iphi++) {
422 if (xAxis.substr(0, 2) ==
"BI" && (iphi == 11 || iphi == 15)) {
423 h->Fill(eta_s, phi_s +
",1,R", 0);
424 h->Fill(eta_s, phi_s +
",2,R", 0);
425 h->Fill(eta_s, phi_s +
",1,M", 0);
426 h->Fill(eta_s, phi_s +
",2,M", 0);
428 h->Fill(eta_s, phi_s +
",1", 0);
429 h->Fill(eta_s, phi_s +
",2", 0);
431 }
else if (iphi % 2 == 0)
432 h->Fill(eta_s, phi_s +
",1", 0);
435 if (xAxis ==
"BEA" || xAxis ==
"BEC" || xAxis ==
"EMA" || xAxis ==
"EMC" || xAxis ==
"EOA" || xAxis ==
"EOC") {
436 h->GetXaxis()->FindBin(
".");
439 h->LabelsDeflate(
"X");
440 h->LabelsDeflate(
"Y");
444 if (xAxis ==
"BOA") {
467 if (xAxis ==
"BOC") {
480 if (xAxis ==
"BIA") {
545 if (xAxis ==
"BIC") {
611 if (xAxis ==
"EIA") {
657 if (xAxis ==
"EIC") {
704 if (xAxis ==
"EEA") {
711 if (xAxis ==
"EEC") {
718 if (xAxis ==
"BEA" || xAxis ==
"BEC") {
723 if (xAxis ==
"EMA" || xAxis ==
"EMC") {
728 if (xAxis ==
"EOA" || xAxis ==
"EOC") {
733 if (xAxis.substr(0, 2) ==
"EE" || xAxis.substr(0, 2) ==
"BI" || xAxis.substr(0, 2) ==
"EI" || xAxis.substr(0, 2) ==
"BM" ||
734 xAxis.substr(0, 2) ==
"BO") {
736 for (
int i = 0;
i !=
h->GetNbinsY() + 1;
i++) {
737 TLine*
l =
new TLine(0,
i, 0.55 *
h->GetNbinsX() / 17,
i);
738 h->GetListOfFunctions()->Add(
l);
740 for (
int i = 0;
i !=
h->GetNbinsX() + 1; ++
i) {
741 TLine*
l =
new TLine(
i, 0,
i, 0.55 / 17 *
h->GetNbinsY());
742 h->GetListOfFunctions()->Add(
l);
745 TLine* lx =
new TLine(0, 0,
h->GetNbinsX(), 0);
746 TLine* ly =
new TLine(0, 0, 0,
h->GetNbinsY());
747 lx->SetLineColor(kBlack);
748 ly->SetLineColor(kBlack);
749 h->GetListOfFunctions()->Add(lx);
750 h->GetListOfFunctions()->Add(ly);
753 return StatusCode::SUCCESS;
758 TString phiString =
"";
763 TString phiString_ml1 = phiString +
",1";
764 TString phiString_ml2 = phiString +
",2";
766 TString phiString_ml1_BIR = phiString +
",1,R";
767 TString phiString_ml2_BIR = phiString +
",2,R";
768 nHits_In->
Fill(
"EIC5", phiString_ml1_BIR, 0.);
769 nHits_In->
Fill(
"EIC5", phiString_ml2_BIR, 0.);
770 TString phiString_ml1_BIM = phiString +
",1,M";
771 TString phiString_ml2_BIM = phiString +
",2,M";
772 nHits_In->
Fill(
"EIC5", phiString_ml1_BIM, 0.);
773 nHits_In->
Fill(
"EIC5", phiString_ml2_BIM, 0.);
775 nHits_In->
Fill(
"EIC5", phiString_ml1, 0.);
776 nHits_In->
Fill(
"EIC5", phiString_ml2, 0.);
778 nHits_Mid->
Fill(
"EMC5", phiString_ml1, 0.);
779 nHits_Mid->
Fill(
"EMC5", phiString_ml2, 0.);
780 nHits_Out->
Fill(
"EOC6", phiString_ml1, 0.);
781 nHits_Out->
Fill(
"EOC6", phiString_ml2, 0.);
789 nHits_In->
Fill(etaIn,
"01,1", 0);
790 nHits_Mid->
Fill(etaMid,
"01,1", 0);
792 nHits_Out->
Fill(etaOut,
"01,1", 0);
794 nHits_In->
Fill(
"",
"01,1", 0);
795 nHits_Mid->
Fill(
"",
"01,1", 0);
796 nHits_Out->
Fill(
"",
"01,1", 0);
806 nHits_In->
Fill(etaIn,
"01,1", 0);
807 }
else if (
iEta < 0) {
809 nHits_In->
Fill(etaIn,
"01,1", 0);
811 nHits_In->
Fill(
" ",
"01,1", 0);
822 }
else if (
iEta == 0) {
824 }
else if (
iEta < 9) {
830 nHits_In->
Fill(etaIn,
"01,1", 0);
831 nHits_Mid->
Fill(etaMid,
"01,1", 0);
832 nHits_Out->
Fill(etaOut,
"01,1", 0);
834 nHits_In->
Fill(
" ",
"01,1", 0);
835 nHits_Mid->
Fill(
" ",
"01,1", 0);
836 nHits_Out->
Fill(
" ",
"01,1", 0);
845 nHits_In->
Fill(etaIn,
"01,1", 0);
846 }
else if (
iEta < 5) {
848 nHits_In->
Fill(etaIn,
"01,1", 0);
850 nHits_In->
Fill(
" ",
"01,1", 0);
858 nHits_In->
Fill(etaIn,
"01,1", 0);
859 nHits_Mid->
Fill(etaMid,
"01,1", 0);
861 nHits_Out->
Fill(etaOut,
"01,1", 0);
864 nHits_In->LabelsDeflate(
"X");
865 nHits_In->LabelsDeflate(
"Y");
866 nHits_In->LabelsOption(
"v",
"x");
868 nHits_Mid->LabelsDeflate(
"X");
869 nHits_Mid->LabelsDeflate(
"Y");
870 nHits_Mid->LabelsOption(
"v",
"x");
872 nHits_Out->LabelsDeflate(
"X");
873 nHits_Out->LabelsDeflate(
"Y");
874 nHits_Out->LabelsOption(
"v",
"x");
877 return StatusCode::SUCCESS;
881 int& derived_ML,
int totalTubes) {
887 int derived_NumTubePerLayer = 1;
888 int derived_NumTubePerML = 1;
889 int derived_NumLayer = 1;
890 int derived_NumLayerPerML = 1;
891 int derived_NumML = 1;
892 if (hardware_name.substr(0, 4) ==
"BIS8" ) {
893 derived_NumLayerPerML = 3;
895 }
else if ( hardware_name.substr(0, 3) ==
"BEE") {
896 derived_NumLayerPerML = 4;
898 }
else if (hardware_name.substr(0, 2) ==
"BI" ||
899 hardware_name.substr(0, 2) ==
"EI" ) {
900 derived_NumLayerPerML = 4;
903 derived_NumLayerPerML = 3;
907 derived_NumLayer = derived_NumLayerPerML * derived_NumML;
908 derived_NumTubePerML = totalTubes / derived_NumML;
909 derived_NumTubePerLayer = totalTubes / derived_NumLayer;
912 if (hardware_name.substr(0, 4) ==
"BMS4" || hardware_name.substr(0, 4) ==
"BMS6") derived_NumTubePerLayer = 48;
913 if ((hardware_name.substr(5, 2) ==
"11" || hardware_name.substr(5, 2) ==
"15")) {
914 if (hardware_name.substr(0, 4) ==
"BIR1") derived_NumTubePerLayer = 30;
915 if (hardware_name.substr(0, 4) ==
"BIR2") derived_NumTubePerLayer = 30;
916 if (hardware_name.substr(0, 4) ==
"BIR3") derived_NumTubePerLayer = 36;
917 if (hardware_name.substr(0, 4) ==
"BIR4") derived_NumTubePerLayer = 30;
918 if (hardware_name.substr(0, 4) ==
"BIR5") derived_NumTubePerLayer = 24;
922 derived_ML = (tubeID - 1) / derived_NumTubePerML + 1;
923 derived_layer = (tubeID - 1) / derived_NumTubePerLayer + 1;
924 derived_tube = tubeID - (derived_layer - 1) * derived_NumTubePerLayer;
925 if (derived_ML == 2) derived_layer -= derived_NumLayerPerML;
931 if (hardware_name.substr(0, 4) ==
"BMS4" || hardware_name.substr(0, 4) ==
"BMS6") {
934 if (hardware_name.substr(0, 3) ==
"BIR" &&
numLayers <= 3) {
935 if (hardware_name.substr(5, 2) ==
"11" || hardware_name.substr(5, 2) ==
"15") {
936 if (hardware_name.substr(3, 1) ==
"1") tubeNum = tubePos + 6 +
numLayers * 30;
937 if (hardware_name.substr(3, 1) ==
"2") tubeNum = tubePos +
numLayers * 30;
938 if (hardware_name.substr(3, 1) ==
"4") tubeNum = tubePos + 3 +
numLayers * 30;
939 if (hardware_name.substr(3, 1) ==
"5") tubeNum = tubePos +
numLayers * 24;
942 if (hardware_name.substr(0, 3) ==
"BIR" && hardware_name.substr(3, 1) ==
"3") tubeNum = tubePos +
numLayers * 36;
943 if (hardware_name ==
"EEL1A05" || hardware_name ==
"EEL1C05")
949 if (hardware_name ==
"EEL1A05" || hardware_name ==
"EEL1C05") numTubes = 48;
954 if (hardware_name ==
"EEL1A05" || hardware_name ==
"EEL1C05")
numLayers = 3;
959 h =
new TH1F(h_title, h_title, nbin, xi, xf);
961 h->SetTitleSize(0.3,
"y");
962 h->GetXaxis()->SetTitle(xtit);
963 h->GetYaxis()->SetTitle(ytit);
966 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
973 h->GetXaxis()->SetTitle(xtit);
974 h->GetYaxis()->SetTitle(ytit);
977 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
982 int nbin2,
float xi2,
float xf2,
MonGroup& mgrp) {
983 h =
new TH2F(h_title, h_title, nbin1, xi1, xf1, nbin2, xi2, xf2);
984 h->SetOption(
"COLZ");
985 h->SetMarkerColor(1);
986 h->SetMarkerStyle(21);
987 h->SetMarkerSize(0.2);
988 h->GetXaxis()->SetTitle(xtit);
989 h->GetYaxis()->SetTitle(ytit);
992 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
997 float xf1,
int nbin2,
float xi2,
float xf2,
MonGroup& mgrp) {
999 h->SetOption(
"COLZ");
1001 h->SetMarkerColor(1);
1002 h->SetMarkerStyle(21);
1003 h->SetMarkerSize(0.2);
1004 h->GetXaxis()->SetTitle(xtit);
1005 h->GetYaxis()->SetTitle(ytit);
1008 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
1013 int nbin2,
float xi2,
float xf2,
MonGroup& mgrp) {
1014 h =
new TH2F(h_title, h_title, nbin1, xi1, xf1, nbin2, xi2, xf2);
1015 h->SetOption(
"COLZ");
1016 h->SetMarkerColor(1);
1017 h->SetMarkerStyle(21);
1018 h->SetMarkerSize(0.2);
1019 h->GetXaxis()->SetTitle(xtit);
1020 h->GetYaxis()->SetTitle(ytit);
1021 ATH_MSG_DEBUG(
"INSIDE bookMDTHisto_OccVsLB: " <<
h <<
" " << h_title);
1023 if (
sc.isFailure())
ATH_MSG_WARNING(
"couldn't register " << h_title <<
" hist to MonGroup");
1031 return StatusCode::SUCCESS;
1034 std::set<Identifier> noisyTubes =
m_masked_tubes->getNoiseList(idHash);
1035 for (
auto digcoll_id : noisyTubes) {
1036 int mdtlayer =
m_idHelperSvc->mdtIdHelper().tubeLayer(digcoll_id);
1037 if (
m_idHelperSvc->mdtIdHelper().multilayer(digcoll_id) == 2) {
1038 if (hardware_name.at(1) ==
'I' && hardware_name.at(3) !=
'8')
1046 h->Fill(mdttube, 1);
1048 return StatusCode::SUCCESS;
1057 std::vector<Identifier>::const_iterator idfirst =
m_idHelperSvc->mdtIdHelper().module_begin();
1058 std::vector<Identifier>::const_iterator idlast =
m_idHelperSvc->mdtIdHelper().module_end();
1063 for (std::vector<Identifier>::const_iterator
i = idfirst;
i != idlast; ++
i) {
1065 int gethash_code =
m_idHelperSvc->mdtIdHelper().get_hash(Id, Idhash, &mdtModuleContext);
1069 std::string extid =
m_idHelperSvc->mdtIdHelper().show_to_string(Id);
1071 if (gethash_code == 0) {
1082 int TotmezzTubes = 8;
1083 int tubeLayerMax =
m_idHelperSvc->mdtIdHelper().tubeLayerMax(digcoll_id);
1085 if (tubeLayerMax == 4) TotmezzTubes = 6;
1086 int Imezz = (
int)((
m_idHelperSvc->mdtIdHelper().tube(digcoll_id) - 1) / TotmezzTubes) +
1087 (
int)((
m_idHelperSvc->mdtIdHelper().multilayer(digcoll_id) - 1) *
1097 int numtubes =
m_idHelperSvc->mdtIdHelper().tubeMax(digcoll_id);
1098 int numlayers =
m_idHelperSvc->mdtIdHelper().tubeLayerMax(digcoll_id);
1099 int numML =
m_idHelperSvc->mdtIdHelper().numberOfMultilayers(digcoll_id);
1100 int tubeMax = numtubes * numlayers * numML;
1102 if (hardware_name.substr(0, 4) ==
"BIS8")
1104 if (hardware_name.substr(0, 4) ==
"BIR5")
1107 if (hardware_name.substr(0, 4) ==
"BIR2" || hardware_name.substr(0, 4) ==
"BIR4")
1110 if (hardware_name.substr(0, 4) ==
"BIR3")
tubeMax = 36 * 4 + 36 * 4;
1111 if (hardware_name.substr(0, 4) ==
"BIR1")
1114 if (hardware_name.substr(0, 4) ==
"BMS4" || hardware_name.substr(0, 4) ==
"BMS6")
1117 if (hardware_name ==
"EEL1A05" || hardware_name ==
"EEL1C05")
tubeMax = 48 * 3 + 48 * 3;
1118 if (hardware_name.substr(0, 3) ==
"BME")
tubeMax = 546;
1120 std::string hardware_namestr(hardware_name);
1126 ATH_MSG_WARNING(
"GetTubeMax: computing tubes per chamber twice for this chamber!");
1134 if (
i ==
A)
return true;
1148 return StatusCode::SUCCESS;
1158 bool filterresult(
true);
1161 for (; filterresult && (ifilter != filterend); ++ifilter) { filterresult = (filterresult && (*ifilter)->accept()); }
1173 return StatusCode::SUCCESS;
1182 return StatusCode::SUCCESS;
1186 TBox* box =
new TBox(
x1,
y1 * 0.5,
x2,
y2 * 0.5);
1192 box->SetFillColor(kGray);
1193 box->SetLineColor(kGray);
1197 (
h->GetListOfFunctions())->
Add(box);
1203 line->SetLineColor(
c);
1205 (
h->GetListOfFunctions())->
Add(
line);
1224 if (!
chamber)
return StatusCode::FAILURE;
1226 return StatusCode::SUCCESS;
1230 if (region == 0 || region == 1) {
1234 if (
phi < 11 && !isBIM)
1235 return 18 * (
eta - 1) +
phi;
1236 else if ((
phi == 10 && isBIM) || (
phi < 15 && !isBIM))
1237 return 18 * (
eta - 1) +
phi + 1;
1239 return 18 * (
eta - 1) +
phi + 2;
1240 }
else if (
eta == 6)
1243 return 106 + (
phi / 2);
1245 return 114 + (
phi / 2);
1248 else if (
layer == 1) {
1252 if (
eta == 6 &&
phi > 11)
1253 return 16 * (
eta - 1) +
phi - 1;
1255 return 16 * (
eta - 1) +
phi;
1257 }
else if (
layer == 2 && region == 0) {
1258 if (
eta == 0 &&
phi == 11)
1260 else if (
eta == 0 &&
phi == 13)
1263 return 16 * (
eta - 1) +
phi + 2;
1264 else if (
eta == 7 &&
phi == 11)
1266 else if (
eta == 7 &&
phi == 13)
1268 else if (
eta == 8 &&
phi == 11)
1270 else if (
eta == 8 &&
phi == 13)
1272 }
else if (
layer == 3 && region == 0) {
1273 return 102 + 8 * (
eta - 1) + (
phi - 1) / 2;
1274 }
else if (
layer == 2 && region == 1) {
1276 return 16 * (
eta - 1) +
phi;
1277 else if (
eta == 7 &&
phi == 11)
1279 else if (
eta == 7 &&
phi == 13)
1281 else if (
eta == 8 &&
phi == 11)
1283 else if (
eta == 8 &&
phi == 13)
1285 }
else if (
layer == 3 && region == 1) {
1286 return 100 + 8 * (
eta - 1) + (
phi - 1) / 2;
1294 return 16 * (
eta - 1) +
phi;
1296 return 32 +
phi / 2;
1298 return 40 +
phi / 2;
1300 return 48 +
phi / 8;
1301 }
else if (
layer == 1) {
1302 return 16 * (
eta - 1) +
phi;
1303 }
else if (
layer == 2) {
1304 return 16 * (
eta - 1) +
phi;
1305 }
else if (
layer == 3 && region == 2) {
1306 if (
eta == 1 &&
phi == 2)
return 96;
1307 if (
eta == 1 &&
phi == 4)
return 97;
1308 if (
eta == 1 &&
phi == 10)
return 98;
1309 if (
eta == 1 &&
phi == 12)
return 99;
1310 if (
eta == 2 &&
phi == 2)
return 100;
1311 if (
eta == 2 &&
phi == 10)
return 101;
1312 if (
eta == 2 &&
phi == 12)
return 102;
1313 }
else if (
layer == 3 && region == 3) {
1315 return 80 + 16 *
eta +
phi;
1317 return 79 + 16 *
eta +
phi;
1325 if (region == 0 || region == 1) {
1328 h->SetBins(834, 1, 2502, 122, 0, 122);
1329 h->GetYaxis()->SetBinLabel(1,
"BI1");
1330 h->GetYaxis()->SetBinLabel(19,
"BI2");
1331 h->GetYaxis()->SetBinLabel(37,
"BI3");
1332 h->GetYaxis()->SetBinLabel(55,
"BI4");
1333 h->GetYaxis()->SetBinLabel(73,
"BI5");
1334 h->GetYaxis()->SetBinLabel(91,
"BI6");
1335 h->GetYaxis()->SetBinLabel(107,
"BI7");
1336 h->GetYaxis()->SetBinLabel(115,
"BI8");
1338 h->GetYaxis()->SetTickLength(0);
1339 for (
int i = 0;
i < 6;
i++) {
1340 TLine*
l =
new TLine(1, 18 *
i, 50, 18 *
i);
1341 h->GetListOfFunctions()->Add(
l);
1343 TLine*
l2 =
new TLine(1, 106, 50, 106);
1344 h->GetListOfFunctions()->Add(
l2);
1345 TLine* l3 =
new TLine(1, 114, 50, 114);
1346 h->GetListOfFunctions()->Add(l3);
1347 for (
int i = 1;
i < 122;
i++) {
1348 if (
i < 90 && (
i % 18 == 11 ||
i % 18 == 16)) {
1349 TLine*
l =
new TLine(1,
i, 10,
i);
1350 h->GetListOfFunctions()->Add(
l);
1352 TLine*
l =
new TLine(1,
i, 20,
i);
1353 h->GetListOfFunctions()->Add(
l);
1358 else if (
layer == 1) {
1359 h->SetBins(834, 1, 2502, 95, 0, 95);
1363 h->GetYaxis()->SetBinLabel(1,
"BM1");
1364 h->GetYaxis()->SetBinLabel(17,
"BM2");
1365 h->GetYaxis()->SetBinLabel(33,
"BM3");
1366 h->GetYaxis()->SetBinLabel(49,
"BM4");
1367 h->GetYaxis()->SetBinLabel(65,
"BM5");
1368 h->GetYaxis()->SetBinLabel(81,
"BM6");
1370 h->GetYaxis()->SetTickLength(0);
1371 for (
int i = 1;
i < 95;
i++) {
1372 TLine*
l =
new TLine(1,
i, 20,
i);
1373 h->GetListOfFunctions()->Add(
l);
1375 TLine*
l1 =
new TLine(1, 16, 50, 16);
1376 h->GetListOfFunctions()->Add(
l1);
1377 TLine*
l2 =
new TLine(1, 32, 50, 32);
1378 h->GetListOfFunctions()->Add(
l2);
1379 TLine* l3 =
new TLine(1, 48, 50, 48);
1380 h->GetListOfFunctions()->Add(l3);
1381 TLine* l4 =
new TLine(1, 64, 50, 64);
1382 h->GetListOfFunctions()->Add(l4);
1383 TLine* l5 =
new TLine(1, 80, 50, 80);
1384 h->GetListOfFunctions()->Add(l5);
1387 else if (
layer == 2 && region == 0) {
1388 h->SetBins(834, 1, 2502, 118, 0, 118);
1390 h->GetYaxis()->SetBinLabel(1,
"BO0");
1391 h->GetYaxis()->SetBinLabel(4,
"BO1");
1392 h->GetYaxis()->SetBinLabel(19,
"BO2");
1393 h->GetYaxis()->SetBinLabel(35,
"BO3");
1394 h->GetYaxis()->SetBinLabel(51,
"BO4");
1395 h->GetYaxis()->SetBinLabel(67,
"BO5");
1396 h->GetYaxis()->SetBinLabel(83,
"BO6");
1397 h->GetYaxis()->SetBinLabel(99,
"BO7,8");
1399 h->GetYaxis()->SetBinLabel(103,
"BE1");
1400 h->GetYaxis()->SetBinLabel(111,
"BE2");
1402 h->GetYaxis()->SetTickLength(0);
1403 for (
int i = 1;
i < 118;
i++) {
1404 TLine*
l =
new TLine(1,
i, 20,
i);
1405 h->GetListOfFunctions()->Add(
l);
1407 TLine*
l1 =
new TLine(1, 2, 50, 2);
1408 h->GetListOfFunctions()->Add(
l1);
1409 TLine*
l2 =
new TLine(1, 18, 50, 18);
1410 h->GetListOfFunctions()->Add(
l2);
1411 TLine* l3 =
new TLine(1, 34, 50, 34);
1412 h->GetListOfFunctions()->Add(l3);
1413 TLine* l4 =
new TLine(1, 50, 50, 50);
1414 h->GetListOfFunctions()->Add(l4);
1415 TLine* l5 =
new TLine(1, 66, 50, 66);
1416 h->GetListOfFunctions()->Add(l5);
1417 TLine* l6 =
new TLine(1, 82, 50, 82);
1418 h->GetListOfFunctions()->Add(l6);
1419 TLine* l7 =
new TLine(1, 98, 50, 98);
1420 h->GetListOfFunctions()->Add(l7);
1421 TLine* l8 =
new TLine(1, 100, 50, 100);
1422 h->GetListOfFunctions()->Add(l8);
1423 TLine* l9 =
new TLine(1, 102, 50, 102);
1424 h->GetListOfFunctions()->Add(l9);
1425 TLine* l10 =
new TLine(1, 110, 50, 110);
1426 h->GetListOfFunctions()->Add(l10);
1429 else if (
layer == 2 && region == 1) {
1430 h->SetBins(834, 1, 2502, 116, 0, 116);
1432 h->GetYaxis()->SetBinLabel(1,
"BO1");
1433 h->GetYaxis()->SetBinLabel(17,
"BO2");
1434 h->GetYaxis()->SetBinLabel(33,
"BO3");
1435 h->GetYaxis()->SetBinLabel(49,
"BO4");
1436 h->GetYaxis()->SetBinLabel(65,
"BO5");
1437 h->GetYaxis()->SetBinLabel(81,
"BO6");
1438 h->GetYaxis()->SetBinLabel(97,
"BO7,8");
1440 h->GetYaxis()->SetBinLabel(101,
"BE1");
1441 h->GetYaxis()->SetBinLabel(109,
"BE2");
1443 h->GetYaxis()->SetTickLength(0);
1444 for (
int i = 1;
i < 116;
i++) {
1445 TLine*
l =
new TLine(1,
i, 20,
i);
1446 h->GetListOfFunctions()->Add(
l);
1448 TLine*
l1 =
new TLine(1, 16, 50, 16);
1449 h->GetListOfFunctions()->Add(
l1);
1450 TLine*
l2 =
new TLine(1, 32, 50, 32);
1451 h->GetListOfFunctions()->Add(
l2);
1452 TLine* l3 =
new TLine(1, 48, 50, 48);
1453 h->GetListOfFunctions()->Add(l3);
1454 TLine* l4 =
new TLine(1, 64, 50, 64);
1455 h->GetListOfFunctions()->Add(l4);
1456 TLine* l5 =
new TLine(1, 80, 50, 80);
1457 h->GetListOfFunctions()->Add(l5);
1458 TLine* l6 =
new TLine(1, 96, 50, 96);
1459 h->GetListOfFunctions()->Add(l6);
1460 TLine* l7 =
new TLine(1, 98, 50, 98);
1461 h->GetListOfFunctions()->Add(l7);
1462 TLine* l8 =
new TLine(1, 100, 50, 100);
1463 h->GetListOfFunctions()->Add(l8);
1464 TLine* l9 =
new TLine(1, 108, 50, 108);
1465 h->GetListOfFunctions()->Add(l9);
1471 h->SetBins(834, 1, 2502, 50, 0, 50);
1473 h->GetYaxis()->SetBinLabel(1,
"EI1");
1474 h->GetYaxis()->SetBinLabel(17,
"EI2");
1475 h->GetYaxis()->SetBinLabel(33,
"EI3");
1476 h->GetYaxis()->SetBinLabel(41,
"EI4");
1477 h->GetYaxis()->SetBinLabel(49,
"EI5");
1479 h->GetYaxis()->SetTickLength(0);
1480 for (
int i = 1;
i < 50;
i++) {
1481 TLine*
l =
new TLine(1,
i, 20,
i);
1482 h->GetListOfFunctions()->Add(
l);
1484 TLine*
l1 =
new TLine(1, 16, 50, 16);
1485 h->GetListOfFunctions()->Add(
l1);
1486 TLine*
l2 =
new TLine(1, 32, 50, 32);
1487 h->GetListOfFunctions()->Add(
l2);
1488 TLine* l3 =
new TLine(1, 40, 50, 40);
1489 h->GetListOfFunctions()->Add(l3);
1490 TLine* l4 =
new TLine(1, 48, 50, 48);
1491 h->GetListOfFunctions()->Add(l4);
1494 else if (
layer == 1) {
1495 h->SetBins(834, 1, 2502, 80, 0, 80);
1497 h->GetYaxis()->SetBinLabel(1,
"EM1");
1498 h->GetYaxis()->SetBinLabel(17,
"EM2");
1499 h->GetYaxis()->SetBinLabel(33,
"EM3");
1500 h->GetYaxis()->SetBinLabel(49,
"EM4");
1501 h->GetYaxis()->SetBinLabel(65,
"EM5");
1503 h->GetYaxis()->SetTickLength(0);
1504 for (
int i = 1;
i < 80;
i++) {
1505 TLine*
l =
new TLine(1,
i, 20,
i);
1506 h->GetListOfFunctions()->Add(
l);
1508 TLine*
l1 =
new TLine(1, 16, 50, 16);
1509 h->GetListOfFunctions()->Add(
l1);
1510 TLine*
l2 =
new TLine(1, 32, 50, 32);
1511 h->GetListOfFunctions()->Add(
l2);
1512 TLine* l3 =
new TLine(1, 48, 50, 48);
1513 h->GetListOfFunctions()->Add(l3);
1514 TLine* l4 =
new TLine(1, 64, 50, 64);
1515 h->GetListOfFunctions()->Add(l4);
1518 else if (
layer == 2) {
1521 h->SetBins(834, 1, 2502, 103, 0, 103);
1523 h->GetYaxis()->SetBinLabel(1,
"EO1");
1524 h->GetYaxis()->SetBinLabel(17,
"EO2");
1525 h->GetYaxis()->SetBinLabel(33,
"EO3");
1526 h->GetYaxis()->SetBinLabel(49,
"EO4");
1527 h->GetYaxis()->SetBinLabel(65,
"EO5");
1528 h->GetYaxis()->SetBinLabel(81,
"EO6");
1529 h->GetYaxis()->SetBinLabel(97,
"EE1,2");
1531 h->GetYaxis()->SetTickLength(0);
1532 for (
int i = 1;
i < 103;
i++) {
1533 TLine*
l =
new TLine(1,
i, 20,
i);
1534 h->GetListOfFunctions()->Add(
l);
1536 TLine*
l1 =
new TLine(1, 16, 50, 16);
1537 h->GetListOfFunctions()->Add(
l1);
1538 TLine*
l2 =
new TLine(1, 32, 50, 32);
1539 h->GetListOfFunctions()->Add(
l2);
1540 TLine* l3 =
new TLine(1, 48, 50, 48);
1541 h->GetListOfFunctions()->Add(l3);
1542 TLine* l4 =
new TLine(1, 64, 50, 64);
1543 h->GetListOfFunctions()->Add(l4);
1544 TLine* l5 =
new TLine(1, 80, 50, 80);
1545 h->GetListOfFunctions()->Add(l5);
1546 TLine* l6 =
new TLine(1, 96, 50, 96);
1547 h->GetListOfFunctions()->Add(l6);
1548 TLine* l7 =
new TLine(1, 100, 50, 100);
1549 h->GetListOfFunctions()->Add(l7);
1550 }
else if (region == 3) {
1551 h->SetBins(834, 1, 2502, 127, 0, 127);
1553 h->GetYaxis()->SetBinLabel(1,
"EO1");
1554 h->GetYaxis()->SetBinLabel(17,
"EO2");
1555 h->GetYaxis()->SetBinLabel(33,
"EO3");
1556 h->GetYaxis()->SetBinLabel(49,
"EO4");
1557 h->GetYaxis()->SetBinLabel(65,
"EO5");
1558 h->GetYaxis()->SetBinLabel(81,
"EO6");
1559 h->GetYaxis()->SetBinLabel(97,
"EE1");
1560 h->GetYaxis()->SetBinLabel(113,
"EE2");
1562 h->GetYaxis()->SetTickLength(0);
1563 for (
int i = 1;
i < 127;
i++) {
1564 TLine*
l =
new TLine(1,
i, 20,
i);
1565 h->GetListOfFunctions()->Add(
l);
1567 TLine*
l1 =
new TLine(1, 16, 50, 16);
1568 h->GetListOfFunctions()->Add(
l1);
1569 TLine*
l2 =
new TLine(1, 32, 50, 32);
1570 h->GetListOfFunctions()->Add(
l2);
1571 TLine* l3 =
new TLine(1, 48, 50, 48);
1572 h->GetListOfFunctions()->Add(l3);
1573 TLine* l4 =
new TLine(1, 64, 50, 64);
1574 h->GetListOfFunctions()->Add(l4);
1575 TLine* l5 =
new TLine(1, 80, 50, 80);
1576 h->GetListOfFunctions()->Add(l5);
1577 TLine* l6 =
new TLine(1, 96, 50, 96);
1578 h->GetListOfFunctions()->Add(l6);
1579 TLine* l7 =
new TLine(1, 112, 50, 112);
1580 h->GetListOfFunctions()->Add(l7);
1585 return StatusCode::SUCCESS;
1589 if (region == 0 || region == 1) {
1592 h->SetBins(834, 1, 2502, 73, 0, 73);
1593 h->GetYaxis()->SetBinLabel(1,
"BIL");
1594 h->GetYaxis()->SetBinLabel(13,
"BIS");
1595 h->GetYaxis()->SetBinLabel(25,
"BME");
1596 h->GetYaxis()->SetBinLabel(26,
"BML");
1597 h->GetYaxis()->SetBinLabel(38,
"BMS");
1598 h->GetYaxis()->SetBinLabel(50,
"BOL");
1599 h->GetYaxis()->SetBinLabel(62,
"BOS");
1601 h->GetYaxis()->SetTickLength(0);
1602 for (
int i = 0;
i < 73;
i++) {
1603 TLine*
l =
new TLine(1,
i, 20,
i);
1604 h->GetListOfFunctions()->Add(
l);
1606 TLine*
l2 =
new TLine(1, 0, 50, 0);
1607 h->GetListOfFunctions()->Add(
l2);
1608 TLine* l3 =
new TLine(1, 12, 50, 12);
1609 h->GetListOfFunctions()->Add(l3);
1610 TLine* l4 =
new TLine(1, 24, 50, 24);
1611 h->GetListOfFunctions()->Add(l4);
1612 TLine* l5 =
new TLine(1, 25, 50, 25);
1613 h->GetListOfFunctions()->Add(l5);
1614 TLine* l6 =
new TLine(1, 37, 50, 37);
1615 h->GetListOfFunctions()->Add(l6);
1616 TLine* l8 =
new TLine(1, 49, 50, 49);
1617 h->GetListOfFunctions()->Add(l8);
1618 TLine* l9 =
new TLine(1, 61, 50, 61);
1619 h->GetListOfFunctions()->Add(l9);
1622 else if (crate == 1) {
1623 h->SetBins(834, 1, 2502, 73, 0, 73);
1625 h->GetYaxis()->SetBinLabel(1,
"BIL");
1626 h->GetYaxis()->SetBinLabel(13,
"BIS");
1627 h->GetYaxis()->SetBinLabel(25,
"BME");
1628 h->GetYaxis()->SetBinLabel(37,
"BMS");
1629 h->GetYaxis()->SetBinLabel(49,
"BOL");
1630 h->GetYaxis()->SetBinLabel(61,
"BOS");
1632 h->GetYaxis()->SetTickLength(0);
1633 for (
int i = 1;
i < 73;
i++) {
1634 TLine*
l =
new TLine(1,
i, 20,
i);
1635 h->GetListOfFunctions()->Add(
l);
1637 TLine*
l1 =
new TLine(1, 12, 50, 12);
1638 h->GetListOfFunctions()->Add(
l1);
1639 TLine*
l2 =
new TLine(1, 24, 50, 24);
1640 h->GetListOfFunctions()->Add(
l2);
1641 TLine* l3 =
new TLine(1, 36, 50, 36);
1642 h->GetListOfFunctions()->Add(l3);
1643 TLine* l4 =
new TLine(1, 48, 50, 48);
1644 h->GetListOfFunctions()->Add(l4);
1645 TLine* l6 =
new TLine(1, 60, 50, 60);
1646 h->GetListOfFunctions()->Add(l6);
1648 }
else if (crate == 2) {
1650 h->SetBins(834, 1, 2502, 80, 0, 80);
1651 h->GetYaxis()->SetBinLabel(1,
"BIL");
1652 h->GetYaxis()->SetBinLabel(7,
"BIM");
1653 h->GetYaxis()->SetBinLabel(12,
"BIR");
1654 h->GetYaxis()->SetBinLabel(18,
"BIS");
1655 h->GetYaxis()->SetBinLabel(30,
"BMF");
1656 h->GetYaxis()->SetBinLabel(33,
"BMG");
1657 h->GetYaxis()->SetBinLabel(36,
"BML");
1658 h->GetYaxis()->SetBinLabel(48,
"BMS");
1659 h->GetYaxis()->SetBinLabel(54,
"BOF");
1660 h->GetYaxis()->SetBinLabel(58,
"BOG");
1662 h->GetYaxis()->SetBinLabel(63,
"BOL");
1663 h->GetYaxis()->SetBinLabel(75,
"BOS");
1664 }
else if (region == 1) {
1665 h->GetYaxis()->SetBinLabel(62,
"BOL");
1666 h->GetYaxis()->SetBinLabel(74,
"BOS");
1669 h->GetYaxis()->SetTickLength(0);
1670 for (
int i = 0;
i < 80;
i++) {
1671 TLine*
l =
new TLine(1,
i, 20,
i);
1672 h->GetListOfFunctions()->Add(
l);
1674 TLine*
l2 =
new TLine(1, 6, 50, 6);
1675 h->GetListOfFunctions()->Add(
l2);
1676 TLine* l3 =
new TLine(1, 11, 50, 11);
1677 h->GetListOfFunctions()->Add(l3);
1678 TLine* l3b =
new TLine(1, 17, 50, 17);
1679 h->GetListOfFunctions()->Add(l3b);
1682 TLine* l5 =
new TLine(1, 29, 50, 29);
1683 h->GetListOfFunctions()->Add(l5);
1684 TLine* l6 =
new TLine(1, 32, 50, 32);
1685 h->GetListOfFunctions()->Add(l6);
1686 TLine* l7 =
new TLine(1, 35, 50, 35);
1687 h->GetListOfFunctions()->Add(l7);
1688 TLine* l8 =
new TLine(1, 47, 50, 47);
1689 h->GetListOfFunctions()->Add(l8);
1690 TLine* l9 =
new TLine(1, 53, 50, 53);
1691 h->GetListOfFunctions()->Add(l9);
1692 TLine* l9b =
new TLine(1, 57, 50, 57);
1693 h->GetListOfFunctions()->Add(l9b);
1695 TLine* l10 =
new TLine(1, 62, 50, 62);
1696 h->GetListOfFunctions()->Add(l10);
1697 TLine* l11 =
new TLine(1, 74, 50, 74);
1698 h->GetListOfFunctions()->Add(l11);
1699 }
else if (region == 1) {
1700 TLine* l10 =
new TLine(1, 61, 50, 61);
1701 h->GetListOfFunctions()->Add(l10);
1702 TLine* l11 =
new TLine(1, 73, 50, 73);
1703 h->GetListOfFunctions()->Add(l11);
1707 else if (crate == 3) {
1709 h->SetBins(834, 1, 2502, 79, 0, 79);
1710 h->GetYaxis()->SetBinLabel(1,
"BIL");
1711 h->GetYaxis()->SetBinLabel(7,
"BIM");
1712 h->GetYaxis()->SetBinLabel(12,
"BIR");
1713 h->GetYaxis()->SetBinLabel(18,
"BIS");
1714 h->GetYaxis()->SetBinLabel(30,
"BMF");
1715 h->GetYaxis()->SetBinLabel(33,
"BMG");
1716 h->GetYaxis()->SetBinLabel(36,
"BML");
1717 h->GetYaxis()->SetBinLabel(47,
"BMS");
1718 h->GetYaxis()->SetBinLabel(53,
"BOF");
1719 h->GetYaxis()->SetBinLabel(57,
"BOG");
1721 h->GetYaxis()->SetBinLabel(62,
"BOL");
1722 h->GetYaxis()->SetBinLabel(75,
"BOS");
1723 }
else if (region == 1) {
1724 h->GetYaxis()->SetBinLabel(61,
"BOL");
1725 h->GetYaxis()->SetBinLabel(74,
"BOS");
1729 h->GetYaxis()->SetTickLength(0);
1730 for (
int i = 0;
i < 79;
i++) {
1731 TLine*
l =
new TLine(1,
i, 20,
i);
1732 h->GetListOfFunctions()->Add(
l);
1734 TLine*
l2 =
new TLine(1, 6, 50, 6);
1735 h->GetListOfFunctions()->Add(
l2);
1736 TLine* l3 =
new TLine(1, 11, 50, 11);
1737 h->GetListOfFunctions()->Add(l3);
1738 TLine* l3b =
new TLine(1, 17, 50, 17);
1739 h->GetListOfFunctions()->Add(l3b);
1742 TLine* l5 =
new TLine(1, 29, 50, 29);
1743 h->GetListOfFunctions()->Add(l5);
1744 TLine* l6 =
new TLine(1, 32, 50, 32);
1745 h->GetListOfFunctions()->Add(l6);
1746 TLine* l7 =
new TLine(1, 35, 50, 35);
1747 h->GetListOfFunctions()->Add(l7);
1748 TLine* l8 =
new TLine(1, 46, 50, 46);
1749 h->GetListOfFunctions()->Add(l8);
1750 TLine* l9 =
new TLine(1, 52, 50, 52);
1751 h->GetListOfFunctions()->Add(l9);
1752 TLine* l9b =
new TLine(1, 56, 50, 56);
1753 h->GetListOfFunctions()->Add(l9b);
1755 TLine* l10 =
new TLine(1, 61, 50, 61);
1756 h->GetListOfFunctions()->Add(l10);
1757 TLine* l11 =
new TLine(1, 74, 50, 74);
1758 h->GetListOfFunctions()->Add(l11);
1759 }
else if (region == 1) {
1760 TLine* l10 =
new TLine(1, 60, 50, 60);
1761 h->GetListOfFunctions()->Add(l10);
1762 TLine* l11 =
new TLine(1, 73, 50, 73);
1763 h->GetListOfFunctions()->Add(l11);
1769 if (crate == 0 || crate == 2) {
1770 h->SetBins(834, 1, 2502, 73, 0, 73);
1772 h->GetYaxis()->SetBinLabel(1,
"BEE");
1773 h->GetYaxis()->SetBinLabel(5,
"BIS");
1774 h->GetYaxis()->SetBinLabel(9,
"EEL");
1775 h->GetYaxis()->SetBinLabel(13,
"EES");
1776 h->GetYaxis()->SetBinLabel(17,
"EIL");
1777 h->GetYaxis()->SetBinLabel(26,
"EIS");
1778 h->GetYaxis()->SetBinLabel(30,
"EML");
1779 h->GetYaxis()->SetBinLabel(40,
"EMS");
1780 h->GetYaxis()->SetBinLabel(50,
"EOL");
1781 h->GetYaxis()->SetBinLabel(62,
"EOS");
1783 h->GetYaxis()->SetTickLength(0);
1784 for (
int i = 1;
i < 73;
i++) {
1785 TLine*
l =
new TLine(1,
i, 20,
i);
1786 h->GetListOfFunctions()->Add(
l);
1788 TLine*
l2 =
new TLine(1, 4, 50, 4);
1789 h->GetListOfFunctions()->Add(
l2);
1790 TLine* l3 =
new TLine(1, 8, 50, 8);
1791 h->GetListOfFunctions()->Add(l3);
1792 TLine* l4 =
new TLine(1, 12, 50, 12);
1793 h->GetListOfFunctions()->Add(l4);
1794 TLine* l5 =
new TLine(1, 16, 50, 16);
1795 h->GetListOfFunctions()->Add(l5);
1796 TLine* l6 =
new TLine(1, 25, 50, 25);
1797 h->GetListOfFunctions()->Add(l6);
1798 TLine* l7 =
new TLine(1, 29, 50, 29);
1799 h->GetListOfFunctions()->Add(l7);
1800 TLine* l8 =
new TLine(1, 39, 50, 39);
1801 h->GetListOfFunctions()->Add(l8);
1802 TLine* l9 =
new TLine(1, 49, 50, 49);
1803 h->GetListOfFunctions()->Add(l9);
1804 TLine* l10 =
new TLine(1, 61, 50, 61);
1805 h->GetListOfFunctions()->Add(l10);
1806 }
else if (crate == 1) {
1807 h->SetBins(834, 1, 2502, 71, 0, 71);
1809 h->GetYaxis()->SetBinLabel(1,
"BEE");
1810 h->GetYaxis()->SetBinLabel(5,
"BIS");
1811 h->GetYaxis()->SetBinLabel(9,
"EEL");
1812 h->GetYaxis()->SetBinLabel(12,
"EES");
1813 h->GetYaxis()->SetBinLabel(16,
"EIL");
1814 h->GetYaxis()->SetBinLabel(24,
"EIS");
1815 h->GetYaxis()->SetBinLabel(28,
"EML");
1816 h->GetYaxis()->SetBinLabel(38,
"EMS");
1817 h->GetYaxis()->SetBinLabel(48,
"EOL");
1818 h->GetYaxis()->SetBinLabel(60,
"EOS");
1820 h->GetYaxis()->SetTickLength(0);
1821 for (
int i = 1;
i < 71;
i++) {
1822 TLine*
l =
new TLine(1,
i, 20,
i);
1823 h->GetListOfFunctions()->Add(
l);
1825 TLine*
l2 =
new TLine(1, 4, 50, 4);
1826 h->GetListOfFunctions()->Add(
l2);
1827 TLine* l3 =
new TLine(1, 8, 50, 8);
1828 h->GetListOfFunctions()->Add(l3);
1829 TLine* l4 =
new TLine(1, 11, 50, 11);
1830 h->GetListOfFunctions()->Add(l4);
1831 TLine* l5 =
new TLine(1, 15, 50, 15);
1832 h->GetListOfFunctions()->Add(l5);
1833 TLine* l6 =
new TLine(1, 23, 50, 23);
1834 h->GetListOfFunctions()->Add(l6);
1835 TLine* l7 =
new TLine(1, 27, 50, 27);
1836 h->GetListOfFunctions()->Add(l7);
1837 TLine* l8 =
new TLine(1, 37, 50, 37);
1838 h->GetListOfFunctions()->Add(l8);
1839 TLine* l9 =
new TLine(1, 47, 50, 47);
1840 h->GetListOfFunctions()->Add(l9);
1841 TLine* l10 =
new TLine(1, 59, 50, 59);
1842 h->GetListOfFunctions()->Add(l10);
1843 }
else if (crate == 3) {
1844 h->SetBins(834, 1, 2502, 72, 0, 72);
1846 h->GetYaxis()->SetBinLabel(1,
"BEE");
1847 h->GetYaxis()->SetBinLabel(5,
"BIS");
1848 h->GetYaxis()->SetBinLabel(9,
"EEL");
1849 h->GetYaxis()->SetBinLabel(13,
"EES");
1850 h->GetYaxis()->SetBinLabel(17,
"EIL");
1851 h->GetYaxis()->SetBinLabel(25,
"EIS");
1852 h->GetYaxis()->SetBinLabel(29,
"EML");
1853 h->GetYaxis()->SetBinLabel(39,
"EMS");
1854 h->GetYaxis()->SetBinLabel(49,
"EOL");
1855 h->GetYaxis()->SetBinLabel(61,
"EOS");
1857 h->GetYaxis()->SetTickLength(0);
1858 for (
int i = 1;
i < 72;
i++) {
1859 TLine*
l =
new TLine(1,
i, 20,
i);
1860 h->GetListOfFunctions()->Add(
l);
1862 TLine*
l2 =
new TLine(1, 4, 50, 4);
1863 h->GetListOfFunctions()->Add(
l2);
1864 TLine* l3 =
new TLine(1, 8, 50, 8);
1865 h->GetListOfFunctions()->Add(l3);
1866 TLine* l4 =
new TLine(1, 12, 50, 12);
1867 h->GetListOfFunctions()->Add(l4);
1868 TLine* l5 =
new TLine(1, 16, 50, 16);
1869 h->GetListOfFunctions()->Add(l5);
1870 TLine* l6 =
new TLine(1, 24, 50, 24);
1871 h->GetListOfFunctions()->Add(l6);
1872 TLine* l7 =
new TLine(1, 28, 50, 28);
1873 h->GetListOfFunctions()->Add(l7);
1874 TLine* l8 =
new TLine(1, 38, 50, 38);
1875 h->GetListOfFunctions()->Add(l8);
1876 TLine* l9 =
new TLine(1, 48, 50, 48);
1877 h->GetListOfFunctions()->Add(l9);
1878 TLine* l10 =
new TLine(1, 60, 50, 60);
1879 h->GetListOfFunctions()->Add(l10);
1883 return StatusCode::SUCCESS;
1889 if (region == 0 || region == 1) {
1891 if (
chamber.substr(0, 3) ==
"BIL")
1892 binNum = 2 *
eta + (
phi - 1) / 2 - 1;
1893 else if (
chamber.substr(0, 3) ==
"BIS")
1894 binNum = 12 + 2 *
eta + (
phi - 2) / 2 - 1;
1895 else if (
chamber.substr(0, 3) ==
"BME")
1897 else if (
chamber.substr(0, 3) ==
"BML")
1898 binNum = 25 + 2 *
eta + (
phi - 1) / 2 - 1;
1899 else if (
chamber.substr(0, 3) ==
"BMS")
1900 binNum = 37 + 2 *
eta + (
phi - 2) / 2 - 1;
1901 else if (
chamber.substr(0, 3) ==
"BOL")
1902 binNum = 49 + 2 *
eta + (
phi - 1) / 2 - 1;
1903 else if (
chamber.substr(0, 3) ==
"BOS")
1904 binNum = 61 + 2 *
eta + (
phi - 2) / 2 - 1;
1908 }
else if (crate == 2) {
1910 if (
chamber.substr(0, 3) ==
"BIL")
1911 binNum = 2 *
eta + (
phi - 5) / 2 - 1;
1912 else if (
chamber.substr(0, 3) ==
"BIS")
1913 binNum = 12 + 2 *
eta + (
phi - 6) / 2 - 1;
1914 else if (
chamber.substr(0, 3) ==
"BML")
1915 binNum = 24 + 2 *
eta + (
phi - 5) / 2 - 1;
1916 else if (
chamber.substr(0, 3) ==
"BMS")
1917 binNum = 36 + 2 *
eta + (
phi - 6) / 2 - 1;
1918 else if (
chamber.substr(0, 3) ==
"BOL")
1919 binNum = 48 + 2 *
eta + (
phi - 5) / 2 - 1;
1920 else if (
chamber.substr(0, 3) ==
"BOS")
1921 binNum = 60 + 2 *
eta + (
phi - 6) / 2 - 1;
1925 }
else if (crate == 3) {
1926 if (
chamber.substr(0, 3) ==
"BIL")
1928 else if (
chamber.substr(0, 3) ==
"BIM")
1930 else if (
chamber.substr(0, 3) ==
"BIR")
1932 else if (
chamber.substr(0, 3) ==
"BIS")
1933 binNum = 17 + 2 *
eta + (
phi - 10) / 2 - 1;
1934 else if (
chamber.substr(0, 3) ==
"BMF")
1935 binNum = 29 + (
eta + 1) / 2;
1936 else if (
chamber.substr(0, 3) ==
"BMG")
1937 binNum = 32 +
eta / 2;
1938 else if (
chamber.substr(0, 3) ==
"BML")
1939 binNum = 35 + 2 *
eta + (
phi - 9) / 2 - 1;
1940 else if (
chamber.substr(0, 3) ==
"BMS")
1942 else if (
chamber.substr(0, 3) ==
"BOF")
1943 binNum = 53 + (
eta + 1) / 2;
1944 else if (
chamber.substr(0, 4) ==
"BOG0" && region == 0)
1946 else if (
chamber.substr(0, 3) ==
"BOG")
1947 binNum = 58 +
eta / 2 - region;
1948 else if (
chamber.substr(0, 3) ==
"BOL")
1949 binNum = 62 + 2 *
eta + (
phi - 9) / 2 - 1 - region;
1950 else if (
chamber.substr(0, 3) ==
"BOS")
1951 binNum = 74 +
eta - region;
1955 }
else if (crate == 4) {
1957 if (
chamber.substr(0, 3) ==
"BIL")
1959 else if (
chamber.substr(0, 3) ==
"BIM")
1961 else if (
chamber.substr(0, 3) ==
"BIR")
1963 else if (
chamber.substr(0, 3) ==
"BIS")
1964 binNum = 17 + 2 *
eta + (
phi - 14) / 2 - 1;
1965 else if (
chamber.substr(0, 3) ==
"BMF")
1966 binNum = 29 + (
eta + 1) / 2;
1967 else if (
chamber.substr(0, 3) ==
"BMG")
1968 binNum = 32 +
eta / 2;
1969 else if (
chamber.substr(0, 3) ==
"BML" &&
eta < 6)
1970 binNum = 35 + 2 *
eta + (
phi - 13) / 2 - 1;
1971 else if (
chamber.substr(0, 7) ==
"BML6A15" ||
chamber.substr(0, 7) ==
"BML6C15")
1973 else if (
chamber.substr(0, 3) ==
"BMS")
1975 else if (
chamber.substr(0, 3) ==
"BOF")
1976 binNum = 52 + (
eta + 1) / 2;
1977 else if (
chamber.substr(0, 4) ==
"BOG0" && region == 0)
1979 else if (
chamber.substr(0, 3) ==
"BOG")
1980 binNum = 57 +
eta / 2 - region;
1981 else if (
chamber.substr(0, 3) ==
"BOL")
1982 binNum = 61 + 2 *
eta + (
phi - 13) / 2 - 1 - region;
1983 else if (
chamber.substr(0, 3) ==
"BOS")
1984 binNum = 74 +
eta - region;
1989 }
else if (region == 2 || region == 3) {
1991 if (
chamber.substr(0, 3) ==
"BEE")
1992 binNum = 2 *
eta + (
phi - 2) / 2 - 1;
1993 else if (
chamber.substr(0, 3) ==
"BIS")
1994 binNum = 4 + 2 * (
eta - 6) + (
phi - 2) / 2 - 1;
1995 else if (
chamber.substr(0, 3) ==
"EEL")
1996 binNum = 8 + 2 *
eta + (
phi - 1) / 2 - 1;
1997 else if (
chamber.substr(0, 3) ==
"EES")
1998 binNum = 12 + 2 *
eta + (
phi - 2) / 2 - 1;
1999 else if (
chamber.substr(0, 3) ==
"EIL" &&
eta < 5)
2000 binNum = 16 + 2 *
eta + (
phi - 1) / 2 - 1;
2001 else if (
chamber.substr(0, 3) ==
"EIL" &&
eta == 5)
2003 else if (
chamber.substr(0, 3) ==
"EIS")
2004 binNum = 25 + 2 *
eta + (
phi - 2) / 2 - 1;
2005 else if (
chamber.substr(0, 3) ==
"EML")
2006 binNum = 29 + 2 *
eta + (
phi - 1) / 2 - 1;
2007 else if (
chamber.substr(0, 3) ==
"EMS")
2008 binNum = 39 + 2 *
eta + (
phi - 2) / 2 - 1;
2009 else if (
chamber.substr(0, 3) ==
"EOL")
2010 binNum = 49 + 2 *
eta + (
phi - 1) / 2 - 1;
2011 else if (
chamber.substr(0, 3) ==
"EOS")
2012 binNum = 61 + 2 *
eta + (
phi - 2) / 2 - 1;
2016 }
else if (crate == 2) {
2017 if (
chamber.substr(0, 3) ==
"BEE")
2018 binNum = 2 *
eta + (
phi - 6) / 2 - 1;
2019 else if (
chamber.substr(0, 3) ==
"BIS")
2020 binNum = 4 + 2 * (
eta - 6) + (
phi - 6) / 2 - 1;
2021 else if (
chamber.substr(0, 4) ==
"EEL1")
2022 binNum = 9 + (
phi - 3) / 2 - 1;
2023 else if (
chamber.substr(0, 4) ==
"EEL2")
2025 else if (
chamber.substr(0, 3) ==
"EES")
2026 binNum = 11 + 2 *
eta + (
phi - 6) / 2 - 1;
2027 else if (
chamber.substr(0, 3) ==
"EIL")
2028 binNum = 15 + 2 *
eta + (
phi - 5) / 2 - 1;
2029 else if (
chamber.substr(0, 3) ==
"EIS")
2030 binNum = 23 + 2 *
eta + (
phi - 6) / 2 - 1;
2031 else if (
chamber.substr(0, 3) ==
"EML")
2032 binNum = 27 + 2 *
eta + (
phi - 5) / 2 - 1;
2033 else if (
chamber.substr(0, 3) ==
"EMS")
2034 binNum = 37 + 2 *
eta + (
phi - 6) / 2 - 1;
2035 else if (
chamber.substr(0, 3) ==
"EOL")
2036 binNum = 47 + 2 *
eta + (
phi - 5) / 2 - 1;
2037 else if (
chamber.substr(0, 3) ==
"EOS")
2038 binNum = 59 + 2 *
eta + (
phi - 6) / 2 - 1;
2042 }
else if (crate == 3) {
2044 if (
chamber.substr(0, 3) ==
"BEE")
2045 binNum = 2 *
eta + (
phi - 10) / 2 - 1;
2046 else if (
chamber.substr(0, 3) ==
"BIS")
2047 binNum = 4 + 2 * (
eta - 6) + (
phi - 10) / 2 - 1;
2048 else if (
chamber.substr(0, 3) ==
"EEL")
2049 binNum = 8 + 2 *
eta + (
phi - 9) / 2 - 1;
2050 else if (
chamber.substr(0, 3) ==
"EES")
2051 binNum = 12 + 2 *
eta + (
phi - 10) / 2 - 1;
2052 else if (
chamber.substr(0, 3) ==
"EIL" &&
eta < 5)
2053 binNum = 16 + 2 *
eta + (
phi - 9) / 2 - 1;
2054 else if (
chamber.substr(0, 4) ==
"EIL5")
2056 else if (
chamber.substr(0, 3) ==
"EIS")
2057 binNum = 25 + 2 *
eta + (
phi - 10) / 2 - 1;
2058 else if (
chamber.substr(0, 3) ==
"EML")
2059 binNum = 29 + 2 *
eta + (
phi - 9) / 2 - 1;
2060 else if (
chamber.substr(0, 3) ==
"EMS")
2061 binNum = 39 + 2 *
eta + (
phi - 10) / 2 - 1;
2062 else if (
chamber.substr(0, 3) ==
"EOL")
2063 binNum = 49 + 2 *
eta + (
phi - 9) / 2 - 1;
2064 else if (
chamber.substr(0, 3) ==
"EOS")
2065 binNum = 61 + 2 *
eta + (
phi - 10) / 2 - 1;
2069 }
else if (crate == 4) {
2070 if (
chamber.substr(0, 3) ==
"BEE")
2071 binNum = 2 *
eta + (
phi - 14) / 2 - 1;
2072 else if (
chamber.substr(0, 3) ==
"BIS")
2073 binNum = 4 + 2 * (
eta - 6) + (
phi - 14) / 2 - 1;
2074 else if (
chamber.substr(0, 3) ==
"EEL")
2075 binNum = 8 + 2 *
eta + (
phi - 13) / 2 - 1;
2076 else if (
chamber.substr(0, 3) ==
"EES")
2077 binNum = 12 + 2 *
eta + (
phi - 14) / 2 - 1;
2078 else if (
chamber.substr(0, 3) ==
"EIL")
2079 binNum = 16 + 2 *
eta + (
phi - 13) / 2 - 1;
2080 else if (
chamber.substr(0, 3) ==
"EIS")
2081 binNum = 24 + 2 *
eta + (
phi - 14) / 2 - 1;
2082 else if (
chamber.substr(0, 3) ==
"EML")
2083 binNum = 28 + 2 *
eta + (
phi - 13) / 2 - 1;
2084 else if (
chamber.substr(0, 3) ==
"EMS")
2085 binNum = 38 + 2 *
eta + (
phi - 14) / 2 - 1;
2086 else if (
chamber.substr(0, 3) ==
"EOL")
2087 binNum = 48 + 2 *
eta + (
phi - 13) / 2 - 1;
2088 else if (
chamber.substr(0, 3) ==
"EOS")
2089 binNum = 60 + 2 *
eta + (
phi - 14) / 2 - 1;