Go to the documentation of this file. 1 #ifndef Candidate_CompositeRefCandidateT_h
2 #define Candidate_CompositeRefCandidateT_h
33 bool integerCharge =
true)
41 bool integerCharge =
true)
55 using ::reco::LeafCandidate::daughter;
102 template <
typename D>
105 template <
typename D>
110 template <
typename D>
115 template <
typename D>
120 template <
typename D>
125 template <
typename D>
130 template <
typename D>
135 template <
typename D>
137 throw cms::Exception(
"Error") <<
"can't check overlap internally for CompositeRefCanddate";
D daughters
collection of references to daughters
size_t numberOfDaughters() const override
number of daughters
math::XYZPoint Point
point in the space
CompositeRefCandidateT(Charge q, const PolarLorentzVector &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
constructor from values
int status() const final
status word
daughters::value_type daughterRef(size_type i) const
reference to daughter at given position
const Candidate * mother(size_type=0) const override
return mother at a given position, i = 0, ... numberOfMothers() - 1 (read only mode)
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
void addMother(const typename mothers::value_type &)
add a daughter via a reference
D mothers
collection of references to daughters
int Charge
electric charge type
size_t numberOfMothers() const override
number of mothers
const mothers & motherRefVector() const
references to mothers
daughters dau
collection of references to daughters
#define CMS_CLASS_VERSION(_version_)
~CompositeRefCandidateT() override
destructor
void clearMothers()
clear mother references
Structure Point Contains parameters of Gaussian fits to DMRs.
void resetDaughters(const edm::ProductID &id)
set daughters product ID
int pdgId() const final
PDG identifier.
const LorentzVector & p4() const final
four-momentum Lorentz vector
Container::value_type value_type
def template(fileName, svg, replaceme="REPLACEME")
void resetMothers(const edm::ProductID &id)
set mother product ID
bool overlap(const Candidate &) const override
check overlap with another candidate
DecomposeProduct< arg, typename Div::arg > D
CompositeRefCandidateT< D > * clone() const override
returns a clone of the candidate
CompositeRefCandidateT(Charge q, const LorentzVector &p4, const Point &vtx=Point(0, 0, 0), int pdgId=0, int status=0, bool integerCharge=true)
constructor from values
const daughters & daughterRefVector() const
references to daughtes
daughters::value_type motherRef(size_type i=0) const
reference to mother at given position
void clearDaughters()
clear daughter references
Candidate()
default constructor
const Candidate * daughter(size_type) const override
return daughter at a given position, i = 0, ... numberOfDaughters() - 1 (read only mode)
void addDaughter(const typename daughters::value_type &)
add a daughter via a reference
daughters mom
collection of references to mothers
math::XYZTLorentzVector LorentzVector
Lorentz vector.
CompositeRefCandidateT()
default constructor
CompositeRefCandidateT(const LeafCandidate &c)
constructor from a particle