hpstr
The Heavy Photon Search Toolkit for Reconstruction (hpstr) provides an interface to physics data from the HPS experiment saved in the LCIO format and converts it into an ROOT based format.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Public Member Functions | Private Attributes | List of all members
MCParticle Class Reference

#include <MCParticle.h>

Inheritance diagram for MCParticle:

Public Member Functions

 MCParticle ()
 
 ~MCParticle ()
 
void Clear (Option_t *option="")
 
void addDaughter (MCParticle *particle)
 
TRefArray * getDaughters () const
 
void setCharge (const int charge)
 
void setPDG (const int pdg)
 
void setID (const int id)
 
void setMomPDG (const int momPDG)
 
void setGenStatus (const int gen)
 
void setSimStatus (const int sim)
 
void setEnergy (const double energy)
 
void setMass (const double mass)
 
void setTime (const double time)
 
void setMomentum (const double *momentum)
 
void setEndpointMomentum (const double *momentum_ep)
 
void setVertexPosition (const double *vtx_pos)
 
void setEndPoint (const double *ep_pos)
 
int getCharge () const
 
int getPDG () const
 
int getID () const
 
int getMomPDG () const
 
int getGenStatus () const
 
int getSimStatus () const
 
double getEnergy () const
 
double getMass () const
 
double getTime () const
 
std::vector< double > getMomentum () const
 
std::vector< double > getEndpointMomentum () const
 
std::vector< double > getVertexPosition () const
 
std::vector< double > getEndPoint () const
 
 ClassDef (MCParticle, 1)
 

Private Attributes

TRefArray * daughters_ {new TRefArray{}}
 
int id_ {-9999}
 
int n_daughters_ {0}
 
int charge_ {-9999}
 
int pdg_ {-9999}
 
int momPDG_ {-9999}
 
int gen_ {-9999}
 
int sim_ {-9999}
 
double px_ {-9999}
 
double py_ {-9999}
 
double pz_ {-9999}
 
double px_ep {-9999}
 
double py_ep {-9999}
 
double pz_ep {-9999}
 
double vtx_x_ {-9999}
 
double vtx_y_ {-9999}
 
double vtx_z_ {-9999}
 
double ep_x_ {-9999}
 
double ep_y_ {-9999}
 
double ep_z_ {-9999}
 
double energy_ {-9999}
 
double mass_ {-9999}
 
double time_ {-9999}
 

Detailed Description

Definition at line 19 of file MCParticle.h.

Constructor & Destructor Documentation

◆ MCParticle()

Default Constructor.

◆ ~MCParticle()

~MCParticle ( )

Destructor.

Definition at line 15 of file MCParticle.cxx.

Member Function Documentation

◆ addDaughter()

void addDaughter ( MCParticle particle)

Add a reference to an Particle object. This will be used to add daughter particles to this particle.

Parameters
particleDaughter particle composing this particle

Definition at line 26 of file MCParticle.cxx.

◆ ClassDef()

ClassDef ( MCParticle  ,
 
)

◆ Clear()

void Clear ( Option_t *  option = "")

Reset this MCParticle object

Definition at line 20 of file MCParticle.cxx.

◆ getCharge()

int getCharge ( ) const
inline
Returns
The particle charge.

Definition at line 144 of file MCParticle.h.

◆ getDaughters()

TRefArray * getDaughters ( ) const
inline

Get the daughter particles composing this particle.

Returns
An array of references to the daughter particles associated with this particle

Definition at line 46 of file MCParticle.h.

◆ getEndPoint()

std::vector< double > getEndPoint ( ) const
Returns
The vertex position of the particle.

Definition at line 63 of file MCParticle.cxx.

◆ getEndpointMomentum()

std::vector< double > getEndpointMomentum ( ) const
Returns
The endpoint momentum of the particle.

Definition at line 45 of file MCParticle.cxx.

◆ getEnergy()

double getEnergy ( ) const
inline
Returns
The particle energy in GeV.

Definition at line 162 of file MCParticle.h.

◆ getGenStatus()

int getGenStatus ( ) const
inline
Returns
The particle generator status.

Definition at line 156 of file MCParticle.h.

◆ getID()

int getID ( ) const
inline
Returns
The particle LCIO ID.

Definition at line 150 of file MCParticle.h.

◆ getMass()

double getMass ( ) const
inline
Returns
The invariant mass of the particle in GeV.

Definition at line 165 of file MCParticle.h.

◆ getMomentum()

std::vector< double > getMomentum ( ) const
Returns
The momentum of the particle.

Definition at line 43 of file MCParticle.cxx.

◆ getMomPDG()

int getMomPDG ( ) const
inline
Returns
The particle ID of the mother.

Definition at line 153 of file MCParticle.h.

◆ getPDG()

int getPDG ( ) const
inline
Returns
The particle PDG ID.

Definition at line 147 of file MCParticle.h.

◆ getSimStatus()

int getSimStatus ( ) const
inline
Returns
The particle simulator status.

Definition at line 159 of file MCParticle.h.

◆ getTime()

double getTime ( ) const
inline
Returns
The time of the particle

Definition at line 168 of file MCParticle.h.

◆ getVertexPosition()

std::vector< double > getVertexPosition ( ) const
Returns
The vertex position of the particle.

Definition at line 59 of file MCParticle.cxx.

◆ setCharge()

void setCharge ( const int  charge)
inline

Set the charge of the particle.

Parameters
charge_MCParticle charge

Definition at line 53 of file MCParticle.h.

◆ setEndPoint()

void setEndPoint ( const double *  ep_pos)

Set the end point of the particle.

Parameters
ep_posAn array containing the three endpoint components of the particle

Definition at line 53 of file MCParticle.cxx.

◆ setEndpointMomentum()

void setEndpointMomentum ( const double *  momentum_ep)

Set the endpoint momentum of the particle in GeV.

Parameters
momentum_epAn array containing the three momentum components of the particle.

Definition at line 37 of file MCParticle.cxx.

◆ setEnergy()

void setEnergy ( const double  energy)
inline

Set the energy of the particle in GeV.

Parameters
energyThe energy of this particle

Definition at line 95 of file MCParticle.h.

◆ setGenStatus()

void setGenStatus ( const int  gen)
inline

Set the generator status of the particle.

Parameters
gen_MCParticle generator status

Definition at line 81 of file MCParticle.h.

◆ setID()

void setID ( const int  id)
inline

Set the LCIO ID of this particle.

Parameters
idThe LCIO ID of this particle

Definition at line 67 of file MCParticle.h.

◆ setMass()

void setMass ( const double  mass)
inline

Set the invariant mass of the particle in GeV.

Parameters
massThe invariant mass of the particle

Definition at line 102 of file MCParticle.h.

◆ setMomentum()

void setMomentum ( const double *  momentum)

Set the momentum of the particle in GeV.

Parameters
momentumAn array containing the three momentum components of the particle.

Definition at line 31 of file MCParticle.cxx.

◆ setMomPDG()

void setMomPDG ( const int  momPDG)
inline

Set the PDG ID of the mother of this particle.

Parameters
momPDGThe PDG ID of the mother of this particle

Definition at line 74 of file MCParticle.h.

◆ setPDG()

void setPDG ( const int  pdg)
inline

Set the PDG ID of this particle.

Parameters
pdgThe PDG ID of this particle

Definition at line 60 of file MCParticle.h.

◆ setSimStatus()

void setSimStatus ( const int  sim)
inline

Set the generator status of the particle.

Parameters
sim_MCParticle generator status

Definition at line 88 of file MCParticle.h.

◆ setTime()

void setTime ( const double  time)
inline

Set the invariant mass of the particle in GeV.

Parameters
massThe invariant mass of the particle

Definition at line 109 of file MCParticle.h.

◆ setVertexPosition()

void setVertexPosition ( const double *  vtx_pos)

Set the vertex position of the particle.

Parameters
vtx_posAn array containing the three vertex position components of the particle

Definition at line 47 of file MCParticle.cxx.

Member Data Documentation

◆ charge_

int charge_ {-9999}
private

The charge of this particle

Definition at line 199 of file MCParticle.h.

◆ daughters_

TRefArray* daughters_ {new TRefArray{}}
private

An array of references to daughter particles associated with this particle

Definition at line 190 of file MCParticle.h.

◆ energy_

double energy_ {-9999}
private

The energy of the particle in GeV

Definition at line 250 of file MCParticle.h.

◆ ep_x_

double ep_x_ {-9999}
private

The x component of the end point of this particle in mm

Definition at line 241 of file MCParticle.h.

◆ ep_y_

double ep_y_ {-9999}
private

The y component of the end point of this particle in mm

Definition at line 244 of file MCParticle.h.

◆ ep_z_

double ep_z_ {-9999}
private

The z component of the end point of this particle in mm

Definition at line 247 of file MCParticle.h.

◆ gen_

int gen_ {-9999}
private

The generator status of the particle

Definition at line 208 of file MCParticle.h.

◆ id_

int id_ {-9999}
private

The LCIO ID of this particle

Definition at line 193 of file MCParticle.h.

◆ mass_

double mass_ {-9999}
private

The invariant mass of the particle in GeV

Definition at line 253 of file MCParticle.h.

◆ momPDG_

int momPDG_ {-9999}
private

The PDG ID of this particle

Definition at line 205 of file MCParticle.h.

◆ n_daughters_

int n_daughters_ {0}
private

The number of daughters associated with this particle

Definition at line 196 of file MCParticle.h.

◆ pdg_

int pdg_ {-9999}
private

The PDG ID of this particle

Definition at line 202 of file MCParticle.h.

◆ px_

double px_ {-9999}
private

The x component of the momentum of this particle in GeV

Definition at line 214 of file MCParticle.h.

◆ px_ep

double px_ep {-9999}
private

The x component of the momentum_ep of this particle in GeV

Definition at line 223 of file MCParticle.h.

◆ py_

double py_ {-9999}
private

The y component of the momentum of this particle in GeV

Definition at line 217 of file MCParticle.h.

◆ py_ep

double py_ep {-9999}
private

The y component of the momentum_ep of this particle in GeV

Definition at line 226 of file MCParticle.h.

◆ pz_

double pz_ {-9999}
private

The z component of the momentum of this particle in GeV

Definition at line 220 of file MCParticle.h.

◆ pz_ep

double pz_ep {-9999}
private

The z component of the momentum_ep of this particle in GeV

Definition at line 229 of file MCParticle.h.

◆ sim_

int sim_ {-9999}
private

The generator status of the particle

Definition at line 211 of file MCParticle.h.

◆ time_

double time_ {-9999}
private

The time of the particle

Definition at line 256 of file MCParticle.h.

◆ vtx_x_

double vtx_x_ {-9999}
private

The x component of the vertex of this particle in mm

Definition at line 232 of file MCParticle.h.

◆ vtx_y_

double vtx_y_ {-9999}
private

The y component of the vertex of this particle in mm

Definition at line 235 of file MCParticle.h.

◆ vtx_z_

double vtx_z_ {-9999}
private

The z component of the vertex of this particle in mm

Definition at line 238 of file MCParticle.h.


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