BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
BmnBCPoint.h
Go to the documentation of this file.
1// ------------------------------------------------------------------------
2// ----- BmnBdPoint header file -----
3// ----- litvin@nf.jinr.ru -----
4// ----- Last updated 10-02-2016 -----
5// ------------------------------------------------------------------------
6
7#ifndef BMNBCPOINT_H
8#define BMNBCPOINT_H
9
10#include "FairMCPoint.h"
11#include "Rtypes.h"
12#include "TLorentzVector.h"
13#include "TObject.h"
14#include "TParticle.h"
15#include "TVector3.h"
16#include "TVirtualMC.h"
17
18using namespace std;
19
20class BmnBCPoint : public FairMCPoint
21{
22
23 public:
24 /** Default constructor **/
25 BmnBCPoint();
26
27 /** Constructor with arguments
28 *@param trackID Index of MCTrack
29 *@param detID Detector ID (at present, volume MC number)
30 *@param copyNo Number of active layer inside BD module
31 *@param posIn Coordinates at entrance to active volume [cm]
32 *@param posOut Coordinates at exit of active volume [cm]
33 *@param momIn Momentum of track at entrance [GeV]
34 *@param momOut Momentum of track at exit [GeV]
35 *@param tof Time since event start [ns]
36 *@param length Track length since creation [cm]
37 *@param eLoss Energy deposit [GeV]
38 **/
39
40 BmnBCPoint(Int_t trackID,
41 Int_t detID,
42 Int_t copyNo,
43 TVector3 posIn,
44 TVector3 posOut,
45 TVector3 momIn,
46 TVector3 momOut,
47 Double_t tof,
48 Double_t length,
49 Double_t eLoss,
50 Int_t fStat,
51 Int_t isPrimary,
52 Double_t charge,
53 Int_t pdgId,
54 Double_t lightYield,
55 Double_t timeIn,
56 Double_t timeOut,
57 Double_t lengthtrack);
58 // UInt_t EventId,
59 /** Copy constructor **/
60 BmnBCPoint(const BmnBCPoint& point) { *this = point; };
61
62 /** Destructor **/
63 virtual ~BmnBCPoint();
64
65 /** Accessors **/
66 Short_t GetCopy() const { return nCopy; };
67 // Short_t GetCopyMother() const {return nCopyMother; };
68
71 Double_t GetPdgId() { return fPdgId; }
72 Double_t GetTimeIn() const { return fTimeIn; }
73 Double_t GetTimeOut() const { return fTimeOut; }
75 Double_t GetStation() const { return fStation; }
76
77 Double_t GetPxOut() const { return fPxOut; }
78 Double_t GetPyOut() const { return fPyOut; }
79 Double_t GetPzOut() const { return fPzOut; }
80
82
83 Double_t GetXOut() const { return fXOut; }
84 Double_t GetYOut() const { return fYOut; }
85 Double_t GetZOut() const { return fZOut; }
86
87 void PositionOut(TVector3& pos) { pos.SetXYZ(fXOut, fYOut, fZOut); }
88
89 // ---------------------------------------------------------
90 Float_t GetLightYield() const { return fLightYield; }
91
92 // void GetPolarisation(TVector3 &v) const;
93
94 /*
95 Double_t GetX() const { return fX1; };
96 Double_t GetY() const { return fY1; };
97 Double_t GetZ() const { return fZ1; };
98
99 void Position(TVector3& posprim) const { posprim.SetXYZ(fX1, fY1, fZ1); }
100*/
101
102 /** Modifiers **/
103 void SetCopy(Short_t i) { nCopy = i; };
104 // void SetCopyMother(Short_t i) { nCopyMother = i; };
105
106 // void SetProductionVertex(Double_t vx, Double_t vy, Double_t vz) {fVx=vx; fVy=vy; fVz=vz;}
107
108 /** Output to screen **/
109 virtual void Print(const Option_t* opt) const;
110
111 protected:
114
115 Short_t nCopy; // Copy number
116 // Short_t nCopyMother; // Copy number of mother volume
117
126
128};
129
130#endif
int i
Definition P4_F32vec4.h:22
int Int_t
float Float_t
short Short_t
double Double_t
const char Option_t
#define ClassDef(name, id)
Double_t fTimeIn
Definition BmnBCPoint.h:123
Double_t GetTimeOut() const
Definition BmnBCPoint.h:73
Short_t nCopy
Definition BmnBCPoint.h:115
Double_t GetPxOut() const
Definition BmnBCPoint.h:77
Double_t fCharge
Definition BmnBCPoint.h:120
Double_t GetPzOut() const
Definition BmnBCPoint.h:79
Short_t GetCopy() const
Accessors.
Definition BmnBCPoint.h:66
Double_t GetPyOut() const
Definition BmnBCPoint.h:78
virtual ~BmnBCPoint()
Destructor.
Double_t GetStation() const
Definition BmnBCPoint.h:75
Double_t fTimeOut
Definition BmnBCPoint.h:124
Double_t fZOut
Definition BmnBCPoint.h:112
Int_t GetIsPrimary()
Definition BmnBCPoint.h:69
Double_t fPzOut
Definition BmnBCPoint.h:113
Double_t fLengthtrack
Definition BmnBCPoint.h:125
Int_t fIsPrimary
Definition BmnBCPoint.h:118
Double_t GetYOut() const
Definition BmnBCPoint.h:84
Double_t GetCharge()
Definition BmnBCPoint.h:70
BmnBCPoint(const BmnBCPoint &point)
Copy constructor.
Definition BmnBCPoint.h:60
void PositionOut(TVector3 &pos)
Definition BmnBCPoint.h:87
Int_t fStation
Definition BmnBCPoint.h:119
Int_t fPdgId
Definition BmnBCPoint.h:121
virtual void Print(const Option_t *opt) const
Output to screen.
Float_t fLightYield
Definition BmnBCPoint.h:122
Double_t fYOut
Definition BmnBCPoint.h:112
Double_t fXOut
Definition BmnBCPoint.h:112
void SetCopy(Short_t i)
Modifiers.
Definition BmnBCPoint.h:103
Double_t fPyOut
Definition BmnBCPoint.h:113
Double_t GetTimeIn() const
Definition BmnBCPoint.h:72
Double_t fPxOut
Definition BmnBCPoint.h:113
void MomentumOut(TVector3 &mom)
Definition BmnBCPoint.h:81
Double_t GetXOut() const
Definition BmnBCPoint.h:83
Double_t GetLengthtrack() const
Definition BmnBCPoint.h:74
BmnBCPoint()
Default constructor.
Double_t GetZOut() const
Definition BmnBCPoint.h:85
Double_t GetPdgId()
Definition BmnBCPoint.h:71
Float_t GetLightYield() const
Definition BmnBCPoint.h:90
void SetXYZ(Double_t x, Double_t y, Double_t z)
Definition json.hpp:4446