GenParticle.h
Go to the documentation of this file.
1 #ifndef _EVT_GEN_SHOWER_H_
2 #define _EVT_GEN_SHOWER_H_
3 
4 #include <iostream>
5 #include <vector>
6 
7 namespace evt {
8 
9  class GenParticle {
10 
11  public:
13  virtual ~GenParticle() {}
14 
15  int GetParentId() const { return fParentId; }
16  double GetParentEnergy() const { return fParentEnergy; }
17  double GetEnergyCM() const { return fEnergyCM; }
18  double GetKinel() const { return fKinel; }
19  int GetMultiplicity() const { return fMultiplicity; }
20  int GetTargetMass() const { return fTargetMass; }
21  double GetDepth() const {return fDepth; }
22  double GetHeight() const {return fHeight; }
23 
24  std::vector<GenParticle>& GetDaughterParticles()
25  { return fDaughterParticles; }
26  const std::vector<GenParticle>& GetDaughterParticles() const
27  { return fDaughterParticles; }
28 
29  void SetParentId(const int parentId) { fParentId = parentId; }
30  void SetParentEnergy(const double parentEnergy) { fParentEnergy = parentEnergy; }
31  void SetEnergyCM(const double energyCM) { fEnergyCM = energyCM; }
32  void SetKinel(const double kinel) { fKinel = kinel; }
33  void SetMultiplicity(const int mult) { fMultiplicity = mult; }
34  void SetTargetMass(const int targetMass) { fTargetMass = targetMass; }
35  void SetDepth(const double depth) { fDepth = depth; }
36  void SetHeight(const double height) { fHeight = height; }
37 
38  void AddDaughterParticle(GenParticle& parttemp ) { fDaughterParticles.push_back(parttemp); }
39  void AddNDaughters(int size) { fDaughterParticles.resize(size); }
41  GenParticle dummyGenP;
42  fDaughterParticles.push_back(dummyGenP);
43  }
44 
45  bool HasDaughters() { return !fDaughterParticles.empty(); }
46 
47  private:
48  int fParentId = 0;
49  double fParentEnergy = 0.;
50  double fEnergyCM = 0.;
51  double fKinel = 0.;
52  int fMultiplicity = 0;
53  int fTargetMass = 0;
54  double fDepth = 0;
55  double fHeight = 0;
56 
57  std::vector<GenParticle> fDaughterParticles;
58 
59  };
60 
61 }
62 
63 
64 #endif
void SetMultiplicity(const int mult)
Definition: GenParticle.h:33
double GetHeight() const
Definition: GenParticle.h:22
void SetKinel(const double kinel)
Definition: GenParticle.h:32
void SetDepth(const double depth)
Definition: GenParticle.h:35
void AddNDaughters(int size)
Definition: GenParticle.h:39
double fParentEnergy
Definition: GenParticle.h:49
int GetParentId() const
Definition: GenParticle.h:15
std::vector< GenParticle > fDaughterParticles
Definition: GenParticle.h:57
void AddDummyParticle()
Definition: GenParticle.h:40
double GetDepth() const
Definition: GenParticle.h:21
void SetTargetMass(const int targetMass)
Definition: GenParticle.h:34
virtual ~GenParticle()
Definition: GenParticle.h:13
double GetParentEnergy() const
Definition: GenParticle.h:16
std::vector< GenParticle > & GetDaughterParticles()
Definition: GenParticle.h:24
double GetEnergyCM() const
Definition: GenParticle.h:17
const std::vector< GenParticle > & GetDaughterParticles() const
Definition: GenParticle.h:26
void SetParentId(const int parentId)
Definition: GenParticle.h:29
void SetParentEnergy(const double parentEnergy)
Definition: GenParticle.h:30
void AddDaughterParticle(GenParticle &parttemp)
Definition: GenParticle.h:38
void SetEnergyCM(const double energyCM)
Definition: GenParticle.h:31
bool HasDaughters()
Definition: GenParticle.h:45
int GetTargetMass() const
Definition: GenParticle.h:20
void SetHeight(const double height)
Definition: GenParticle.h:36
double GetKinel() const
Definition: GenParticle.h:18
int GetMultiplicity() const
Definition: GenParticle.h:19

, generated on Tue Sep 26 2023.