Heavy ion Analysis Libriares
Loading...
Searching...
No Matches
ExpTrack.h
1/*
2 * DetectedTrack.h
3 *
4 * Created on: 04-05-2022
5 * Author: Daniel Wielanek
6 * E-mail: daniel.wielanek@gmail.com
7 * Warsaw University of Technology, Faculty of Physics
8 */
9#ifndef HALEXPTRACK_H_
10#define HALEXPTRACK_H_
11
12#include "ToFTrack.h"
13#include "TpcTrack.h"
14
15#include "Helix.h"
16#include "Track.h"
17
18#include <TObject.h>
19#include <TVector3.h>
20
24namespace Hal {
25 class ExpTrack : public Track {
26 public:
27 private:
28 Int_t fNHits;
29 Float_t fChi2;
30 Float_t fTrackLenght;
31 TVector3 fDCA;
32
33 public:
34 ExpTrack();
39 ExpTrack(const ExpTrack& other) = default;
45 ExpTrack& operator=(const ExpTrack& track) = default;
50 inline Int_t GetNHits() const { return fNHits; };
55 inline Float_t GetChi2() const { return fChi2; }
60 inline Float_t GetTrackLenght() const { return fTrackLenght; }
65 inline const TVector3& GetDCA() const { return fDCA; };
72 inline void SetDCA(Double_t x, Double_t y, Double_t z) { fDCA.SetXYZ(x, y, z); };
77 void SetNHits(Int_t nHits) { fNHits = nHits; }
82 void SetChi2(Float_t chi2) { fChi2 = chi2; }
87 void SetTrackLenght(Float_t lenght) { fTrackLenght = lenght; }
93 virtual DetectorTrack* GetDetTrack(const UInt_t /*detID*/) const { return nullptr; };
94 virtual void CopyData(Track* other);
99 Bool_t IsGlobal() const { return TESTBIT(fType, kGlobal); };
104 void SetGlobal(Bool_t global = kTRUE);
110 virtual Float_t GetFieldVal(Int_t fieldID) const;
116 virtual TString GetFieldName(Int_t fieldID) const;
117 virtual ~ExpTrack();
118 ClassDef(ExpTrack, 1)
119 };
120
121 class ExpTrackHelix : public ExpTrack {
122 Helix fHelix;
123
124 protected:
125 void UpdateHelix();
126
127 public:
133 ExpTrackHelix(const ExpTrackHelix& other) = default;
139 ExpTrackHelix& operator=(const ExpTrackHelix& track) = default;
140 virtual void CopyData(Track* other);
145 inline const Helix& GetHelix() const { return fHelix; };
146 virtual ~ExpTrackHelix();
147 ClassDef(ExpTrackHelix, 1)
148 };
149} // namespace Hal
150#endif /* HALEXPTRACK_H_ */
ExpTrackHelix(const ExpTrackHelix &other)=default
virtual void CopyData(Track *other)
Definition ExpTrack.cxx:45
ExpTrackHelix & operator=(const ExpTrackHelix &track)=default
const Helix & GetHelix() const
Definition ExpTrack.h:145
void SetGlobal(Bool_t global=kTRUE)
Definition ExpTrack.cxx:17
Float_t GetTrackLenght() const
Definition ExpTrack.h:60
const TVector3 & GetDCA() const
Definition ExpTrack.h:65
void SetDCA(Double_t x, Double_t y, Double_t z)
Definition ExpTrack.h:72
virtual DetectorTrack * GetDetTrack(const UInt_t) const
Definition ExpTrack.h:93
virtual TString GetFieldName(Int_t fieldID) const
Definition ExpTrack.cxx:80
ExpTrack(const ExpTrack &other)=default
Int_t GetNHits() const
Definition ExpTrack.h:50
virtual void CopyData(Track *other)
Definition ExpTrack.cxx:27
ExpTrack & operator=(const ExpTrack &track)=default
void SetTrackLenght(Float_t lenght)
Definition ExpTrack.h:87
void SetChi2(Float_t chi2)
Definition ExpTrack.h:82
virtual Float_t GetFieldVal(Int_t fieldID) const
Definition ExpTrack.cxx:51
Bool_t IsGlobal() const
Definition ExpTrack.h:99
void SetNHits(Int_t nHits)
Definition ExpTrack.h:77
Float_t GetChi2() const
Definition ExpTrack.h:55