CMS 3D CMS Logo

LeafCandidate.cc
Go to the documentation of this file.
3 using namespace reco;
4 
6 
8  throw cms::Exception("Invalid Reference")
9  << "this Candidate has no master clone reference."
10  << "Can't call masterClone() method.\n";
11 }
12 
14  return false;
15 }
16 
18  return false;
19 }
20 
21 
23  throw cms::Exception("Invalid Reference")
24  << "this Candidate has no master clone ptr."
25  << "Can't call masterClonePtr() method.\n";
26 }
27 
29  return 0;
30 }
31 
33  return 0;
34 }
35 
36 bool LeafCandidate::overlap( const Candidate & o ) const {
37  return p4() == o.p4() && vertex() == o.vertex() && charge() == o.charge();
38 }
39 
41  return nullptr;
42 }
43 
45  return nullptr;
46 }
47 
50  << "This Candidate type does not implement daughter(std::string). "
51  << "Please use CompositeCandidate or NamedCompositeCandidate.\n";
52 }
53 
56  << "This Candidate type does not implement daughter(std::string). "
57  << "Please use CompositeCandidate or NamedCompositeCandidate.\n";
58 }
59 
60 
61 
63  return nullptr;
64 }
65 
66 double LeafCandidate::vertexChi2() const {
67  return 0;
68 }
69 
70 double LeafCandidate::vertexNdof() const {
71  return 0;
72 }
73 
75  return 0;
76 }
77 
78 double LeafCandidate::vertexCovariance(int i, int j) const {
80  << "reco::ConcreteCandidate does not implement vertex covariant matrix.\n";
81 }
82 
85  << "reco::ConcreteCandidate does not implement vertex covariant matrix.\n";
86 }
87 
88 bool LeafCandidate::isElectron() const { return false; }
89 
90 bool LeafCandidate::isMuon() const { return false; }
91 
92 bool LeafCandidate::isGlobalMuon() const { return false; }
93 
94 bool LeafCandidate::isStandAloneMuon() const { return false; }
95 
96 bool LeafCandidate::isTrackerMuon() const { return false; }
97 
98 bool LeafCandidate::isCaloMuon() const { return false; }
99 
100 bool LeafCandidate::isPhoton() const { return false; }
101 
102 bool LeafCandidate::isConvertedPhoton() const { return false; }
103 
104 bool LeafCandidate::isJet() const { return false; }
bool isElectron() const override
bool isMuon() const override
size_t size_type
Definition: Candidate.h:30
bool isTrackerMuon() const override
const CandidatePtr & masterClonePtr() const override
double vertexNdof() const override
const Candidate * mother(size_type) const override
return mother at a given position (throws an exception)
int charge() const final
electric charge
Definition: LeafCandidate.h:91
bool isJet() const override
bool isStandAloneMuon() const override
bool isCaloMuon() const override
double vertexNormalizedChi2() const override
chi-squared divided by n.d.o.f.
bool hasMasterClonePtr() const override
CovarianceMatrix vertexCovariance() const final
return SMatrix
virtual const LorentzVector & p4() const =0
four-momentum Lorentz vector
bool isConvertedPhoton() const override
const Point & vertex() const override
vertex position (overwritten by PF...)
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:99
size_t numberOfDaughters() const override
number of daughters
size_t numberOfMothers() const override
number of mothers
const Candidate * daughter(size_type) const override
return daughter at a given position (throws an exception)
const CandidateBaseRef & masterClone() const override
Definition: LeafCandidate.cc:7
void fillVertexCovariance(CovarianceMatrix &v) const override
fill SMatrix
virtual int charge() const =0
electric charge
~LeafCandidate() override
destructor
Definition: LeafCandidate.cc:5
bool isPhoton() const override
fixed size matrix
double vertexChi2() const override
chi-squares
bool hasMasterClone() const override
bool overlap(const Candidate &) const override
check overlap with another Candidate
virtual const Point & vertex() const =0
vertex position
bool isGlobalMuon() const override