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
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
CbmMCEvent.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file CbmMCEvent.h
1
9
#ifndef CBMMCEVENT_H
10
#define CBMMCEVENT_H 1
11
12
13
#include "TNamed.h"
14
#include "TVector3.h"
15
16
17
class
CbmMCEvent
:
public
TNamed
18
{
19
20
public
:
21
23
CbmMCEvent
();
24
25
36
CbmMCEvent
(UInt_t runId, Int_t iEvent,
37
Double_t
x
, Double_t
y
, Double_t
z
, Double_t
t
,
38
Double_t b, Double_t
phi
, Int_t nPrim);
39
40
42
CbmMCEvent
(UInt_t runId);
43
44
46
virtual
~CbmMCEvent
();
47
48
50
UInt_t
GetRunID
()
const
{
return
fRunId
; }
// run identifier
51
Int_t
GetEventID
()
const
{
return
fEventId
; }
// event identifier
52
Double_t
GetX
()
const
{
return
fX
; }
// vertex x [cm]
53
Double_t
GetY
()
const
{
return
fY
; }
// vertex y [cm]
54
Double_t
GetZ
()
const
{
return
fZ
; }
// vertex z [cm]
55
Double_t
GetT
()
const
{
return
fT
; }
// event time [ns]
56
Double_t
GetB
()
const
{
return
fB
; }
// impact parameter [fm]
57
Double_t
GetPhi
()
const
{
return
fPhi
; }
// event plane angle [rad]
58
Int_t
GetNPrim
()
const
{
return
fNPrim
; }
// number of input tracks
59
Bool_t
IsSet
()
const
{
return
fIsSet
; }
// Flag
60
void
GetVertex
(TVector3& vertex) { vertex.SetXYZ(
fX
,
fY
,
fZ
); }
61
62
64
void
SetEventID
(Int_t eventId) {
fEventId
= eventId; }
65
void
SetTime
(Double_t t) {
fT
=
t
; }
66
void
SetB
(Double_t b) {
fB
= b; }
67
void
SetPhi
(Double_t phi) {
fPhi
=
phi
; }
68
void
SetNPrim
(Int_t nPrim) {
fNPrim
= nPrim; }
69
void
MarkSet
(Bool_t isSet) {
fIsSet
= isSet; }
70
void
SetVertex
(Double_t x, Double_t y, Double_t z);
71
void
SetVertex
(
const
TVector3& vertex);
72
73
75
void
Reset
();
76
77
78
79
private
:
80
81
UInt_t
fRunId
;
// Run identifier
82
UInt_t
fEventId
;
// Event identifier
83
Double32_t
fX
;
// Primary vertex x [cm]
84
Double32_t
fY
;
// Primary vertex y [cm]
85
Double32_t
fZ
;
// Primary vertex z [cm]
86
Double32_t
fT
;
// Event time [s]
87
Double32_t
fB
;
// Impact parameter [fm] (if relevant)
88
Double32_t
fPhi
;
// Event plane angle [rad] (if relevant)
89
Int_t
fNPrim
;
// Number of input tracks
90
Bool_t
fIsSet
;
// Flag whether variables are filled
91
92
93
ClassDef
(
CbmMCEvent
,1);
94
95
};
96
97
98
inline
void
CbmMCEvent::SetVertex
(Double_t
x
, Double_t
y
,
99
Double_t
z
) {
100
fX
=
x
;
101
fY
=
y
;
102
fZ
=
z
;
103
}
104
105
106
inline
void
CbmMCEvent::SetVertex
(
const
TVector3& vertex) {
107
fX
= vertex.X();
108
fY
= vertex.Y();
109
fZ
= vertex.Z();
110
}
111
112
113
#endif
EicRoot
blob
master
cbmdata
CbmMCEvent.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:33
using
1.8.2 with
EIC GitHub integration