111 tok_HBHE_ = consumes<edm::SortedCollection<HBHERecHit, edm::StrictWeakOrdering<HBHERecHit>>>(
labelHBHE_);
112 tok_HF_ = consumes<edm::SortedCollection<HFRecHit, edm::StrictWeakOrdering<HFRecHit>>>(
labelHF_);
113 tok_HO_ = consumes<edm::SortedCollection<HORecHit, edm::StrictWeakOrdering<HORecHit>>>(
labelHO_);
128 put_hbhe_ = produces<edm::SortedCollection<HBHERecHit, edm::StrictWeakOrdering<HBHERecHit>>>(labelHBHE_.
encode());
129 put_hf_ = produces<edm::SortedCollection<HFRecHit, edm::StrictWeakOrdering<HFRecHit>>>(labelHF_.
encode());
130 put_ho_ = produces<edm::SortedCollection<HORecHit, edm::StrictWeakOrdering<HORecHit>>>(labelHO_.
encode());
148 for (reco::PFJetCollection::const_iterator itr = jt.begin(); itr != jt.end(); ++itr) {
156 for (reco::PhotonCollection::const_iterator itr = ph.begin(); itr != ph.end(); ++itr) {
167 if (!phoHandle.isValid()) {
174 if (!pfjet.isValid()) {
181 if (!pfc.isValid()) {
195 if (!pfmt.isValid()) {
202 if (!hbhe.isValid()) {
223 if (!trig.isValid()) {
234 const double rho_val = *(rh.product());
237 if (!gsf.isValid()) {
244 if (!
con.isValid()) {
262 std::vector<Bool_t> miniLoosePhoton{};
263 std::vector<Bool_t> miniTightPhoton{};
283 if (loosePhotonQual.isValid() && tightPhotonQual.isValid()) {
284 miniLoosePhoton.reserve(photon.size());
285 miniTightPhoton.reserve(photon.size());
286 for (
int iPho = 0; iPho < int(photon.size()); ++iPho) {
290 miniLoosePhoton.push_back(-1);
291 miniTightPhoton.push_back(-1);
293 miniLoosePhoton.push_back((*loosePhotonQual)[photonRef]);
294 miniTightPhoton.push_back((*tightPhotonQual)[photonRef]);
338 desc.
add<
double>(
"MinPtJet", 10.0);
339 desc.
add<
double>(
"MinPtPhoton", 10.0);
340 descriptions.
add(
"alcaGammaJetProducer", desc);
bool select(const reco::PhotonCollection &, const reco::PFJetCollection &) const
Log< level::Info, true > LogVerbatim
~AlCaGammaJetProducer() override=default
edm::InputTag labelPFCandidate_
edm::EDPutTokenT< double > put_rho_
#define DEFINE_FWK_MODULE(type)
edm::InputTag labelLoosePhot_
edm::InputTag labelPFMET_
edm::EDPutTokenT< std::vector< Bool_t > > put_tightPhot_
edm::InputTag labelPFJet_
edm::EDPutTokenT< reco::PhotonCollection > put_photon_
std::vector< Vertex > VertexCollection
collection of Vertex objects
edm::EDGetTokenT< edm::ValueMap< Bool_t > > tok_tightPhoton_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::EDGetTokenT< reco::BeamSpot > tok_BS_
bool accept(const edm::Event &event, const edm::TriggerResults &triggerTable, const std::string &triggerPath)
std::vector< GsfElectron > GsfElectronCollection
collection of GsfElectron objects
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
std::vector< Conversion > ConversionCollection
collectin of Conversion objects
edm::EDGetTokenT< edm::SortedCollection< HBHERecHit, edm::StrictWeakOrdering< HBHERecHit > > > tok_HBHE_
double dydz() const
dydz slope
Handle< PROD > getHandle(EDGetTokenT< PROD > token) const
AlCaGammaJetProducer(const edm::ParameterSet &)
edm::InputTag labelPhoton_
edm::InputTag labelGsfEle_
edm::EDPutTokenT< edm::SortedCollection< HBHERecHit, edm::StrictWeakOrdering< HBHERecHit > > > put_hbhe_
edm::EDGetTokenT< reco::VertexCollection > tok_Vertex_
double BeamWidthX() const
beam width X
edm::InputTag labelBeamSpot_
edm::EDPutTokenT< edm::SortedCollection< HORecHit, edm::StrictWeakOrdering< HORecHit > > > put_ho_
ParameterDescriptionBase * add(U const &iLabel, T const &value)
double dxdz() const
dxdz slope
edm::EDPutTokenT< edm::SortedCollection< HFRecHit, edm::StrictWeakOrdering< HFRecHit > > > put_hf_
edm::EDPutTokenT< reco::PFJetCollection > put_pfJet_
std::vector< reco::PFCandidate > PFCandidateCollection
collection of PFCandidates
edm::EDGetTokenT< edm::SortedCollection< HFRecHit, edm::StrictWeakOrdering< HFRecHit > > > tok_HF_
edm::EDGetTokenT< double > tok_Rho_
OrphanHandle< PROD > emplace(EDPutTokenT< PROD > token, Args &&...args)
puts a new product
edm::EDPutTokenT< std::vector< Bool_t > > put_loosePhot_
edm::EDGetTokenT< reco::PFJetCollection > tok_PFJet_
edm::EDPutTokenT< edm::TriggerResults > put_trigger_
edm::InputTag labelVertex_
edm::EDPutTokenT< reco::BeamSpot > put_beamSpot_
edm::EDPutTokenT< reco::VertexCollection > put_vertex_
std::vector< Photon > PhotonCollection
collectin of Photon objects
double sigmaZ() const
sigma z
T getParameter(std::string const &) const
void add(std::string const &label, ParameterSetDescription const &psetDescription)
edm::EDGetTokenT< reco::PFMETCollection > tok_PFMET_
edm::EDPutTokenT< reco::GsfElectronCollection > put_gsfEle_
edm::EDGetTokenT< reco::ConversionCollection > tok_Conv_
edm::EDPutTokenT< reco::PFCandidateCollection > put_pfCandidate_
edm::EDPutTokenT< reco::ConversionCollection > put_conv_
double covariance(int i, int j) const
(i,j)-th element of error matrix
edm::EDGetTokenT< edm::TriggerResults > tok_TrigRes_
std::vector< PFJet > PFJetCollection
collection of PFJet objects
std::vector< reco::PFMET > PFMETCollection
collection of PFMET objects
edm::EDGetTokenT< edm::SortedCollection< HORecHit, edm::StrictWeakOrdering< HORecHit > > > tok_HO_
edm::EDGetTokenT< reco::GsfElectronCollection > tok_GsfElec_
edm::InputTag labelTightPhot_
const Point & position() const
position
edm::EDGetTokenT< reco::PhotonCollection > tok_Photon_
edm::InputTag labelTrigger_
Log< level::Warning, false > LogWarning
edm::EDGetTokenT< edm::ValueMap< Bool_t > > tok_loosePhoton_
edm::EDGetTokenT< reco::PFCandidateCollection > tok_PFCand_
BeamType type() const
return beam type
edm::EDPutTokenT< reco::PFMETCollection > put_pfMET_