Merges reco::CaloMuons, reco::Muons and optionally reco::Tracks avoiding innerTrack duplications in a single reco::Muon collection.
More...
Merges reco::CaloMuons, reco::Muons and optionally reco::Tracks avoiding innerTrack duplications in a single reco::Muon collection.
- Author
- Giovanni Petrucciani
Definition at line 22 of file CaloMuonMerger.cc.
Definition at line 62 of file CaloMuonMerger.cc.
References reco::Muon::CaloMuon, mergedMuons_cfi::caloMuons, caloMuonsCut_, caloMuonToken_, HCALHighEnergyHPDFilter_cfi::energy, Exception, mps_fire::i, iEvent, reco::isMuon(), mergeCaloMuons_, mergeTracks_, minCaloCompatibility_, eostools::move(), amptDefaultParameters_cff::mu, PDWG_BPHSkim_cff::muons, muonsCut_, muonToken_, MillePedeFileConverter_cfg::out, mathSSE::sqrt(), HLT_2022v15_cff::track, tracks, tracksCut_, and trackToken_.
73 auto out = std::make_unique<std::vector<reco::Muon>>();
77 for (std::vector<reco::Muon>::const_iterator it =
muons->begin(), ed =
muons->end(); it != ed; ++it) {
83 if (
mu.isCaloCompatibilityValid()) {
88 throw cms::Exception(
"Boh") <<
"Muon with track and no CaloCompatibility; pt = " <<
mu.pt()
89 <<
", eta = " <<
mu.eta() <<
", type = " <<
mu.type() <<
"\n";
95 for (std::vector<reco::CaloMuon>::const_iterator it =
caloMuons->begin(), ed =
caloMuons->end(); it != ed; ++it) {
105 mu.setCalEnergy(it->calEnergy());
106 mu.setCaloCompatibility(it->caloCompatibility());
114 for (
size_t i = 0;
i <
tracks->size();
i++) {
129 bool isCaloMuon =
false;
bool isMuon(const Candidate &part)
StringCutObjectSelector< reco::CaloMuon, false > caloMuonsCut_
double minCaloCompatibility_
edm::EDGetTokenT< std::vector< reco::Track > > trackToken_
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
StringCutObjectSelector< reco::TrackRef, false > tracksCut_
edm::EDGetTokenT< std::vector< reco::Muon > > muonToken_
auto const & tracks
cannot be loose
StringCutObjectSelector< reco::Muon, false > muonsCut_
edm::EDGetTokenT< std::vector< reco::CaloMuon > > caloMuonToken_
static const unsigned int CaloMuon