PandaRoot
PndRichBarPoint.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 // -------------------------------------------------------------------------
14 // ----- PndRichBarPoint header file -----
15 // ----- Created 09/04/08 by E. Fioravanti and A. Cecchi -----
16 // -------------------------------------------------------------------------
17 
21 #ifndef PNDRICHBARPOINT_H
22 #define PNDRICHBARPOINT_H
23 
24 #include "TObject.h"
25 #include "TVector3.h"
26 #include "FairMCPoint.h"
27 
28 class PndRichBarPoint : public FairMCPoint {
29 
30  public:
33 
35  PndRichBarPoint(Int_t trackID, Int_t detID, TVector3 pos, TVector3 mom, Double_t tof, Double_t length, Int_t pdgCode, Double_t thetaC, Int_t eventID, Double_t mass);
36 
37  PndRichBarPoint(Int_t trackID, Int_t detID, TVector3 pos, TVector3 mom, Double_t tof, Double_t length, Int_t pdgCode, Double_t thetaC, Int_t eventID, Double_t mass,
38  TVector3 pos0, TVector3 mom0);
39 
40  PndRichBarPoint(TVector3 pos, TVector3 dir, Double_t time);
41 
43  // PndRichBarPoint(const PndRichBarPoint& point) { *this = point; }; // Not needed
44 
46  virtual ~PndRichBarPoint();
47 
49  Int_t GetPdgCode() const { return fPdgCode; };
50  Double_t GetThetaC() const { return fThetaC; };
51  Double_t GetMass() const { return fMass; };
52  Int_t GetTrackStatus() const { return fTrackStatus; };
53  // TVector3 GetPosition() const { return TVector3(fX,fY,fZ);};
54  // TVector3 GetMomentum() const { return TVector3(fPx,fPy,fPz);};
55  TVector3 GetPosition0() const { return fTrackPos0; };
56  TVector3 GetMomentum0() const { return fTrackMom0; };
57  Double_t GetTime0() const { return fTime; };
58  TVector3 GetAxisX() const { return fAxisX; };
59  TVector3 GetAxisY() const { return fAxisY; };
60  TVector3 GetAxisZ() const { return fAxisZ; };
61 
63  void SetPdgCode(Int_t id) { fPdgCode = id; };
64  void SetThetaC(Double_t theta) { fThetaC = theta; };
66 
67  void SetPosition0(TVector3 pos) { fTrackPos0 = pos; };
68  void SetMomentum0(TVector3 dir);
69 
71  // virtual void Print(const Option_t* opt = 0) const = 0;
72  virtual void Print(const Option_t *opt) const;
73 
74  protected:
75  Int_t fPdgCode; // PDG code
76  Double_t fThetaC; // Cherenkov Angle
77  Double_t fMass; // Mass
78  Int_t fTrackStatus;
79  TVector3 fTrackPos0;
80  TVector3 fTrackMom0;
81  Double_t fTime0;
82  TVector3 fAxisX;
83  TVector3 fAxisY;
84  TVector3 fAxisZ;
85 
86  ClassDef(PndRichBarPoint, 3)
87 };
88 
89 #endif
TVector3 GetPosition0() const
Double_t GetMass() const
TVector3 GetMomentum0() const
Int_t GetTrackStatus() const
Double_t GetTime0() const
virtual ~PndRichBarPoint()
void SetThetaC(Double_t theta)
Int_t GetPdgCode() const
Double_t GetThetaC() const
void SetMomentum0(TVector3 dir)
TVector3 GetAxisX() const
void SetPosition0(TVector3 pos)
void SetPdgCode(Int_t id)
TVector3 GetAxisZ() const
virtual void Print(const Option_t *opt) const
void SetTrackStatus(Int_t status)
TVector3 GetAxisY() const
int status[10]
Definition: f_Init.h:48