PandaRoot
PndDskParticle.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // ----- PndDskParticle header file -----
3 // ----- Created 21/03/08 by P. Koch -----
4 // -------------------------------------------------------------------------
5 
6 #ifndef PNDDSKPARTICLE_H
7 #define PNDDSKPARTICLE_H
8 
9 #include "PndMCPoint.h"
10 
11 class PndDskParticle : public PndMCPoint {
12 
13  public:
16 
30  PndDskParticle(Int_t trackID, Int_t detectorID, TVector3 position, TVector3 momentum, Double_t time, Int_t pdgCode, TString pdgName, Double_t energy, Int_t motherTrackID,
31  Int_t motherPdgCode, TString motherPdgName, Double_t mass, Double_t angIn, Double_t thetaC, Int_t nPhot);
32 
34  PndDskParticle(const PndDskParticle &particle);
35 
37  virtual ~PndDskParticle();
38 
43  virtual void Print(const Option_t *opt) const;
44 
53  void SetFinalValues(TVector3 exitPosition, TVector3 exitMomentum, Double_t exitTime, Double_t exitEnergy);
54 
56  Int_t GetPdgCode() const { return fPdgCode; }
57  TString GetPdgName() const { return fPdgName; }
58  Double_t GetEnergy() const { return fEnergy; }
59  Int_t GetMotherTrackID() const { return fMotherTrackID; }
60  Int_t GetMotherPdgCode() const { return fMotherPdgCode; }
61  TString GetMotherPdgName() const { return fMotherPdgName; }
62  Double_t GetExitTime() const { return fExitTime; }
63  Double_t GetExitEnergy() const { return fExitEnergy; }
64  Double_t GetMass() const { return fMass; };
65 
66  Double_t GetAngIn() const { return fAngIn; };
67  Double_t GetThetaC() const { return fThetaC; };
68  Int_t GetNPhot() const { return fNPhot; };
69 
71  void SetAngIn(Double_t ang) { fAngIn = ang; };
72  void SetThetaC(Double_t theta) { fThetaC = theta; };
73  void SetNPhot(Int_t nPhot) { fNPhot = nPhot; };
74 
75  protected:
76  Int_t fPdgCode = -1;
77  TString fPdgName;
78  Double_t fEnergy = 0.;
79  Double_t fMass = 0.; // Mass
80 
81  Int_t fMotherTrackID = -1;
82  Int_t fMotherPdgCode = -1;
83  TString fMotherPdgName;
84 
85  Double_t fExitTime = 0.;
86  Double_t fExitEnergy = 0.;
87 
88  Double_t fThetaC = 0.; // Cherenkov Angle
89  Double_t fAngIn = 0.; // Rod number
90  Int_t fNPhot = -1; // number of produced photons
91 
93 };
94 
95 #endif // PNDDSKPARTICLE_H
Double_t GetAngIn() const
Double_t GetMass() const
Double_t GetEnergy() const
Double_t fThetaC
Int_t GetMotherTrackID() const
Double_t GetExitTime() const
virtual void Print(const Option_t *opt) const
Int_t GetPdgCode() const
Double_t GetThetaC() const
Int_t GetNPhot() const
TString fPdgName
PDG name according to fPdgCode.
void SetThetaC(Double_t theta)
TString GetPdgName() const
void SetAngIn(Double_t ang)
ClassDef(PndMCPoint, 1)
TString fMotherPdgName
PDG name according to fMotherPdgCode.
void SetFinalValues(TVector3 exitPosition, TVector3 exitMomentum, Double_t exitTime, Double_t exitEnergy)
Int_t GetMotherPdgCode() const
Int_t fMotherTrackID
Track ID of the first mother.
virtual ~PndDskParticle()
TString GetMotherPdgName() const
Double_t fExitEnergy
Energy when particle disappears [GeV].
Double_t GetExitEnergy() const
Double_t fExitTime
Time when particle disappears [ns].
Double_t fEnergy
Energy [GeV].
void SetNPhot(Int_t nPhot)
Int_t fPdgCode
PDG code of particle.
Int_t fMotherPdgCode
PDG code of the particle with fMotherTrackID.