26 namespace reco {
namespace tau {
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();
80 combo != generator.end(); ++combo) {
82 std::unique_ptr<RecoTauPiZero> piZero(
86 for (ComboGenerator::combo_iterator candidate = combo->combo_begin();
87 candidate != combo->combo_end(); ++candidate) {
88 piZero->addDaughter(*candidate);
92 if (piZero->daughterPtr(0).isNonnull())
93 piZero->setVertex(piZero->daughterPtr(0)->vertex());
97 output.push_back(piZero.get());
99 return output.release();
107 "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.
std::auto_ptr< PiZeroVector > return_type
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.