FairRoot/PandaRoot
PndFtsPoint.h
Go to the documentation of this file.
1 #ifndef PNDFTSPOINT_H
2 #define PNDFTSPOINT_H
3 
4 
5 #include "TObject.h"
6 #include "TVector3.h"
7 #include "FairMCPoint.h"
8 
9 
10 class PndFtsPoint : public FairMCPoint
11 {
12 
13  public:
14 
16  PndFtsPoint();
17 
18 
34  PndFtsPoint(Int_t trackID, Int_t detID, Int_t tubeID, Int_t chamberID, Int_t layerID,
35  TVector3 pos, TVector3 posInLocal, TVector3 posOutLocal,
36  TVector3 momIn, TVector3 momOut,
37  Double_t tof, Double_t length, Double_t eLoss, Double_t mass);
38 
39 
42 
43 
45  virtual ~PndFtsPoint();
46 
47  // da cancellare
48  Double_t GetXtot() const { return GetX(); }
49  Double_t GetYtot() const { return GetY(); }
50  Double_t GetZtot() const { return GetZ(); }
51 
52  Double_t GetPxOut() const { return fPx_out; }
53  Double_t GetPyOut() const { return fPy_out; }
54  Double_t GetPzOut() const { return fPz_out; }
55 
57 
59  Double_t GetXOutLocal() const { return fX_out_local; }
60  Double_t GetYOutLocal() const { return fY_out_local; }
61  Double_t GetZOutLocal() const { return fZ_out_local; }
62  Double_t GetXInLocal() const { return fX_in_local; }
63  Double_t GetYInLocal() const { return fY_in_local; }
64  Double_t GetZInLocal() const { return fZ_in_local; }
65 
66  //Double_t GetXWireDirection() const { return fX_wire_dir; }
67  //Double_t GetYWireDirection() const { return fY_wire_dir; }
68  //Double_t GetZWireDirection() const { return fZ_wire_dir; }
69 
70  Double_t GetMass() const {return fMass;}
71 
72 
73  void PositionOutLocal(TVector3& pos) { pos.SetXYZ(fX_out_local,fY_out_local,fZ_out_local); }
74  void PositionInLocal(TVector3& pos) { pos.SetXYZ(fX_in_local,fY_in_local,fZ_in_local); }
75  void MomentumOut(TVector3& mom) { mom.SetXYZ(fPx_out,fPy_out,fPz_out); }
76  //void WireDirection(TVector3& wire) { wire.SetXYZ(fX_wire_dir, fY_wire_dir, fZ_wire_dir); }
77 
79  void SetPositionOutLocal(TVector3 pos);
80  void SetPositionInLocal(TVector3 pos);
81  void SetMomentumOut(TVector3 mom);
82  //void SetWireDirection(TVector3 wire);
83 
84 // tube ID // CHECK added
85  void SetTubeID(Int_t tubeid) { fTubeID = tubeid; }
86  Int_t GetTubeID() { return fTubeID; }
87  void SetChamberID(Int_t chamberid) { fChamberID = chamberid; }
88  void SetLayerID(Int_t layerid) { fLayerID = layerid; }
89  Int_t GetChamberID() { return fChamberID; }
90  Int_t GetLayerID() { return fLayerID; }
91 
93  virtual void Print(const Option_t* opt) const;
94 
95 
96 
97  protected:
98  // exit coordinates in straw frame
100  // entry coordinates in straw frame
102 
105  // wire direction
106  //Double_t fX_wire_dir, fY_wire_dir, fZ_wire_dir;
107 
108  // particle mass
110  Int_t fTubeID;
111  Int_t fChamberID;
112  Int_t fLayerID;
113 
115 
116  ClassDef(PndFtsPoint,1)
117 
118  };
119 
120 
121 
122 inline void PndFtsPoint::SetPositionOutLocal(TVector3 pos) {
123  fX_out_local = pos.X();
124  fY_out_local = pos.Y();
125  fZ_out_local = pos.Z();
126 }
127 
128 inline void PndFtsPoint::SetPositionInLocal(TVector3 pos) {
129  fX_in_local = pos.X();
130  fY_in_local = pos.Y();
131  fZ_in_local = pos.Z();
132 }
133 
134 
135 inline void PndFtsPoint::SetMomentumOut(TVector3 mom) {
136  fPx_out = mom.Px();
137  fPy_out = mom.Py();
138  fPz_out = mom.Pz();
139 }
140 
141 
142 #endif
Double_t GetXOutLocal() const
Definition: PndFtsPoint.h:59
TVector3 pos
Int_t GetChamberID()
Definition: PndFtsPoint.h:89
Double_t GetPzOut() const
Definition: PndFtsPoint.h:54
Double_t fZ_out_local
Definition: PndFtsPoint.h:99
void MomentumOut(TVector3 &mom)
Definition: PndFtsPoint.h:75
Double_t GetZOutLocal() const
Definition: PndFtsPoint.h:61
virtual ~PndFtsPoint()
Definition: PndFtsPoint.cxx:46
Double_t fPz_in
Definition: PndFtsPoint.h:104
Int_t fTubeID
Definition: PndFtsPoint.h:110
Double_t fY_in_local
Definition: PndFtsPoint.h:101
Double_t GetPxOut() const
Definition: PndFtsPoint.h:52
Double_t mom
Definition: plot_dirc.C:14
void SetLayerID(Int_t layerid)
Definition: PndFtsPoint.h:88
Double_t GetYOutLocal() const
Definition: PndFtsPoint.h:60
Double_t GetYInLocal() const
Definition: PndFtsPoint.h:63
void SetPositionInLocal(TVector3 pos)
Definition: PndFtsPoint.h:128
Double_t GetZInLocal() const
Definition: PndFtsPoint.h:64
Int_t fChamberID
Definition: PndFtsPoint.h:111
Double_t fZ_in_local
Definition: PndFtsPoint.h:101
void SetMomentumOut(TVector3 mom)
Definition: PndFtsPoint.h:135
Double_t fPz_out
Definition: PndFtsPoint.h:103
void SetChamberID(Int_t chamberid)
Definition: PndFtsPoint.h:87
Double_t fPx_in
Definition: PndFtsPoint.h:104
Int_t GetTubeID()
Definition: PndFtsPoint.h:86
Double_t
Double_t fX_in_local
Definition: PndFtsPoint.h:101
void PositionOutLocal(TVector3 &pos)
Definition: PndFtsPoint.h:73
Double_t fMass
Definition: PndFtsPoint.h:109
Double_t GetXtot() const
Definition: PndFtsPoint.h:48
Int_t fLayerID
Definition: PndFtsPoint.h:112
Double_t GetYtot() const
Definition: PndFtsPoint.h:49
void PositionInLocal(TVector3 &pos)
Definition: PndFtsPoint.h:74
void SetPositionOutLocal(TVector3 pos)
Definition: PndFtsPoint.h:122
Double_t fPx_out
Definition: PndFtsPoint.h:103
Double_t fX_out_local
Definition: PndFtsPoint.h:99
Double_t GetPyOut() const
Definition: PndFtsPoint.h:53
Double_t fPy_in
Definition: PndFtsPoint.h:104
Double_t GetXInLocal() const
Definition: PndFtsPoint.h:62
Int_t GetLayerID()
Definition: PndFtsPoint.h:90
void SetTubeID(Int_t tubeid)
Definition: PndFtsPoint.h:85
virtual void Print(const Option_t *opt) const
Definition: PndFtsPoint.cxx:63
Double_t GetZtot() const
Definition: PndFtsPoint.h:50
Double_t fY_out_local
Definition: PndFtsPoint.h:99
Double_t fPy_out
Definition: PndFtsPoint.h:103
PndSdsMCPoint * point
Definition: anaLmdCluster.C:72
Double_t GetMass() const
Definition: PndFtsPoint.h:70