26 for (
size_type iCand = 0; iCand < nNeutral; ++iCand) {
47 std::vector<const Candidate*>
output;
48 for (
size_type iterCand = 0; iterCand < numberOfChargedPions; ++iterCand)
55 std::vector<const Candidate*>
output;
56 for (
size_type iterCand = 0; iterCand < numberOfChargedPions; ++iterCand)
65 output.insert(
output.end(), neutralObjects.begin(), neutralObjects.end());
71 std::vector<const Candidate*>
output;
72 for (
size_t iFilteredCand = 0; iFilteredCand < numberOfFilteredObjects; ++iFilteredCand) {
74 if (absCharge < 0 ||
abs(myCand->
charge()) == absCharge)
89 if (
input->numberOfDaughters() == 0)
91 if (
input->hasMasterClone())
97 <<
"Error in pfMasterClones(...) - found a leaf candidate with no Master clone reference!";
111 if (
input->numberOfDaughters())
119 if (
input->numberOfDaughters())
127 if (
input->numberOfDaughters())
const Candidate * daughter(size_type) const override
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode) ...
std::vector< const Candidate * > filteredObjectCandidates(int absCharge=-2) const
returns pointers to filtered objects (i.e. those not included in signal objects)
CompositeCandidate piZeroes_
std::vector< const Candidate * > neutralPionCandidates() const
returns pointers to neutral pions
const VertexCompositeCandidate & chargedPions() const
returns collection of charged pions w/ vertex information (tracks are refit)
const CompositeCandidate & neutralPions() const
returns a collection of merged Pi0s
std::vector< const Candidate * > chargedFilteredObjectCandidates() const
returns only charged filtered objects
Log< level::Error, false > LogError
const LorentzVector & p4() const final
four-momentum Lorentz vector
static std::string const input
void setCharge(Charge q) final
set electric charge
static const unsigned char maxNumberOfPiZeroCandidatesAllowed
Abs< T >::type abs(const T &t)
void pfMasterClones(const Candidate *input, PFCandidateRefVector &toFill) const
fills master clones to PF objects (utility function)
PFCandidateRefVector associatedNeutralPFCandidates() const
returns the PFCandidates associated to the PiZero signal objects (i.e., the unmerged photons) ...
virtual int charge() const =0
electric charge
std::vector< const Candidate * > decayProductCandidates() const
returns pointers to non-filtered objects
void addDaughter(const Candidate &, const std::string &s="")
add a clone of the passed candidate as daughter
CompositeCandidate filteredObjects_
PFCandidateRefVector associatedChargedPFCandidates() const
returns the PFCandidates associated to the charged signal objects
size_type numberOfDaughters() const override
number of daughters
PFTauDecayMode * clone() const override
returns a clone of the candidate
const CompositeCandidate & filteredObjects() const
returns references to PF objects that were filtered
std::vector< const Candidate * > neutralFilteredObjectCandidates() const
returns only netural filtered objects
void push_back(value_type const &ref)
Add a Ref<C, T> to the RefVector.
VertexCompositeCandidate chargedPions_
void setStatus(int status) final
set status word
void setDecayMode(hadronicTauDecayModes theDecayMode)
void setPdgId(int pdgId) final
void setP4(const LorentzVector &p4) final
set 4-momentum
PFCandidateRefVector filteredPFCandidates() const
returns the PFCandidates that were filtered
int charge() const final
electric charge
std::vector< const Candidate * > chargedPionCandidates() const
returns pointers to charged pions