106 std::vector<double> chIsoValues;
107 std::vector<double> phIsoValues;
108 std::vector<double> nhIsoValues;
109 chIsoValues.reserve(phoCollection->size());
110 phIsoValues.reserve(phoCollection->size());
111 nhIsoValues.reserve(phoCollection->size());
113 unsigned int ivtx = 0;
116 for (reco::PhotonCollection::const_iterator aPho = recoPho->begin(); aPho != recoPho->end(); ++aPho) {
121 <<
" event " <<
iEvent.id().event();
122 edm::LogPrint(
"PhotonIsoProducer") <<
" pt " << aPho->pt() <<
" eta " << aPho->eta() <<
" phi " << aPho->phi()
123 <<
" charge " << aPho->charge() <<
" : ";
135 chFiller.
insert(phoCollection, chIsoValues.begin(), chIsoValues.end());
138 phFiller.
insert(phoCollection, phIsoValues.begin(), phIsoValues.end());
141 nhFiller.
insert(phoCollection, nhIsoValues.begin(), nhIsoValues.end());
T getParameter(std::string const &) const
float getIsolationPhoton()
#define DEFINE_FWK_MODULE(type)
T const * product() const
void insert(const H &h, I begin, I end)
bool filter(edm::Event &, const edm::EventSetup &) override
T getUntrackedParameter(std::string const &, T const &) const
float getIsolationCharged()
edm::EDGetTokenT< reco::PhotonCollection > photonToken_
PFIsolationEstimator isolator
Log< level::Warning, true > LogPrint
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
edm::EDGetTokenT< reco::PFCandidateCollection > particleFlowToken_
std::vector< Photon > PhotonCollection
collectin of Photon objects
edm::EDGetTokenT< reco::VertexCollection > vertexToken_
~PhotonIsoProducer() override
float getIsolationNeutral()
void initializePhotonIsolation(Bool_t bApplyVeto)
float fGetIsolation(const reco::PFCandidate *pfCandidate, const reco::PFCandidateCollection *pfParticlesColl, reco::VertexRef vtx, edm::Handle< reco::VertexCollection > vertices)
void setConeSize(float fValue=0.4)
PhotonIsoProducer(const edm::ParameterSet &)