DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Public Types | Public Member Functions | Public Attributes | List of all members
dd4hep::sim::Geant4Particle Class Reference

Data structure to store the MC particle information. More...

#include <Geant4Particle.h>

Public Types

typedef std::set< int > Particles
 

Public Member Functions

 Geant4Particle ()
 not persistent More...
 
 Geant4Particle (int part_id)
 Constructor with ID initialization. More...
 
 Geant4Particle (const Geant4Particle &copy)=delete
 NO copy constructor. More...
 
virtual ~Geant4Particle ()
 Default destructor. More...
 
Geant4Particleoperator= (const Geant4Particle &copy)=delete
 NO assignment operation. More...
 
Geant4ParticleaddRef ()
 Increase reference count. More...
 
void release ()
 Decrease reference count. Deletes object if NULL. More...
 
Geant4Particleget_data (Geant4Particle &c)
 Assignment operator. More...
 
void removeDaughter (int id_daughter)
 Remove daughter from set. More...
 
int charge3 () const
 Charge accessor (for python etc.) More...
 

Public Attributes

int ref { 0 }
 Reference counter. More...
 
int id { 0 }
 not persistent More...
 
int originalG4ID { 0 }
 
int g4Parent { 0 }
 not persistent More...
 
int reason { 0 }
 
int mask { 0 }
 
int steps { 0 }
 
int secondaries { 0 }
 
int pdgID { 0 }
 
int status { 0 }
 
int colorFlow [2] { 0, 0 }
 
unsigned short genStatus { 0 }
 
char charge { 0 }
 
char _spare [1] { 0 }
 
float spin [3] { 0E0,0E0,0E0 }
 
double vsx = 0E0
 The starting vertex. More...
 
double vsy = 0E0
 
double vsz = 0E0
 
double vex = 0E0
 The end vertex. More...
 
double vey = 0E0
 
double vez = 0E0
 
double psx = 0E0
 The track momentum at the start vertex. More...
 
double psy = 0E0
 
double psz = 0E0
 
double pex = 0E0
 The track momentum at the end vertex. More...
 
double pey = 0E0
 
double pez = 0E0
 
double mass { 0E0 }
 Particle mass. More...
 
double time { 0E0 }
 Particle creation time. More...
 
double properTime { 0E0 }
 Proper time. More...
 
Particles parents
 The list of parents of this MC particle. More...
 
Particles daughters
 The list of daughters of this MC particle. More...
 
std::unique_ptr< ParticleExtensionextension { }
 User data extension if required. More...
 
const G4VProcess * process = 0
 Reference to the G4VProcess, which created this track. More...
 

Detailed Description

Data structure to store the MC particle information.

Author
M.Frank
Version
1.0

Definition at line 103 of file Geant4Particle.h.

Member Typedef Documentation

◆ Particles

Definition at line 105 of file Geant4Particle.h.

Constructor & Destructor Documentation

◆ Geant4Particle() [1/3]

Geant4Particle::Geant4Particle ( )

not persistent

Default constructor.

Default constructor

Definition at line 42 of file Geant4Particle.cpp.

◆ Geant4Particle() [2/3]

Geant4Particle::Geant4Particle ( int  part_id)

Constructor with ID initialization.

Definition at line 48 of file Geant4Particle.cpp.

◆ Geant4Particle() [3/3]

dd4hep::sim::Geant4Particle::Geant4Particle ( const Geant4Particle copy)
delete

NO copy constructor.

◆ ~Geant4Particle()

Geant4Particle::~Geant4Particle ( )
virtual

Default destructor.

Definition at line 54 of file Geant4Particle.cpp.

Member Function Documentation

◆ addRef()

Geant4Particle* dd4hep::sim::Geant4Particle::addRef ( )
inline

Increase reference count.

Definition at line 159 of file Geant4Particle.h.

◆ charge3()

int dd4hep::sim::Geant4Particle::charge3 ( ) const
inline

Charge accessor (for python etc.)

Definition at line 170 of file Geant4Particle.h.

◆ get_data()

Geant4Particle & Geant4Particle::get_data ( Geant4Particle c)

Assignment operator.

Definition at line 67 of file Geant4Particle.cpp.

◆ operator=()

Geant4Particle& dd4hep::sim::Geant4Particle::operator= ( const Geant4Particle copy)
delete

NO assignment operation.

◆ release()

void Geant4Particle::release ( )

Decrease reference count. Deletes object if NULL.

Definition at line 59 of file Geant4Particle.cpp.

◆ removeDaughter()

void Geant4Particle::removeDaughter ( int  id_daughter)

Remove daughter from set.

Definition at line 110 of file Geant4Particle.cpp.

Member Data Documentation

◆ _spare

char dd4hep::sim::Geant4Particle::_spare[1] { 0 }

Definition at line 120 of file Geant4Particle.h.

◆ charge

char dd4hep::sim::Geant4Particle::charge { 0 }

Definition at line 119 of file Geant4Particle.h.

◆ colorFlow

int dd4hep::sim::Geant4Particle::colorFlow[2] { 0, 0 }

Definition at line 117 of file Geant4Particle.h.

◆ daughters

Particles dd4hep::sim::Geant4Particle::daughters

The list of daughters of this MC particle.

Definition at line 140 of file Geant4Particle.h.

◆ extension

std::unique_ptr<ParticleExtension> dd4hep::sim::Geant4Particle::extension { }

User data extension if required.

Definition at line 143 of file Geant4Particle.h.

◆ g4Parent

int dd4hep::sim::Geant4Particle::g4Parent { 0 }

not persistent

Definition at line 110 of file Geant4Particle.h.

◆ genStatus

unsigned short dd4hep::sim::Geant4Particle::genStatus { 0 }

Definition at line 118 of file Geant4Particle.h.

◆ id

int dd4hep::sim::Geant4Particle::id { 0 }

not persistent

Definition at line 108 of file Geant4Particle.h.

◆ mask

int dd4hep::sim::Geant4Particle::mask { 0 }

Definition at line 112 of file Geant4Particle.h.

◆ mass

double dd4hep::sim::Geant4Particle::mass { 0E0 }

Particle mass.

Definition at line 132 of file Geant4Particle.h.

◆ originalG4ID

int dd4hep::sim::Geant4Particle::originalG4ID { 0 }

Definition at line 109 of file Geant4Particle.h.

◆ parents

Particles dd4hep::sim::Geant4Particle::parents

The list of parents of this MC particle.

Definition at line 138 of file Geant4Particle.h.

◆ pdgID

int dd4hep::sim::Geant4Particle::pdgID { 0 }

Definition at line 115 of file Geant4Particle.h.

◆ pex

double dd4hep::sim::Geant4Particle::pex = 0E0

The track momentum at the end vertex.

Definition at line 130 of file Geant4Particle.h.

◆ pey

double dd4hep::sim::Geant4Particle::pey = 0E0

Definition at line 130 of file Geant4Particle.h.

◆ pez

double dd4hep::sim::Geant4Particle::pez = 0E0

Definition at line 130 of file Geant4Particle.h.

◆ process

const G4VProcess* dd4hep::sim::Geant4Particle::process = 0

Reference to the G4VProcess, which created this track.

Definition at line 145 of file Geant4Particle.h.

◆ properTime

double dd4hep::sim::Geant4Particle::properTime { 0E0 }

Proper time.

Definition at line 136 of file Geant4Particle.h.

◆ psx

double dd4hep::sim::Geant4Particle::psx = 0E0

The track momentum at the start vertex.

Definition at line 128 of file Geant4Particle.h.

◆ psy

double dd4hep::sim::Geant4Particle::psy = 0E0

Definition at line 128 of file Geant4Particle.h.

◆ psz

double dd4hep::sim::Geant4Particle::psz = 0E0

Definition at line 128 of file Geant4Particle.h.

◆ reason

int dd4hep::sim::Geant4Particle::reason { 0 }

Definition at line 111 of file Geant4Particle.h.

◆ ref

int dd4hep::sim::Geant4Particle::ref { 0 }

Reference counter.

Definition at line 107 of file Geant4Particle.h.

◆ secondaries

int dd4hep::sim::Geant4Particle::secondaries { 0 }

Definition at line 114 of file Geant4Particle.h.

◆ spin

float dd4hep::sim::Geant4Particle::spin[3] { 0E0,0E0,0E0 }

Definition at line 121 of file Geant4Particle.h.

◆ status

int dd4hep::sim::Geant4Particle::status { 0 }

Definition at line 116 of file Geant4Particle.h.

◆ steps

int dd4hep::sim::Geant4Particle::steps { 0 }

Definition at line 113 of file Geant4Particle.h.

◆ time

double dd4hep::sim::Geant4Particle::time { 0E0 }

Particle creation time.

Definition at line 134 of file Geant4Particle.h.

◆ vex

double dd4hep::sim::Geant4Particle::vex = 0E0

The end vertex.

Definition at line 126 of file Geant4Particle.h.

◆ vey

double dd4hep::sim::Geant4Particle::vey = 0E0

Definition at line 126 of file Geant4Particle.h.

◆ vez

double dd4hep::sim::Geant4Particle::vez = 0E0

Definition at line 126 of file Geant4Particle.h.

◆ vsx

double dd4hep::sim::Geant4Particle::vsx = 0E0

The starting vertex.

Definition at line 124 of file Geant4Particle.h.

◆ vsy

double dd4hep::sim::Geant4Particle::vsy = 0E0

Definition at line 124 of file Geant4Particle.h.

◆ vsz

double dd4hep::sim::Geant4Particle::vsz = 0E0

Definition at line 124 of file Geant4Particle.h.


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