58 typedef std::vector<reco::CandidatePtr>
CandPtrs;
59 typedef CandPtrs::const_iterator
CandIter;
64 if (pfGammaCands.size() <
choose_)
65 return output.release();
68 CandIter start_iter = pfGammaCands.begin();
69 CandIter end_iter = pfGammaCands.end();
79 for (ComboGenerator::iterator combo = generator.begin(); combo != generator.end(); ++combo) {
81 std::unique_ptr<RecoTauPiZero> piZero(
84 for (ComboGenerator::combo_iterator candidate = combo->combo_begin(); candidate != combo->combo_end();
86 piZero->addDaughter(*candidate);
90 if (piZero->daughterPtr(0).isNonnull())
91 piZero->setVertex(piZero->daughterPtr(0)->vertex());
94 output.push_back(piZero.get());
96 return output.release();
105 "RecoTauPiZeroCombinatoricPlugin");
T getParameter(std::string const &) const
InputIterator takeNElements(const InputIterator &begin, const InputIterator &end, size_t N)
RecoTauPiZeroCombinatoricPlugin(const edm::ParameterSet &pset, edm::ConsumesCollector &&iC)
return_type operator()(const reco::Jet &jet) const override
Build a collection of piZeros from objects in the input jet.
Coll filterCandRefs(const Coll &refcoll, bool invert=false) const
Filter a ref vector of Candidates.
Base class for all types of Jets.
ParameterSet const & getParameterSet(ParameterSetID const &id)
~RecoTauPiZeroCombinatoricPlugin() override
std::vector< reco::CandidatePtr > CandPtrs
unsigned int maxInputGammas_
RecoTauQualityCuts qcuts_
math::XYZTLorentzVector LorentzVector
Lorentz vector.
AddFourMomenta p4Builder_
boost::ptr_vector< RecoTauPiZero > PiZeroVector
math::XYZPoint Point
point in the space
#define DEFINE_EDM_PLUGIN(factory, type, name)
void set(reco::Candidate &c) const
set up a candidate
CandPtrs::iterator CandIter
std::vector< CandidatePtr > pfGammas(const Jet &jet, bool sort=true)
Extract all pfGammas from a PFJet.
std::unique_ptr< PiZeroVector > return_type