CMS 3D CMS Logo

ShallowClonePtrCandidate.h
Go to the documentation of this file.
1 #ifndef Candidate_ShallowClonePtrCandidate_h
2 #define Candidate_ShallowClonePtrCandidate_h
3 
13 
14 namespace reco {
16  public:
26  Charge q,
27  const LorentzVector& p4,
28  const Point& vtx = Point(0, 0, 0))
32  Charge q,
33  const PolarLorentzVector& p4,
34  const Point& vtx = Point(0, 0, 0))
37  ~ShallowClonePtrCandidate() override;
39  ShallowClonePtrCandidate* clone() const override;
41  size_t numberOfDaughters() const override;
43  size_t numberOfMothers() const override;
45  const Candidate* daughter(size_type i) const override;
47  const Candidate* mother(size_type i) const override;
49  Candidate* daughter(size_type i) override;
50  using reco::LeafCandidate::daughter; // avoid hiding the base
52  bool hasMasterClonePtr() const override;
54  const CandidatePtr& masterClonePtr() const override;
55 
56  bool isElectron() const override;
57  bool isMuon() const override;
58  bool isGlobalMuon() const override;
59  bool isStandAloneMuon() const override;
60  bool isTrackerMuon() const override;
61  bool isCaloMuon() const override;
62  bool isPhoton() const override;
63  bool isConvertedPhoton() const override;
64  bool isJet() const override;
65 
66  private:
68  bool overlap(const Candidate& c) const override { return masterClone_->overlap(c); }
71  };
72 
73 } // namespace reco
74 
75 #endif
mps_fire.i
i
Definition: mps_fire.py:355
reco::ShallowClonePtrCandidate::hasMasterClonePtr
bool hasMasterClonePtr() const override
has master clone pointer
Definition: ShallowClonePtrCandidate.cc:18
reco::ShallowClonePtrCandidate::isCaloMuon
bool isCaloMuon() const override
Definition: ShallowClonePtrCandidate.cc:32
reco::LeafCandidate::Point
math::XYZPoint Point
point in the space
Definition: LeafCandidate.h:27
reco::ShallowClonePtrCandidate::ShallowClonePtrCandidate
ShallowClonePtrCandidate(const CandidatePtr &masterClone, Charge q, const LorentzVector &p4, const Point &vtx=Point(0, 0, 0))
constructor from values
Definition: ShallowClonePtrCandidate.h:25
reco::ShallowClonePtrCandidate::isGlobalMuon
bool isGlobalMuon() const override
Definition: ShallowClonePtrCandidate.cc:26
reco::Candidate::PolarLorentzVector
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: Candidate.h:38
data-class-funcs.q
q
Definition: data-class-funcs.py:169
reco::Candidate::Charge
int Charge
electric charge type
Definition: Candidate.h:34
reco::ShallowClonePtrCandidate::mother
const Candidate * mother(size_type i) const override
return mother at a given position (throws an exception)
Definition: ShallowClonePtrCandidate.cc:14
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
reco::ShallowClonePtrCandidate::isTrackerMuon
bool isTrackerMuon() const override
Definition: ShallowClonePtrCandidate.cc:30
reco::ShallowClonePtrCandidate::numberOfDaughters
size_t numberOfDaughters() const override
number of daughters
Definition: ShallowClonePtrCandidate.cc:8
LeafCandidate.h
badGlobalMuonTaggersAOD_cff.vtx
vtx
Definition: badGlobalMuonTaggersAOD_cff.py:5
Point
Structure Point Contains parameters of Gaussian fits to DMRs.
Definition: DMRtrends.cc:57
reco::ShallowClonePtrCandidate::~ShallowClonePtrCandidate
~ShallowClonePtrCandidate() override
destructor
Definition: ShallowClonePtrCandidate.cc:4
reco::ShallowClonePtrCandidate::overlap
bool overlap(const Candidate &c) const override
check overlap with another Candidate
Definition: ShallowClonePtrCandidate.h:68
reco::LeafCandidate::daughter
const Candidate * daughter(size_type) const override
return daughter at a given position (throws an exception)
Definition: LeafCandidate.cc:29
reco::ShallowClonePtrCandidate::ShallowClonePtrCandidate
ShallowClonePtrCandidate(const CandidatePtr &masterClone, Charge q, const PolarLorentzVector &p4, const Point &vtx=Point(0, 0, 0))
constructor from values
Definition: ShallowClonePtrCandidate.h:31
reco::LeafCandidate::p4
const LorentzVector & p4() const final
four-momentum Lorentz vector
Definition: LeafCandidate.h:114
reco::ShallowClonePtrCandidate::ShallowClonePtrCandidate
ShallowClonePtrCandidate(const CandidatePtr &masterClone)
constructor from Particle
Definition: ShallowClonePtrCandidate.h:22
reco::ShallowClonePtrCandidate::isElectron
bool isElectron() const override
Definition: ShallowClonePtrCandidate.cc:22
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
reco::ShallowClonePtrCandidate::isMuon
bool isMuon() const override
Definition: ShallowClonePtrCandidate.cc:24
reco::ShallowClonePtrCandidate::daughters
CandidateCollection daughters
collection of daughter candidates
Definition: ShallowClonePtrCandidate.h:18
edm::Ptr< Candidate >
reco::Candidate
Definition: Candidate.h:27
reco::LeafCandidate::masterClone
const CandidateBaseRef & masterClone() const override
Definition: LeafCandidate.cc:7
reco::ShallowClonePtrCandidate::isConvertedPhoton
bool isConvertedPhoton() const override
Definition: ShallowClonePtrCandidate.cc:36
reco::ShallowClonePtrCandidate::isJet
bool isJet() const override
Definition: ShallowClonePtrCandidate.cc:38
reco::ShallowClonePtrCandidate::daughter
const Candidate * daughter(size_type i) const override
return daughter at a given position (throws an exception)
Definition: ShallowClonePtrCandidate.cc:12
reco::ShallowClonePtrCandidate::masterClone_
CandidatePtr masterClone_
CandidatePtrerence to master clone.
Definition: ShallowClonePtrCandidate.h:70
reco::ShallowClonePtrCandidate::clone
ShallowClonePtrCandidate * clone() const override
returns a clone of the Candidate object
Definition: ShallowClonePtrCandidate.cc:6
reco::ShallowClonePtrCandidate::isPhoton
bool isPhoton() const override
Definition: ShallowClonePtrCandidate.cc:34
reco::LeafCandidate
Definition: LeafCandidate.h:16
reco::ShallowClonePtrCandidate
Definition: ShallowClonePtrCandidate.h:15
reco::Candidate::LorentzVector
math::XYZTLorentzVector LorentzVector
Lorentz vector.
Definition: Candidate.h:36
reco::ShallowClonePtrCandidate::masterClonePtr
const CandidatePtr & masterClonePtr() const override
returns reference to master clone pointer
Definition: ShallowClonePtrCandidate.cc:20
reco::ShallowClonePtrCandidate::ShallowClonePtrCandidate
ShallowClonePtrCandidate()
default constructor
Definition: ShallowClonePtrCandidate.h:20
reco::ShallowClonePtrCandidate::isStandAloneMuon
bool isStandAloneMuon() const override
Definition: ShallowClonePtrCandidate.cc:28
reco::Candidate::size_type
size_t size_type
Definition: Candidate.h:29
edm::OwnVector
Definition: OwnVector.h:24
reco::ShallowClonePtrCandidate::numberOfMothers
size_t numberOfMothers() const override
number of mothers
Definition: ShallowClonePtrCandidate.cc:10