EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
EIC Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
BeastMagneticField
delphes_EIC
Doxygen_Assist
east
eic-smear
EicRoot
blob
master
base
cbmbase
cbmdata
dbase
eic
eventdisplay
examples
fairtools
field
gconfig
geane
genfit
GenfitTools
geobase
geometry
input
littrack
parbase
passive
pCDR-2018
pid
pnddata
PidData
TrackData
FairRecoCandidate.cxx
FairRecoCandidate.h
PndDataLinkDef.h
PndDetectorList.h
PndMCTrack.cxx
PndMCTrack.h
PndStack.cxx
PndStack.h
PndTools
rich
trackbase
eicsmear-jetexample
eicsmeardetectors
EicToyModel
estarlight
Fun4All-lmon
fun4all_coresoftware
fun4all_eic_qa
fun4all_eic_tutorials
fun4all_eicdetectors
fun4all_eicmacros
fun4all_g4jleic
fun4all_GenFit
fun4all_macros
fun4all_tutorials
g4exampledetector
g4lblvtx
online_distribution
PEPSI
doxygen_mainpage.h
File Members
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
PndMCTrack.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file PndMCTrack.h
1
// -------------------------------------------------------------------------
2
// ----- PndMCTrack header file -----
3
// ----- Created 03/08/04 by V. Friese -----
4
// ----- Adapted to Panda M. Al-Turany -----
5
// -------------------------------------------------------------------------
6
7
17
#ifndef CBMMCTRACK_H
18
#define CBMMCTRACK_H 1
19
20
#include "
PndDetectorList.h
"
21
#include "TObject.h"
22
#include "TParticle.h"
23
#include "TVector3.h"
24
#include "TLorentzVector.h"
25
26
#ifndef ROOT_TParticlePDG
27
#include "TParticlePDG.h"
28
#endif
29
#ifndef ROOT_TDatabasePDG
30
#include "TDatabasePDG.h"
31
#endif
32
33
class
PndMCTrack
:
public
TObject
34
{
35
36
public
:
37
38
40
PndMCTrack
();
41
42
44
45
// PndMCTrack(Int_t pdgCode, Int_t motherID, TVector3 startVvertex,
46
// Double_t startTime, TLorentzVector momentum, Int_t nPoint=0);
47
48
50
PndMCTrack
(
const
PndMCTrack
& track);
51
52
54
PndMCTrack
(TParticle*
particle
);
55
56
58
virtual
~PndMCTrack
();
59
60
62
void
Print
(Int_t iTrack)
const
;
63
64
66
Int_t
GetPdgCode
()
const
{
return
fPdgCode
; }
67
Int_t
GetMotherID
()
const
{
return
fMotherID
; }
68
Int_t
GetSecondMotherID
()
const
{
return
fSecondMotherID
; }
69
TVector3
GetStartVertex
()
const
{
return
TVector3(
fStartX
,
fStartY
,
fStartZ
);}
70
Double_t
GetStartTime
()
const
{
return
fStartT
; }
71
TVector3
GetMomentum
()
const
{
return
TVector3(
fPx
,
fPy
,
fPz
); }
72
Double_t
GetPt
()
const
{
return
TMath::Sqrt(
fPx
*
fPx
+
fPy
*
fPy
); }
73
/*
74
Int_t GetStsPoints() const { return (fPoints & 15 ) ; }
75
*/
76
77
Bool_t
IsGeneratorCreated
(
void
)
const
{
return
(
fGeneratorFlags
&0x1)!=0; }
78
Bool_t
IsGeneratorDecayed
(
void
)
const
{
return
(
fGeneratorFlags
&0
x2
)!=0; }
79
Bool_t
IsGeneratorLast
(
void
)
const
{
return
(
fGeneratorFlags
&0x1)!=0 && (
fGeneratorFlags
&0x2)==0; }
80
void
SetGeneratorCreated
(
void
) {
fGeneratorFlags
|=0x1; }
81
void
SetGeneratorDecayed
(
void
) {
fGeneratorFlags
|=0x2; }
82
83
Int_t
GetNPoints
(
DetectorId
detId)
const
;
86
void
SetMotherID
(Int_t
id
) {
fMotherID
= id; }
87
void
SetSecondMotherID
(Int_t
id
) {
fSecondMotherID
= id; }
88
/*
89
void SetStsPoints(Int_t np);
90
*/
91
92
94
/*
95
void AddStsPoint() { SetStsPoints( GetStsPoints() + 1 ); }
96
*/
97
98
99
void
SetNPoints
(Int_t iDet, Int_t np);
100
101
TLorentzVector
Get4Momentum
()
const
;
102
103
104
private
:
105
107
Int_t
fPdgCode
;
108
110
Double32_t
fPx
,
fPy
,
fPz
,
fE
;
111
113
Int_t
fMotherID
;
114
Int_t
fSecondMotherID
;
115
117
Int_t
fGeneratorFlags
;
118
120
Double32_t
fStartX
,
fStartY
,
fStartZ
,
fStartT
;
121
143
Int_t
fPoints
;
144
145
ClassDef
(
PndMCTrack
,1);
146
147
};
148
149
150
151
#endif
EicRoot
blob
master
pnddata
PndMCTrack.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:37
using
1.8.2 with
EIC GitHub integration