er  dev
ERmuSiPoint.h
1 // -------------------------------------------------------------------------
2 // ----- ERmuSiPoint header file -----
3 // ----- Created data developerName -----
4 // -------------------------------------------------------------------------
5 
6 
11 #ifndef ERmuSiPoint_H
12 #define ERmuSiPoint_H
13 
14 
15 #include "TObject.h"
16 #include "TVector3.h"
17 
18 #include "FairMCPoint.h"
19 
20 
21 class ERmuSiPoint : public FairMCPoint
22 {
23 
24  public:
25 
27  ERmuSiPoint();
28 
29 
42  ERmuSiPoint(Int_t index, Int_t eventID, Int_t trackID,
43  Int_t mot0trackID,
44  Double_t mass,
45  TVector3 posIn,
46  TVector3 posOut, TVector3 momIn, TVector3 momOut,
47  Double_t tof, Double_t length, Double_t eLoss, Int_t station);
48 
49 
51  ERmuSiPoint(const ERmuSiPoint&);
52 
53 
55  virtual ~ERmuSiPoint();
56 
57 
58  ERmuSiPoint& operator=(const ERmuSiPoint&) { return *this; }
59 
60 
62  Int_t GetEventID() const { return fEventID; }
63  Int_t GetMot0TrackID() const { return fMot0TrackID; }
64  Double_t GetXIn() const { return fX; }
65  Double_t GetYIn() const { return fY; }
66  Double_t GetZIn() const { return fZ; }
67  Double_t GetXOut() const { return fX_out; }
68  Double_t GetYOut() const { return fY_out; }
69  Double_t GetZOut() const { return fZ_out; }
70  Double_t GetPxOut() const { return fPx_out; }
71  Double_t GetPyOut() const { return fPy_out; }
72  Double_t GetPzOut() const { return fPz_out; }
73  Double_t GetMass() const { return fMass; }
74  Int_t Station() const { return fStation;}
75  Int_t Index() const { return fIndex;}
76 
77  void PositionIn(TVector3& pos) { pos.SetXYZ(fX, fY, fZ); }
78  void PositionOut(TVector3& pos) { pos.SetXYZ(fX_out,fY_out,fZ_out); }
79  void MomentumOut(TVector3& mom) { mom.SetXYZ(fPx_out,fPy_out,fPz_out); }
80 
81 
83  Double_t GetX(Double_t z) const;
84  Double_t GetY(Double_t z) const;
85 
86 
88  Bool_t IsUsable() const;
89 
91  virtual void Print(const Option_t* opt = 0) const;
92 
93  protected:
94 
95  Int_t fEventID;
96  Int_t fMot0TrackID;
97  Double_t fMass;
98  Double32_t fX_out, fY_out, fZ_out;
99  Double32_t fPx_out, fPy_out, fPz_out;
100  Int_t fStation;
101  Int_t fIndex;
102  Double_t fPAngle;
103 
104  ClassDef(ERmuSiPoint,1)
105 };
106 #endif
Int_t GetEventID() const
Definition: ERmuSiPoint.h:62
Double_t GetX(Double_t z) const
Definition: ERmuSiPoint.cxx:76
virtual ~ERmuSiPoint()
Definition: ERmuSiPoint.cxx:55
virtual void Print(const Option_t *opt=0) const
Definition: ERmuSiPoint.cxx:63
Bool_t IsUsable() const