Analysis Software
Documentation for
sPHENIX
simulation software
Home page
Related Pages
Modules
Namespaces
Classes
Files
Examples
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
ReadSynRadFiles.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file ReadSynRadFiles.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
#ifndef G4MAIN_ReadSynRadFiles_H
4
#define G4MAIN_ReadSynRadFiles_H
5
6
#include <
fun4all/SubsysReco.h
>
7
8
#include <
phhepmc/PHHepMCGenHelper.h
>
9
10
#include <fstream>
11
#include <string>
12
13
class
PHCompositeNode
;
14
class
TChain;
15
16
namespace
erhic
17
{
18
class
EventMC;
19
}
20
21
class
ReadSynRadFiles
:
public
SubsysReco
22
{
23
public
:
24
ReadSynRadFiles
(
const
std::string
&
name
=
"ReadSynRadFiles"
);
25
virtual
~ReadSynRadFiles
();
26
27
int
Init
(
PHCompositeNode
*topNode);
28
int
process_event
(
PHCompositeNode
*topNode);
29
31
bool
OpenInputFile
(
const
std::string
&
name
);
32
34
void
SetEntryPerEvent
(
int
e
) {
nEntries
=
e
; }
36
void
SetNodeName
(
const
std::string
&
s
) {
_node_name
=
s
; }
38
void
set_vertex_distribution_function
(
PHHepMCGenHelper::VTXFUNC
x
,
PHHepMCGenHelper::VTXFUNC
y
,
PHHepMCGenHelper::VTXFUNC
z
,
PHHepMCGenHelper::VTXFUNC
t
)
39
{
40
hepmc_helper
.
set_vertex_distribution_function
(x, y, z, t);
41
}
42
44
void
set_vertex_distribution_mean
(
const
double
x
,
const
double
y
,
const
double
z
,
const
double
t
)
45
{
46
hepmc_helper
.
set_vertex_distribution_mean
(x, y, z, t);
47
}
48
50
void
set_vertex_distribution_width
(
const
double
x
,
const
double
y
,
const
double
z
,
const
double
t
)
51
{
52
hepmc_helper
.
set_vertex_distribution_width
(x, y, z, t);
53
}
54
//
56
void
set_reuse_vertex
(
int
src_embedding_id)
57
{
58
hepmc_helper
.
set_reuse_vertex
(src_embedding_id);
59
}
60
65
int
get_embedding_id
()
const
{
return
hepmc_helper
.
get_embedding_id
(); }
66
//
71
void
set_embedding_id
(
int
id
) {
hepmc_helper
.
set_embedding_id
(
id
); }
72
74
void
set_reverseXZ
(
bool
b
=
true
) {
m_reverseXZ
=
b
; }
75
76
protected
:
78
void
GetTree
();
79
81
int
CreateNodeTree
(
PHCompositeNode
*topNode);
82
84
std::string
filename
;
85
87
std::ifstream
m_csv_input
;
88
90
int
nEntries
;
91
93
int
entry
;
94
98
erhic::EventMC *
GenEvent
;
99
100
// output
101
std::string
_node_name
;
102
104
PHHepMCGenHelper
hepmc_helper
;
105
107
bool
m_reverseXZ
=
false
;
108
};
109
110
#endif
/* ReadSynRadFiles_H__ */
analysis
blob
master
EIC-SynRad
SynRadAna
ReadSynRadFiles.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:17:48
using
1.8.2 with
sPHENIX GitHub integration