CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
LeafCandidate.cc
Go to the documentation of this file.
3 using namespace reco;
4 
6 
8  throw cms::Exception("Invalid Reference") << "this Candidate has no master clone reference."
9  << "Can't call masterClone() method.\n";
10 }
11 
12 bool LeafCandidate::hasMasterClone() const { return false; }
13 
14 bool LeafCandidate::hasMasterClonePtr() const { return false; }
15 
17  throw cms::Exception("Invalid Reference") << "this Candidate has no master clone ptr."
18  << "Can't call masterClonePtr() method.\n";
19 }
20 
21 size_t LeafCandidate::numberOfDaughters() const { return 0; }
22 
23 size_t LeafCandidate::numberOfMothers() const { return 0; }
24 
25 bool LeafCandidate::overlap(const Candidate& o) const {
26  return p4() == o.p4() && vertex() == o.vertex() && charge() == o.charge();
27 }
28 
29 const Candidate* LeafCandidate::daughter(size_type) const { return nullptr; }
30 
31 const Candidate* LeafCandidate::mother(size_type) const { return nullptr; }
32 
35  << "This Candidate type does not implement daughter(std::string). "
36  << "Please use CompositeCandidate or NamedCompositeCandidate.\n";
37 }
38 
41  << "This Candidate type does not implement daughter(std::string). "
42  << "Please use CompositeCandidate or NamedCompositeCandidate.\n";
43 }
44 
46 
47 double LeafCandidate::vertexChi2() const { return 0; }
48 
49 double LeafCandidate::vertexNdof() const { return 0; }
50 
51 double LeafCandidate::vertexNormalizedChi2() const { return 0; }
52 
53 double LeafCandidate::vertexCovariance(int i, int j) const {
55  << "reco::ConcreteCandidate does not implement vertex covariant matrix.\n";
56 }
57 
60  << "reco::ConcreteCandidate does not implement vertex covariant matrix.\n";
61 }
62 
63 bool LeafCandidate::isElectron() const { return false; }
64 
65 bool LeafCandidate::isMuon() const { return false; }
66 
67 bool LeafCandidate::isGlobalMuon() const { return false; }
68 
69 bool LeafCandidate::isStandAloneMuon() const { return false; }
70 
71 bool LeafCandidate::isTrackerMuon() const { return false; }
72 
73 bool LeafCandidate::isCaloMuon() const { return false; }
74 
75 bool LeafCandidate::isPhoton() const { return false; }
76 
77 bool LeafCandidate::isConvertedPhoton() const { return false; }
78 
79 bool LeafCandidate::isJet() const { return false; }
void fillVertexCovariance(CovarianceMatrix &v) const override
fill SMatrix
const CandidatePtr & masterClonePtr() const override
bool isCaloMuon() const override
double vertexNormalizedChi2() const override
chi-squared divided by n.d.o.f.
size_t size_type
Definition: Candidate.h:29
bool hasMasterClonePtr() const override
const Point & vertex() const override
vertex position (overwritten by PF...)
bool isMuon() const override
const LorentzVector & p4() const final
four-momentum Lorentz vector
const Candidate * daughter(size_type) const override
return daughter at a given position (throws an exception)
double vertexNdof() const override
bool isGlobalMuon() const override
bool isTrackerMuon() const override
const Candidate * mother(size_type) const override
return mother at a given position (throws an exception)
bool isJet() const override
virtual const Point & vertex() const =0
vertex position
virtual int charge() const =0
electric charge
bool isStandAloneMuon() const override
bool overlap(const Candidate &) const override
check overlap with another Candidate
bool isConvertedPhoton() const override
bool hasMasterClone() const override
CovarianceMatrix vertexCovariance() const final
return SMatrix
bool isPhoton() const override
~LeafCandidate() override
destructor
Definition: LeafCandidate.cc:5
double vertexChi2() const override
chi-squares
const CandidateBaseRef & masterClone() const override
Definition: LeafCandidate.cc:7
size_t numberOfDaughters() const override
number of daughters
size_t numberOfMothers() const override
number of mothers
int charge() const final
electric charge
bool isElectron() const override
virtual const LorentzVector & p4() const =0
four-momentum Lorentz vector