er  dev
ERSensPlanePoint.h
1 /********************************************************************************
2  * Copyright (C) Joint Institute for Nuclear Research *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence version 3 (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 
9 // ------------------------------------------------------------------------------
10 // ----- ERSensPlanePoint header file -----
11 // ------------------------------------------------------------------------------
12 
13 #ifndef ERSENSPLANEPOINT_H
14 #define ERSENSPLANEPOINT_H
15 
16 #include "FairMCPoint.h"
17 
18 #include "TVector3.h"
19 
20 class ERSensPlanePoint : public FairMCPoint
21 {
22 public:
23 
26 
28  ERSensPlanePoint(Int_t eventID,
29  Int_t trackID,
30  Int_t mot0trackID,
31  Double_t mass,
32  TVector3 posIn,
33  TVector3 posOut,
34  TVector3 momIn,
35  TVector3 momOut,
36  Double_t tof,
37  Double_t length,
38  Double_t eLoss);
39 
42 
44  virtual ~ERSensPlanePoint();
45 
46  ERSensPlanePoint& operator=(const ERSensPlanePoint&) { return *this; }
47 
49  Int_t GetEventID() const { return fEventID; }
50  Int_t GetMot0TrackID() const { return fMot0TrackID; }
51  Double_t GetMass() const { return fMass; }
52  Double_t GetXIn() const { return fX; }
53  Double_t GetYIn() const { return fY; }
54  Double_t GetZIn() const { return fZ; }
55  Double_t GetXOut() const { return fX_out; }
56  Double_t GetYOut() const { return fY_out; }
57  Double_t GetZOut() const { return fZ_out; }
58  Double_t GetPxOut() const { return fPx_out; }
59  Double_t GetPyOut() const { return fPy_out; }
60  Double_t GetPzOut() const { return fPz_out; }
61 
62  void PositionIn(TVector3& pos) const { pos.SetXYZ(fX, fY, fZ); }
63  void PositionOut(TVector3& pos) const { pos.SetXYZ(fX_out, fY_out, fZ_out); }
64  void MomentumOut(TVector3& mom) const { mom.SetXYZ(fPx_out, fPy_out, fPz_out); }
65 
67  Double_t GetX(Double_t z) const;
68  Double_t GetY(Double_t z) const;
69 
71  Bool_t IsUsable() const;
72 
74  virtual void Print(const Option_t* opt = 0) const;
75 
76 protected:
77 
78  Int_t fEventID;
79  Int_t fMot0TrackID;
80  Double_t fMass;
81  Double32_t fX_out, fY_out, fZ_out;
82  Double32_t fPx_out, fPy_out, fPz_out;
83 
84  ClassDef(ERSensPlanePoint, 1)
85 };
86 
87 #endif // ERSENSPLANEPOINT_H
virtual void Print(const Option_t *opt=0) const
Int_t GetEventID() const
Double_t GetX(Double_t z) const
virtual ~ERSensPlanePoint()
Bool_t IsUsable() const