CMS 3D CMS Logo

JetTracksAssociationExplicit.cc
Go to the documentation of this file.
1 // Associate jets with tracks by simple "dR" criteria
2 // Fedor Ratnikov (UMd), Aug. 28, 2007
3 
5 
8 
10 
12  const std::vector<edm::RefToBase<reco::Jet> >& fJets,
13  const std::vector<reco::TrackRef>& fTracks) const {
14  for (unsigned j = 0; j < fJets.size(); ++j) {
15  reco::PFJet const* pfJet = dynamic_cast<reco::PFJet const*>(&*(fJets[j]));
16  if (pfJet != nullptr) {
17  reco::TrackRefVector assoTracks = pfJet->getTrackRefs();
18  reco::JetTracksAssociation::setValue(fAssociation, fJets[j], assoTracks);
19  } else {
20  throw cms::Exception("InvalidConfiguration")
21  << "From JetTracksAssociationExplicit::produce: Only PFJets are currently supported for this module"
22  << std::endl;
23  }
24  }
25 }
Jets made from PFObjects.
Definition: PFJet.h:20
bool setValue(Container &, const reco::JetBaseRef &, reco::TrackRefVector)
associate jet with value. Returns false and associate nothing if jet is already associated ...
void produce(reco::JetTracksAssociation::Container *fAssociation, const std::vector< edm::RefToBase< reco::Jet > > &fJets, const std::vector< reco::TrackRef > &fTracks) const
reco::TrackRefVector getTrackRefs() const
Definition: PFJet.cc:48