#include <RecoJets/JetAssociationProducers/src/JetTracksAssociatorAtVertex.h>
Public Member Functions | |
JetTracksAssociatorAtVertex (const edm::ParameterSet &) | |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
virtual | ~JetTracksAssociatorAtVertex () |
Private Attributes | |
JetTracksAssociationDRVertex | mAssociator |
edm::InputTag | mJets |
edm::InputTag | mTracks |
Definition at line 19 of file JetTracksAssociatorAtVertex.h.
JetTracksAssociatorAtVertex::JetTracksAssociatorAtVertex | ( | const edm::ParameterSet & | fConfig | ) |
Definition at line 19 of file JetTracksAssociatorAtVertex.cc.
00020 : mJets (fConfig.getParameter<edm::InputTag> ("jets")), 00021 mTracks (fConfig.getParameter<edm::InputTag> ("tracks")), 00022 mAssociator (fConfig.getParameter<double> ("coneSize")) 00023 { 00024 produces<reco::JetTracksAssociation::Container> (); 00025 }
JetTracksAssociatorAtVertex::~JetTracksAssociatorAtVertex | ( | ) | [virtual] |
void JetTracksAssociatorAtVertex::produce | ( | edm::Event & | fEvent, | |
const edm::EventSetup & | fSetup | |||
) | [virtual] |
Implements edm::EDProducer.
Definition at line 29 of file JetTracksAssociatorAtVertex.cc.
References reco::JetTracksAssociation::allJets(), python::MinBiasTracking_cff::allTracks, edm::Event::getByLabel(), i, mAssociator, mJets, mTracks, JetTracksAssociationDRVertex::produce(), and edm::Event::put().
00029 { 00030 edm::Handle <edm::View <reco::Jet> > jets_h; 00031 fEvent.getByLabel (mJets, jets_h); 00032 edm::Handle <reco::TrackCollection> tracks_h; 00033 fEvent.getByLabel (mTracks, tracks_h); 00034 00035 std::auto_ptr<reco::JetTracksAssociation::Container> jetTracks (new reco::JetTracksAssociation::Container (reco::JetRefBaseProd(jets_h))); 00036 00037 // format inputs 00038 std::vector <edm::RefToBase<reco::Jet> > allJets; 00039 allJets.reserve (jets_h->size()); 00040 for (unsigned i = 0; i < jets_h->size(); ++i) allJets.push_back (jets_h->refAt(i)); 00041 std::vector <reco::TrackRef> allTracks; 00042 allTracks.reserve (tracks_h->size()); 00043 for (unsigned i = 0; i < tracks_h->size(); ++i) allTracks.push_back (reco::TrackRef (tracks_h, i)); 00044 // run algo 00045 mAssociator.produce (&*jetTracks, allJets, allTracks); 00046 // store output 00047 fEvent.put (jetTracks); 00048 }