FairShip
Loading...
Searching...
No Matches
DetectorPoint.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-3.0-or-later
2// SPDX-FileCopyrightText: Copyright CERN for the benefit of the SHiP
3// Collaboration
4
5#ifndef DETECTOR_DETECTORPOINT_H_
6#define DETECTOR_DETECTORPOINT_H_
7
8#include <array>
9
10#include "FairMCPoint.h"
11#include "TVector3.h"
12
13namespace SHiP {
14class DetectorPoint : public FairMCPoint {
15 public:
17 ~DetectorPoint() = default;
18
19 DetectorPoint(Int_t eventID, Int_t trackID, Int_t detID, TVector3 pos,
20 TVector3 mom, Double_t tof, Double_t length, Double_t eLoss,
21 Int_t pdgCode, TVector3 Lpos, TVector3 Lmom);
22
23 DetectorPoint(Int_t eventID, Int_t trackID, Int_t detID, TVector3 pos,
24 TVector3 mom, Double_t tof, Double_t length, Double_t eLoss,
25 Int_t pdgCode);
26
28 DetectorPoint(const DetectorPoint& point) = default;
29 DetectorPoint& operator=(const DetectorPoint& point) = default;
30
32 using FairMCPoint::Print;
33 virtual void Print() const;
34 Int_t PdgCode() const { return fPdgCode; }
35 TVector3 LastPoint() const { return TVector3(fLpos[0], fLpos[1], fLpos[2]); }
36 TVector3 LastMom() const { return TVector3(fLmom[0], fLmom[1], fLmom[2]); }
37
38 virtual void extraPrintInfo() const;
39
40 protected:
41 Int_t fPdgCode;
42 std::array<Double_t, 3> fLpos, fLmom;
43
44 private:
46};
47} // namespace SHiP
48
49#endif // DETECTOR_DETECTORPOINT_H_
DetectorPoint(const DetectorPoint &point)=default
DetectorPoint & operator=(const DetectorPoint &point)=default
Int_t PdgCode() const
Definition: DetectorPoint.h:34
TVector3 LastPoint() const
Definition: DetectorPoint.h:35
ClassDef(SHiP::DetectorPoint, 1)
TVector3 LastMom() const
Definition: DetectorPoint.h:36
std::array< Double_t, 3 > fLmom
Definition: DetectorPoint.h:42
virtual void Print() const
virtual void extraPrintInfo() const
std::array< Double_t, 3 > fLpos
Definition: DetectorPoint.h:42
~DetectorPoint()=default
Definition: Detector.h:18