ATLAS Offline Software
FlukaParticle.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef FLUKAPARTICLE_H
6 #define FLUKAPARTICLE_H
7 
9 #include <string>
10 #include <vector>
11 
20  public:
21  FlukaParticle(int type = 0);
22  FlukaParticle(const FlukaParticle& flukaParticle) = default;
23  FlukaParticle& operator=(const FlukaParticle& flukaParticle) = default;
24 
27  int read(std::vector<std::string> *eventAsStringVector);
28 
30  void print(void);
31 
33  void clear(void);
34 
36  int type(void) const { return m_type; }
37 
39  long eventId(void) const { return m_eventId; }
40 
42  int flukaId(void) const { return m_flukaId; }
43 
46  int partGenNum(void) const { return m_partGenNum; }
47 
50  double kineticEnergy(void) const { return m_kineticEnergy; }
51 
54  HepMC::FourVector positionAtScoringPlane(void) const { return m_positionAtScoringPlane; }
55 
58  HepMC::FourVector directionalCosines(void) const { return m_directionalCosines; }
59 
61  double weight(void) const { return m_weight; }
62 
64  double totalEnergy(void) const { return m_totalEnergy; }
65 
67  HepMC::FourVector positionAtPrimary(void) const { return m_positionAtPrimary; }
68 
70  int pdgId();
71 
75 
76  private:
77  int m_type;
78 
79  long m_eventId;
80  int m_flukaId;
83  HepMC::FourVector m_positionAtScoringPlane;
84  HepMC::FourVector m_directionalCosines;
85  double m_weight;
86  double m_totalEnergy;
87  HepMC::FourVector m_positionAtPrimary;
88 
89 };
90 
91 #endif
FlukaParticle::read
int read(std::vector< std::string > *eventAsStringVector)
A function to read the values from a single row definition and fill the data members.
Definition: FlukaParticle.cxx:47
FlukaParticle::m_eventId
long m_eventId
Definition: FlukaParticle.h:79
FlukaParticle::print
void print(void)
A function to print the contents of this particle.
Definition: FlukaParticle.cxx:206
FlukaParticle::m_kineticEnergy
double m_kineticEnergy
Definition: FlukaParticle.h:82
FlukaParticle::m_positionAtPrimary
HepMC::FourVector m_positionAtPrimary
Definition: FlukaParticle.h:87
FlukaParticle::flukaId
int flukaId(void) const
A function to return the FLUKA particle Id of this particle.
Definition: FlukaParticle.h:42
FlukaParticle::pdgId
int pdgId()
A function to return the PDG id of this particle.
Definition: FlukaParticle.cxx:128
FlukaParticle::positionAtPrimary
HepMC::FourVector positionAtPrimary(void) const
A function to return the position of the primary interaction.
Definition: FlukaParticle.h:67
FlukaParticle::FlukaParticle
FlukaParticle(const FlukaParticle &flukaParticle)=default
FlukaParticle::operator=
FlukaParticle & operator=(const FlukaParticle &flukaParticle)=default
FlukaParticle::m_totalEnergy
double m_totalEnergy
Definition: FlukaParticle.h:86
FlukaParticle::m_partGenNum
int m_partGenNum
Definition: FlukaParticle.h:81
FlukaParticle::clear
void clear(void)
A function to clear the values of this particle.
Definition: FlukaParticle.cxx:25
FlukaParticle::eventId
long eventId(void) const
A function to return the FLUKA event Id of this particle.
Definition: FlukaParticle.h:39
FlukaParticle::m_weight
double m_weight
Definition: FlukaParticle.h:85
SimpleVector.h
FlukaParticle::m_flukaId
int m_flukaId
Definition: FlukaParticle.h:80
FlukaParticle::directionalCosines
HepMC::FourVector directionalCosines(void) const
A function to return the directional cosines of this particle.
Definition: FlukaParticle.h:58
FlukaParticle::m_directionalCosines
HepMC::FourVector m_directionalCosines
Definition: FlukaParticle.h:84
FlukaParticle::totalEnergy
double totalEnergy(void) const
A function to return the total energy.
Definition: FlukaParticle.h:64
FlukaParticle::m_type
int m_type
Definition: FlukaParticle.h:77
FlukaParticle::weight
double weight(void) const
A function to return the particle or event weight.
Definition: FlukaParticle.h:61
FlukaParticle::positionAtScoringPlane
HepMC::FourVector positionAtScoringPlane(void) const
A function to return the fourvector position with respect to the scoring plane of this particle.
Definition: FlukaParticle.h:54
FlukaParticle
A class to describe a FLUKA particle read from an input ASCII file.
Definition: FlukaParticle.h:19
FlukaParticle::flukaParticleType
flukaParticleType
Definition: FlukaParticle.h:72
FlukaParticle::type
int type(void) const
A function to return the type of this FlukaParticle.
Definition: FlukaParticle.h:36
FlukaParticle::kineticEnergy
double kineticEnergy(void) const
A function to return the relativistic kinetic energy of this particle.
Definition: FlukaParticle.h:50
FlukaParticle::BRUCE
@ BRUCE
Definition: FlukaParticle.h:73
FlukaParticle::m_positionAtScoringPlane
HepMC::FourVector m_positionAtScoringPlane
Definition: FlukaParticle.h:83
FlukaParticle::FlukaParticle
FlukaParticle(int type=0)
Definition: FlukaParticle.cxx:11
FlukaParticle::TALANOV
@ TALANOV
Definition: FlukaParticle.h:74
FlukaParticle::partGenNum
int partGenNum(void) const
A function to return the particle generation number of this particle.
Definition: FlukaParticle.h:46