HepMC3 event record library
Public Member Functions | Private Member Functions | Private Attributes
PhotosHepMC3Particle Class Reference
+ Inheritance diagram for PhotosHepMC3Particle:
+ Collaboration diagram for PhotosHepMC3Particle:

Public Member Functions

 PhotosHepMC3Particle ()
 
 PhotosHepMC3Particle (GenParticlePtr particle)
 
 PhotosHepMC3Particle (int pdg_id, int status, double mass)
 
 ~PhotosHepMC3Particle ()
 
GenParticlePtr getHepMC3 ()
 
void setMothers (std::vector< PhotosParticle * > mothers)
 
void setDaughters (std::vector< PhotosParticle * > daughters)
 
void addDaughter (PhotosParticle *daughter)
 
std::vector< PhotosParticle * > getMothers ()
 
std::vector< PhotosParticle * > getDaughters ()
 
std::vector< PhotosParticle * > getAllDecayProducts ()
 
void setPdgID (int pdg_id)
 
void setStatus (int statu)
 
void setMass (double mass)
 
int getPdgID ()
 
int getStatus ()
 
int getBarcode ()
 
bool checkMomentumConservation ()
 
PhotosHepMC3ParticlecreateNewParticle (int pdg_id, int status, double mass, double px, double py, double pz, double e)
 
void createHistoryEntry ()
 
void createSelfDecayVertex (PhotosParticle *out)
 
void print ()
 
double getPx ()
 
double getPy ()
 
double getPz ()
 
double getE ()
 
double getMass ()
 
void setPx (double px)
 
void setPy (double py)
 
void setPz (double pz)
 
void setE (double e)
 

Private Member Functions

void clear (std::vector< PhotosParticle * > v)
 

Private Attributes

GenParticlePtr m_particle
 
std::vector< PhotosParticle * > m_mothers
 
std::vector< PhotosParticle * > m_daughters
 
std::vector< PhotosParticle * > m_decay_products
 
std::vector< PhotosParticle * > m_created_particles
 

Detailed Description

Definition at line 34 of file PhotosHepMC3Particle.h.

Constructor & Destructor Documentation

◆ PhotosHepMC3Particle() [1/3]

General constructor

◆ PhotosHepMC3Particle() [2/3]

PhotosHepMC3Particle ( GenParticlePtr  particle)

Constructor which keeps a pointer to the GenParticle

◆ PhotosHepMC3Particle() [3/3]

PhotosHepMC3Particle ( int  pdg_id,
int  status,
double  mass 
)

Constructor which creates a new GenParticle and sets the properties pdg_id, statu and mass.

◆ ~PhotosHepMC3Particle()

Destructor

Member Function Documentation

◆ addDaughter()

void addDaughter ( PhotosParticle *  daughter)

Add a new daughter to the end vertex of this particle

◆ checkMomentumConservation()

bool checkMomentumConservation ( )

check that the 4 momentum in conserved at the vertices producing and ending this particle

◆ clear()

void clear ( std::vector< PhotosParticle * >  v)
private

Internal function used to clear particles from the vector

◆ createHistoryEntry()

void createHistoryEntry ( )

Create history entry for HepMC event record. Creates copy of this particle with status = 3

◆ createNewParticle()

PhotosHepMC3Particle* createNewParticle ( int  pdg_id,
int  status,
double  mass,
double  px,
double  py,
double  pz,
double  e 
)

Create a new particle of type PhotosHepMC3Particle, with the given properties. The new particle bares no relations to this particle, but it provides a way of creating a instance of this derived class. eg. createNewParticle() is used inside filhep_() so that a PhotosHepMC3Particle can be created without the method having explicit knowledge of the PhotosHepMC3Particle class

◆ createSelfDecayVertex()

void createSelfDecayVertex ( PhotosParticle *  out)

Create a self-decay vertex for this particle with 'out' being the outgoing particle in new vertex

◆ getAllDecayProducts()

std::vector<PhotosParticle*> getAllDecayProducts ( )

Returns all particles in the decay tree of this particle via a vector of PhotosParticle

◆ getBarcode()

int getBarcode ( )

Get the barcode of this particle

◆ getDaughters()

std::vector<PhotosParticle*> getDaughters ( )

Returns the daughters of this particle via a vector of PhotosParticle IMPORTANT: this method will remeber list from the first call. Particles (e.g. photons) added later will be ignored

◆ getE()

double getE ( )

Returns the energy component of the four vector

◆ getHepMC3()

GenParticlePtr getHepMC3 ( )

return the GenParticlePtr

◆ getMass()

double getMass ( )

Returns the mass taken from event record

◆ getMothers()

std::vector<PhotosParticle*> getMothers ( )

Returns the mothers of this particle via a vector of PhotosParticle

◆ getPdgID()

int getPdgID ( )

Get the PDG ID code of this particle

◆ getPx()

double getPx ( )

Returns the px component of the four vector

◆ getPy()

double getPy ( )

Returns the py component of the four vector

◆ getPz()

double getPz ( )

Returns the pz component of the four vector

◆ getStatus()

int getStatus ( )

Get the status of this particle

◆ print()

void print ( )

Print some information about this particle to standard output

◆ setDaughters()

void setDaughters ( std::vector< PhotosParticle * >  daughters)

Set the daughters of this particle via a vector of PhotosParticle

◆ setE()

void setE ( double  e)

Set the energy component of the four vector

◆ setMass()

void setMass ( double  mass)

Set the mass of this particle

◆ setMothers()

void setMothers ( std::vector< PhotosParticle * >  mothers)

Set the mothers of this particle via a vector of PhotosParticle

◆ setPdgID()

void setPdgID ( int  pdg_id)

Set the PDG ID code of this particle

◆ setPx()

void setPx ( double  px)

Set the px component of the four vector

◆ setPy()

void setPy ( double  py)

Set the px component of the four vector

◆ setPz()

void setPz ( double  pz)

Set the pz component of the four vector

◆ setStatus()

void setStatus ( int  statu)

Set the status of this particle

Field Documentation

◆ m_created_particles

std::vector<PhotosParticle*> m_created_particles
private

list to keep track of new particles which have been created from this one, so we can call their destructor later

Definition at line 163 of file PhotosHepMC3Particle.h.

◆ m_daughters

std::vector<PhotosParticle*> m_daughters
private

A vector of this particles daughters

Definition at line 156 of file PhotosHepMC3Particle.h.

◆ m_decay_products

std::vector<PhotosParticle*> m_decay_products
private

A vector of all decay products of this particle

Definition at line 159 of file PhotosHepMC3Particle.h.

◆ m_mothers

std::vector<PhotosParticle*> m_mothers
private

A vector of this particles mothers

Definition at line 153 of file PhotosHepMC3Particle.h.

◆ m_particle

GenParticlePtr m_particle
private

A pointer to the GenParticle particle

Definition at line 150 of file PhotosHepMC3Particle.h.


The documentation for this class was generated from the following file: