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 {}
11 
13  const std::vector <edm::RefToBase<reco::Jet> >& fJets,
14  const std::vector <reco::TrackRef>& fTracks) const
15 {
16  for (unsigned j = 0; j < fJets.size(); ++j) {
17  reco::PFJet const * pfJet = dynamic_cast<reco::PFJet const *>( &* (fJets[j]) ) ;
18  if ( pfJet != nullptr ) {
19  reco::TrackRefVector assoTracks = pfJet->getTrackRefs();
20  reco::JetTracksAssociation::setValue (fAssociation, fJets[j], assoTracks);
21  } else {
22  throw cms::Exception("InvalidConfiguration")
23  << "From JetTracksAssociationExplicit::produce: Only PFJets are currently supported for this module" << std::endl;
24  }
25  }
26 }
Jets made from PFObjects.
Definition: PFJet.h:21
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:59