@@ -841,62 +841,83 @@ void ScoutingCollectionMonitor::analyze(const edm::Event& iEvent, const edm::Eve
841841 tk_PV_dz_hist->Fill (best_offset.second );
842842 }
843843
844- // uncleaned calo rechits histograms
844+ // Define helper lambdas for EB and EE rechits
845+ auto fillEBHistograms = [](const auto & rechits,
846+ int index,
847+ dqm::reco::MonitorElement* numberHist[2 ],
848+ dqm::reco::MonitorElement* etaPhiMap[2 ],
849+ dqm::reco::MonitorElement* energyHist[2 ],
850+ dqm::reco::MonitorElement* timeHist[2 ]) {
851+ numberHist[index]->Fill (rechits.size ());
852+ for (const auto & hit : rechits) {
853+ EBDetId id (hit.detId ());
854+ etaPhiMap[index]->Fill (id.ieta (), id.iphi ());
855+ energyHist[index]->Fill (hit.energy ());
856+ timeHist[index]->Fill (hit.time ());
857+ }
858+ };
859+
860+ auto fillEEHistograms = [](const auto & rechits,
861+ int index,
862+ dqm::reco::MonitorElement* numberHist[2 ],
863+ dqm::reco::MonitorElement* plusXYMap[2 ],
864+ dqm::reco::MonitorElement* minusXYMap[2 ],
865+ dqm::reco::MonitorElement* energyHist[2 ],
866+ dqm::reco::MonitorElement* timeHist[2 ]) {
867+ numberHist[index]->Fill (rechits.size ());
868+ for (const auto & hit : rechits) {
869+ EEDetId id (hit.detId ());
870+ if (id.zside () > 0 ) {
871+ plusXYMap[index]->Fill (id.ix (), id.iy ());
872+ } else {
873+ minusXYMap[index]->Fill (id.ix (), id.iy ());
874+ }
875+ energyHist[index]->Fill (hit.energy ());
876+ timeHist[index]->Fill (hit.time ());
877+ }
878+ };
879+
880+ // Process uncleaned EB rechits
845881 edm::Handle<Run3ScoutingEBRecHitCollection> ebRecHitsH;
846882 if (!ebRecHitsToken_.isUninitialized () && getValidHandle (iEvent, ebRecHitsToken_, ebRecHitsH, " pfRecHitsEB" )) {
847- ebRecHitsNumber_hist[0 ]->Fill (ebRecHitsH->size ());
848- for (const auto & ebRecHit : *ebRecHitsH) {
849- EBDetId ebid (ebRecHit.detId ());
850- ebRecHitsEtaPhiMap[0 ]->Fill (ebid.ieta (), ebid.iphi ());
851- ebRecHits_energy_hist[0 ]->Fill (ebRecHit.energy ());
852- ebRecHits_time_hist[0 ]->Fill (ebRecHit.time ());
853- }
883+ fillEBHistograms (
884+ *ebRecHitsH, 0 , ebRecHitsNumber_hist, ebRecHitsEtaPhiMap, ebRecHits_energy_hist, ebRecHits_time_hist);
854885 }
855886
887+ // Process uncleaned EE rechits
856888 edm::Handle<Run3ScoutingEERecHitCollection> eeRecHitsH;
857889 if (!eeRecHitsToken_.isUninitialized () && getValidHandle (iEvent, eeRecHitsToken_, eeRecHitsH, " pfRecHitsEE" )) {
858- eeRecHitsNumber_hist[0 ]->Fill (eeRecHitsH->size ());
859- for (const auto & eeRecHit : *eeRecHitsH) {
860- EEDetId eeid (eeRecHit.detId ());
861- if (eeid.zside () > 0 ) {
862- eePlusRecHitsXYMap[0 ]->Fill (eeid.ix (), eeid.iy ());
863- } else {
864- eeMinusRecHitsXYMap[0 ]->Fill (eeid.ix (), eeid.iy ());
865- }
866- eeRecHits_energy_hist[0 ]->Fill (eeRecHit.energy ());
867- eeRecHits_time_hist[0 ]->Fill (eeRecHit.time ());
868- }
890+ fillEEHistograms (*eeRecHitsH,
891+ 0 ,
892+ eeRecHitsNumber_hist,
893+ eePlusRecHitsXYMap,
894+ eeMinusRecHitsXYMap,
895+ eeRecHits_energy_hist,
896+ eeRecHits_time_hist);
869897 }
870898
871- // cleaned calo rechits histograms
899+ // Process cleaned EB rechits
872900 edm::Handle<Run3ScoutingEBRecHitCollection> ebRecHitsCleanedH;
873901 if (!ebCleanedRecHitsToken_.isUninitialized () &&
874902 getValidHandle (iEvent, ebCleanedRecHitsToken_, ebRecHitsCleanedH, " pfCleanedRecHitsEB" )) {
875- ebRecHitsNumber_hist[1 ]->Fill (ebRecHitsCleanedH->size ());
876- for (const auto & ebRecHit : *ebRecHitsCleanedH) {
877- EBDetId ebid (ebRecHit.detId ());
878- ebRecHitsEtaPhiMap[1 ]->Fill (ebid.ieta (), ebid.iphi ());
879- ebRecHits_energy_hist[1 ]->Fill (ebRecHit.energy ());
880- ebRecHits_time_hist[1 ]->Fill (ebRecHit.time ());
881- }
903+ fillEBHistograms (
904+ *ebRecHitsCleanedH, 1 , ebRecHitsNumber_hist, ebRecHitsEtaPhiMap, ebRecHits_energy_hist, ebRecHits_time_hist);
882905 }
883906
907+ // Process cleaned EE rechits
884908 edm::Handle<Run3ScoutingEERecHitCollection> eeRecHitsCleanedH;
885909 if (!eeCleanedRecHitsToken_.isUninitialized () &&
886910 getValidHandle (iEvent, eeCleanedRecHitsToken_, eeRecHitsCleanedH, " pfCleanedRecHitsEE" )) {
887- eeRecHitsNumber_hist[1 ]->Fill (eeRecHitsCleanedH->size ());
888- for (const auto & eeRecHit : *eeRecHitsCleanedH) {
889- EEDetId eeid (eeRecHit.detId ());
890- if (eeid.zside () > 0 ) {
891- eePlusRecHitsXYMap[1 ]->Fill (eeid.ix (), eeid.iy ());
892- } else {
893- eeMinusRecHitsXYMap[1 ]->Fill (eeid.ix (), eeid.iy ());
894- }
895- eeRecHits_energy_hist[1 ]->Fill (eeRecHit.energy ());
896- eeRecHits_time_hist[1 ]->Fill (eeRecHit.time ());
897- }
911+ fillEEHistograms (*eeRecHitsCleanedH,
912+ 1 ,
913+ eeRecHitsNumber_hist,
914+ eePlusRecHitsXYMap,
915+ eeMinusRecHitsXYMap,
916+ eeRecHits_energy_hist,
917+ eeRecHits_time_hist);
898918 }
899919
920+ // process the HBHE rechits
900921 edm::Handle<Run3ScoutingHBHERecHitCollection> hbheRecHitsH;
901922 if (!hbheRecHitsToken_.isUninitialized () &&
902923 getValidHandle (iEvent, hbheRecHitsToken_, hbheRecHitsH, " pfRecHitsHBHE" )) {
0 commit comments