15 cutBasedAlgo_->setup(conf);
32 reco::PhotonCollection::const_iterator
photon;
33 std::vector<Bool_t>
Loose;
34 std::vector<Bool_t>
Tight;
35 std::vector<Bool_t> LooseEM;
36 for (photon = (*photons).begin(); photon != (*photons).end(); ++
photon) {
44 LooseEM.push_back(LooseEMQual);
45 Loose.push_back(LooseQual);
46 Tight.push_back(TightQual);
49 auto outlooseEM = std::make_unique<edm::ValueMap<Bool_t>>();
51 fillerlooseEM.insert(photons, LooseEM.begin(), LooseEM.end());
56 auto outloose = std::make_unique<edm::ValueMap<Bool_t>>();
58 fillerloose.insert(photons, Loose.begin(), Loose.end());
63 auto outtight = std::make_unique<edm::ValueMap<Bool_t>>();
65 fillertight.insert(photons, Tight.begin(), Tight.end());
T getParameter(std::string const &) const
void decideEE(const reco::Photon *pho, bool &LooseEM, bool &LoosePhoton, bool &TightPhoton)
OrphanHandle< PROD > put(std::unique_ptr< PROD > product)
Put a new product.
bool getByToken(EDGetToken token, Handle< PROD > &result) const
PhotonIDProducer(const edm::ParameterSet &conf)
void decideEB(const reco::Photon *pho, bool &LooseEM, bool &LoosePhoton, bool &TightPhoton)
CutBasedPhotonIDAlgo * cutBasedAlgo_
void produce(edm::Event &e, const edm::EventSetup &c) override
std::string photonCutBasedIDLooseLabel_
std::string photonCutBasedIDLooseEMLabel_
std::string photonCutBasedIDTightLabel_
~PhotonIDProducer() override
edm::EDGetTokenT< reco::PhotonCollection > photonToken_