FairRoot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FairTrackPar.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 #ifndef FAIRSTSTRACKPAR
9 #define FAIRSTSTRACKPAR 1
10 #include <Rtypes.h> // for THashConsistencyHolder, ClassDef
11 #include <RtypesCore.h> // for Double_t, Int_t, Option_t
12 #include <TObject.h> // for TObject
13 #include <TVector3.h> // for TVector3
14 class TBuffer;
15 class TClass;
16 class TMemberInspector;
17 
18 class FairTrackPar : public TObject
19 {
20  public:
22  FairTrackPar();
23 
25  FairTrackPar(Double_t x, Double_t y, Double_t z, Double_t px, Double_t py, Double_t pz, Int_t q);
26 
27  FairTrackPar(Double_t x,
28  Double_t y,
29  Double_t z,
30  Double_t dx,
31  Double_t dy,
32  Double_t dz,
33  Double_t px,
34  Double_t py,
35  Double_t pz,
36  Double_t dpx,
37  Double_t dpy,
38  Double_t dpz,
39  Int_t q);
40 
42  virtual ~FairTrackPar();
43 
45  virtual void Print(Option_t* option = "") const;
47  virtual TVector3 GetPosition() const { return TVector3(fX, fY, fZ); }
48 
49  virtual Double_t GetX() { return fX; }
50  virtual Double_t GetY() { return fY; }
51  virtual Double_t GetZ() { return fZ; }
52  Int_t GetQ() const { return fq; }
53 
54  virtual Double_t GetDX() const { return fDX; }
55  virtual Double_t GetDY() const { return fDY; }
56  virtual Double_t GetDZ() const { return fDZ; }
57 
58  virtual TVector3 GetMomentum() const { return TVector3(fPx, fPy, fPz); }
59 
60  virtual Double_t GetPx() const { return fPx; }
61  virtual Double_t GetPy() const { return fPy; }
62  virtual Double_t GetPz() const { return fPz; }
63  virtual Double_t GetQp() const { return fQp; }
64 
65  virtual Double_t GetDPx() const { return fDPx; }
66  virtual Double_t GetDPy() const { return fDPy; }
67  virtual Double_t GetDPz() const { return fDPz; }
68  virtual Double_t GetDQp() const { return fDQp; }
69 
70  virtual void GetFieldValue(const Double_t point[3], Double_t* bField);
71 
72  virtual void SetX(Double_t x) { fX = x; }
73  virtual void SetY(Double_t y) { fY = y; }
74  virtual void SetZ(Double_t z) { fZ = z; }
75 
76  virtual void SetDX(Double_t dx) { fDX = dx; }
77  virtual void SetDY(Double_t dy) { fDY = dy; }
78  virtual void SetDZ(Double_t dz) { fDZ = dz; }
79 
80  virtual void SetPx(Double_t px) { fPx = px; }
81  virtual void SetPy(Double_t py) { fPy = py; }
82  virtual void SetPz(Double_t pz) { fPz = pz; }
83 
84  virtual void SetDPx(Double_t dpx) { fDPx = dpx; }
85  virtual void SetDPy(Double_t dpy) { fDPy = dpy; }
86  virtual void SetDPz(Double_t dpz) { fDPz = dpz; }
87 
88  void SetQp(Double_t qp) { fQp = qp; }
89 
90  template<class Archive>
91  void serialize(Archive& ar, const unsigned int)
92  {
93  ar& fX;
94  ar& fY;
95  ar& fZ;
96  ar& fDX;
97  ar& fDY;
98  ar& fDZ;
99  ar& fPx;
100  ar& fPy;
101  ar& fPz;
102  ar& fDPx;
103  ar& fDPy;
104  ar& fDPz;
105  ar& fQp;
106  ar& fDQp;
107  ar& fq;
108  }
109 
110  protected:
112  Double_t fX, fY, fZ;
113 
115  Double_t fDX, fDY, fDZ;
116 
118  Double_t fPx, fPy, fPz;
119 
121  Double_t fDPx, fDPy, fDPz;
122 
124  Double_t fQp;
125 
127  Double_t fDQp;
128 
130  Int_t fq;
131 
133 };
134 
135 #endif
virtual void Print(Option_t *option="") const
virtual Double_t GetDZ() const
Definition: FairTrackPar.h:56
virtual Double_t GetPz() const
Definition: FairTrackPar.h:62
Double_t fQp
Definition: FairTrackPar.h:124
Double_t fPz
Definition: FairTrackPar.h:118
virtual void SetDPy(Double_t dpy)
Definition: FairTrackPar.h:85
virtual Double_t GetQp() const
Definition: FairTrackPar.h:63
virtual void SetDPz(Double_t dpz)
Definition: FairTrackPar.h:86
virtual void GetFieldValue(const Double_t point[3], Double_t *bField)
virtual void SetPy(Double_t py)
Definition: FairTrackPar.h:81
virtual TVector3 GetPosition() const
Definition: FairTrackPar.h:47
Double_t fY
Definition: FairTrackPar.h:112
Double_t fDPx
Definition: FairTrackPar.h:121
virtual Double_t GetDQp() const
Definition: FairTrackPar.h:68
virtual Double_t GetDPx() const
Definition: FairTrackPar.h:65
virtual void SetY(Double_t y)
Definition: FairTrackPar.h:73
Double_t fDPz
Definition: FairTrackPar.h:121
Double_t fZ
Definition: FairTrackPar.h:112
virtual Double_t GetDPy() const
Definition: FairTrackPar.h:66
virtual Double_t GetZ()
Definition: FairTrackPar.h:51
Double_t fX
Definition: FairTrackPar.h:112
Double_t fPx
Definition: FairTrackPar.h:118
Double_t fDX
Definition: FairTrackPar.h:115
virtual void SetZ(Double_t z)
Definition: FairTrackPar.h:74
virtual Double_t GetPx() const
Definition: FairTrackPar.h:60
virtual TVector3 GetMomentum() const
Definition: FairTrackPar.h:58
virtual void SetDPx(Double_t dpx)
Definition: FairTrackPar.h:84
virtual void SetPz(Double_t pz)
Definition: FairTrackPar.h:82
ClassDef(FairTrackPar, 2)
virtual void SetPx(Double_t px)
Definition: FairTrackPar.h:80
virtual ~FairTrackPar()
Int_t GetQ() const
Definition: FairTrackPar.h:52
void serialize(Archive &ar, const unsigned int)
Definition: FairTrackPar.h:91
Double_t fPy
Definition: FairTrackPar.h:118
virtual Double_t GetPy() const
Definition: FairTrackPar.h:61
Double_t fDZ
Definition: FairTrackPar.h:115
virtual void SetX(Double_t x)
Definition: FairTrackPar.h:72
Double_t fDPy
Definition: FairTrackPar.h:121
virtual Double_t GetY()
Definition: FairTrackPar.h:50
virtual Double_t GetDY() const
Definition: FairTrackPar.h:55
virtual void SetDY(Double_t dy)
Definition: FairTrackPar.h:77
virtual Double_t GetDPz() const
Definition: FairTrackPar.h:67
virtual Double_t GetX()
Definition: FairTrackPar.h:49
void SetQp(Double_t qp)
Definition: FairTrackPar.h:88
virtual void SetDX(Double_t dx)
Definition: FairTrackPar.h:76
virtual void SetDZ(Double_t dz)
Definition: FairTrackPar.h:78
virtual Double_t GetDX() const
Definition: FairTrackPar.h:54
Double_t fDY
Definition: FairTrackPar.h:115
Double_t fDQp
Definition: FairTrackPar.h:127