CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
GenParticle.h
Go to the documentation of this file.
1 #ifndef HepMCCandidate_GenParticle_h
2 #define HepMCCandidate_GenParticle_h
3 
12 #include <vector>
13 
14 namespace HepMC {
15  class GenParticle;
16 }
17 
18 namespace reco {
19 
20  class GenParticle : public CompositeRefCandidateT<GenParticleRefVector> {
21  public:
28  GenParticle(Charge q, const LorentzVector & p4, const Point & vtx,
29  int pdgId, int status, bool integerCharge);
31  GenParticle(Charge q, const PolarLorentzVector & p4, const Point & vtx,
32  int pdgId, int status, bool integerCharge);
34  virtual ~GenParticle();
36  GenParticle * clone() const;
37  void setCollisionId(int s) {collisionId_ = s;}
38  int collisionId() const {return collisionId_;}
39 
40  private:
42  bool overlap(const Candidate &) const;
44  };
45 
46 }
47 
48 #endif
virtual int pdgId() const
PDG identifier.
void setCollisionId(int s)
Definition: GenParticle.h:37
virtual int status() const
status word
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: LeafCandidate.h:30
int collisionId() const
Definition: GenParticle.h:38
GenParticle()
default constructor
Definition: GenParticle.h:23
bool overlap(const Candidate &) const
checp overlap with another candidate
math::XYZPoint Point
GenParticle * clone() const
return a clone
GenParticle(const LeafCandidate &c)
default constructor
Definition: GenParticle.h:25
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< float > > LorentzVector
Definition: analysisEnums.h:9
virtual const LorentzVector & p4() const
four-momentum Lorentz vector
int Charge
electric charge type
Definition: LeafCandidate.h:26
virtual ~GenParticle()
destructor