PandaRoot
PndFtofPoint.h
Go to the documentation of this file.
1 // ------------------------------------------------------------------------
2 // ----- PndFtofpoint header file -----
3 // ----- Created by A.Sanchez -----
4 // ------------------------------------------------------------------------
5 
6 #ifndef PNDFTOFPOINT_H
7 #define PNDFTOFPOINT_H
8 
9 #include "TObject.h"
10 #include "TVector3.h"
11 #include "TLorentzVector.h"
12 #include "FairMCPoint.h"
13 #include "TString.h"
14 
15 class PndFtofPoint : public FairMCPoint {
16 
17  public:
19  PndFtofPoint();
20 
35  PndFtofPoint(Int_t trackID, Int_t evtID, Int_t detID, TString detName, TVector3 posin, TVector3 momin, TVector3 posout, TVector3 momout, Double_t tof, Double_t length,
36  Double_t eLoss, Double_t charge, Double_t mass, Int_t pdgCode, Double_t distance, Double_t PLin, Double_t PLout);
37 
39  PndFtofPoint(const PndFtofPoint &point) : FairMCPoint(point) { *this = point; };
40 
42  virtual ~PndFtofPoint();
43 
45  Int_t GetVolumeID() const { return fVolumeID; };
46  Double_t GetXin() const { return fXin; };
47  Double_t GetYin() const { return fYin; };
48  Double_t GetZin() const { return fZin; };
49  Double_t GetPxin() const { return fPxin; };
50  Double_t GetPyin() const { return fPyin; };
51  Double_t GetPzin() const { return fPzin; };
52 
53  Double_t GetPLin() const { return fPLin; };
54  Double_t GetPLout() const { return fPLout; };
55 
56  Double_t GetXout() const { return fXout; };
57  Double_t GetYout() const { return fYout; };
58  Double_t GetZout() const { return fZout; };
59  Double_t GetPxout() const { return fPxout; };
60  Double_t GetPyout() const { return fPyout; };
61  Double_t GetPzout() const { return fPzout; };
62  Double_t Getdist() const { return fdist; };
63  // Double_t Gettheta() const { return ftheta; };
64 
65  TString GetDetName() const { return fDetName; };
66  Double_t GetMass() const { return fmass; };
67 
68  void PositionIn(TVector3 &pos) { pos.SetXYZ(fXin, fYin, fZin); };
69  void MomentumIn(TVector3 &mom) { mom.SetXYZ(fPxin, fPyin, fPzin); };
70 
71  void PositionOut(TVector3 &pos) { pos.SetXYZ(fXout, fYout, fZout); };
72  void MomentumOut(TVector3 &mom) { mom.SetXYZ(fPxout, fPyout, fPzout); };
73 
76  void SetPositionIn(const TVector3 &pos);
77  void SetMomentumIn(const TVector3 &mom);
78  void SetPositionOut(const TVector3 &pos);
79  void SetMomentumOut(const TVector3 &mom);
80 
82  virtual void Print(const Option_t *opt) const;
83 
84  protected:
85  Double32_t fPLin, fPLout; // momentum
86  Double32_t fmass, fcharge;
87  Double32_t fXin, fYin, fZin;
88  Double32_t fPxin, fPyin, fPzin;
89  Double32_t fXout, fYout, fZout;
90  Double32_t fPxout, fPyout, fPzout, fdist;
91 
92  TString fDetName;
93 
95 
96  ClassDef(PndFtofPoint, 1)
97 };
98 
99 inline void PndFtofPoint::SetPositionIn(const TVector3 &pos)
100 {
101  fXin = pos.X();
102  fYin = pos.Y();
103  fZin = pos.Z();
104 }
105 
106 inline void PndFtofPoint::SetMomentumIn(const TVector3 &mom)
107 {
108  fPxin = mom.X();
109  fPyin = mom.Py();
110  fPzin = mom.Pz();
111 }
112 
113 inline void PndFtofPoint::SetPositionOut(const TVector3 &pos)
114 {
115  fXout = pos.X();
116  fYout = pos.Y();
117  fZout = pos.Z();
118 }
119 
120 inline void PndFtofPoint::SetMomentumOut(const TVector3 &mom)
121 {
122  fPxout = mom.Px();
123  fPyout = mom.Py();
124  fPzout = mom.Pz();
125 }
126 
127 #endif
Double32_t fXout
Definition: PndFtofPoint.h:89
Double_t GetPzin() const
Definition: PndFtofPoint.h:51
Double32_t fPyout
Definition: PndFtofPoint.h:90
Int_t fpdgCode
Definition: PndFtofPoint.h:94
Double_t GetYout() const
Definition: PndFtofPoint.h:57
Double32_t fPzin
Definition: PndFtofPoint.h:88
TString GetDetName() const
Definition: PndFtofPoint.h:65
Double32_t fdist
Definition: PndFtofPoint.h:90
void SetMomentumIn(const TVector3 &mom)
Definition: PndFtofPoint.h:106
Double32_t fZout
Definition: PndFtofPoint.h:89
Double32_t fPLout
Definition: PndFtofPoint.h:85
Double32_t fPzout
Definition: PndFtofPoint.h:90
void SetPositionOut(const TVector3 &pos)
Definition: PndFtofPoint.h:113
TString fDetName
Definition: PndFtofPoint.h:92
virtual void Print(const Option_t *opt) const
Double_t GetPyout() const
Definition: PndFtofPoint.h:60
void PositionIn(TVector3 &pos)
Definition: PndFtofPoint.h:68
Double32_t fYout
Definition: PndFtofPoint.h:89
Double_t GetZin() const
Definition: PndFtofPoint.h:48
Double_t GetPyin() const
Definition: PndFtofPoint.h:50
Double32_t fPxout
Definition: PndFtofPoint.h:90
Double_t GetZout() const
Definition: PndFtofPoint.h:58
Double_t GetXin() const
Definition: PndFtofPoint.h:46
Int_t fVolumeID
Definition: PndFtofPoint.h:94
Double32_t fPxin
Definition: PndFtofPoint.h:88
Double_t GetPLin() const
Definition: PndFtofPoint.h:53
void MomentumIn(TVector3 &mom)
Definition: PndFtofPoint.h:69
Double_t GetMass() const
Definition: PndFtofPoint.h:66
void MomentumOut(TVector3 &mom)
Definition: PndFtofPoint.h:72
void SetMomentumOut(const TVector3 &mom)
Definition: PndFtofPoint.h:120
Double_t GetPxout() const
Definition: PndFtofPoint.h:59
Double_t GetYin() const
Definition: PndFtofPoint.h:47
Double32_t fPyin
Definition: PndFtofPoint.h:88
Double32_t fPLin
Definition: PndFtofPoint.h:85
Double_t GetPzout() const
Definition: PndFtofPoint.h:61
Double32_t fYin
Definition: PndFtofPoint.h:87
Double32_t fmass
Definition: PndFtofPoint.h:86
virtual ~PndFtofPoint()
PndFtofPoint(const PndFtofPoint &point)
Definition: PndFtofPoint.h:39
Double_t GetXout() const
Definition: PndFtofPoint.h:56
Double32_t fcharge
Definition: PndFtofPoint.h:86
Double_t Getdist() const
Definition: PndFtofPoint.h:62
Double32_t fXin
Definition: PndFtofPoint.h:87
Int_t GetVolumeID() const
Definition: PndFtofPoint.h:45
Double_t GetPLout() const
Definition: PndFtofPoint.h:54
void SetPositionIn(const TVector3 &pos)
Definition: PndFtofPoint.h:99
Double32_t fZin
Definition: PndFtofPoint.h:87
void PositionOut(TVector3 &pos)
Definition: PndFtofPoint.h:71
Double_t GetPxin() const
Definition: PndFtofPoint.h:49