![]() |
![]() |
#include <EgammaAnalysis/EgammaIsolationProducers/interface/EgammaPhotonTkNumIsolationProducer.h>
Public Member Functions | |
EgammaPhotonTkNumIsolationProducer (const edm::ParameterSet &) | |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
~EgammaPhotonTkNumIsolationProducer () | |
Private Attributes | |
edm::ParameterSet | conf_ |
double | extRadius_ |
double | intRadius_ |
double | maxVtxDist_ |
edm::InputTag | photonProducer_ |
double | ptMin_ |
edm::InputTag | trackProducer_ |
Definition at line 20 of file EgammaPhotonTkNumIsolationProducer.h.
EgammaPhotonTkNumIsolationProducer::EgammaPhotonTkNumIsolationProducer | ( | const edm::ParameterSet & | config | ) | [explicit] |
Definition at line 22 of file EgammaPhotonTkNumIsolationProducer.cc.
References conf_, extRadius_, edm::ParameterSet::getParameter(), intRadius_, maxVtxDist_, photonProducer_, ptMin_, and trackProducer_.
00022 : conf_(config) 00023 { 00024 // use configuration file to setup input/output collection names 00025 photonProducer_ = conf_.getParameter<edm::InputTag>("photonProducer"); 00026 00027 trackProducer_ = conf_.getParameter<edm::InputTag>("trackProducer"); 00028 00029 ptMin_ = conf_.getParameter<double>("ptMin"); 00030 intRadius_ = conf_.getParameter<double>("intRadius"); 00031 extRadius_ = conf_.getParameter<double>("extRadius"); 00032 maxVtxDist_ = conf_.getParameter<double>("maxVtxDist"); 00033 00034 //register your products 00035 produces < reco::CandViewIntAssociations >(); 00036 }
EgammaPhotonTkNumIsolationProducer::~EgammaPhotonTkNumIsolationProducer | ( | ) |
void EgammaPhotonTkNumIsolationProducer::produce | ( | edm::Event & | iEvent, | |
const edm::EventSetup & | iSetup | |||
) | [virtual] |
Implements edm::EDProducer.
Definition at line 48 of file EgammaPhotonTkNumIsolationProducer.cc.
References extRadius_, edm::Event::getByLabel(), PhotonTkIsolation::getNumberTracks(), i, intRadius_, maxVtxDist_, photonProducer_, edm::Handle< T >::product(), ptMin_, edm::Event::put(), edm::AssociationVector< KeyRefProd, CVal, KeyRef, SizeType, KeyReferenceHelper >::setValue(), trackProducer_, and tracks.
00049 { 00050 00051 // Get the filtered objects 00052 edm::Handle< edm::View<reco::Candidate> > photonHandle; 00053 iEvent.getByLabel(photonProducer_,photonHandle); 00054 00055 //get the tracks 00056 edm::Handle<reco::TrackCollection> tracks; 00057 iEvent.getByLabel(trackProducer_,tracks); 00058 const reco::TrackCollection* trackCollection = tracks.product(); 00059 00060 reco::CandViewIntAssociations* isoMap = new reco::CandViewIntAssociations( reco::CandidateBaseRefProd( photonHandle ) ); 00061 00062 PhotonTkIsolation myTkIsolation (extRadius_,intRadius_,ptMin_,maxVtxDist_,trackCollection) ; 00063 00064 for(unsigned int i = 0 ; i < photonHandle->size(); ++i ){ 00065 int isoValue = myTkIsolation.getNumberTracks(&(photonHandle->at(i))); 00066 isoMap->setValue(i,isoValue); 00067 } 00068 00069 00070 00071 std::auto_ptr<reco::CandViewIntAssociations> isolMap(isoMap); 00072 iEvent.put(isolMap); 00073 00074 }
Definition at line 36 of file EgammaPhotonTkNumIsolationProducer.h.
Referenced by EgammaPhotonTkNumIsolationProducer().
double EgammaPhotonTkNumIsolationProducer::extRadius_ [private] |
Definition at line 33 of file EgammaPhotonTkNumIsolationProducer.h.
Referenced by EgammaPhotonTkNumIsolationProducer(), and produce().
double EgammaPhotonTkNumIsolationProducer::intRadius_ [private] |
Definition at line 32 of file EgammaPhotonTkNumIsolationProducer.h.
Referenced by EgammaPhotonTkNumIsolationProducer(), and produce().
double EgammaPhotonTkNumIsolationProducer::maxVtxDist_ [private] |
Definition at line 34 of file EgammaPhotonTkNumIsolationProducer.h.
Referenced by EgammaPhotonTkNumIsolationProducer(), and produce().
Definition at line 28 of file EgammaPhotonTkNumIsolationProducer.h.
Referenced by EgammaPhotonTkNumIsolationProducer(), and produce().
double EgammaPhotonTkNumIsolationProducer::ptMin_ [private] |
Definition at line 31 of file EgammaPhotonTkNumIsolationProducer.h.
Referenced by EgammaPhotonTkNumIsolationProducer(), and produce().
Definition at line 29 of file EgammaPhotonTkNumIsolationProducer.h.
Referenced by EgammaPhotonTkNumIsolationProducer(), and produce().