ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
ECCE @ EIC Software
Deprecated List
Modules
Namespaces
Classes
Files
File List
acts
analysis
coresoftware
blob
master
calibrations
generators
decayFinder
FermiMotionAfterburner
flowAfterburner
hijing
JETSCAPE
JEWEL
phhepmc
PHPythia6
PHPythia8
PHSartre
sHEPGen
sHijing
cfortran.h
getaddr.cxx
ghijcrdn.F
ghijjet1.F
ghijjet2.F
ghijjet4.F
ghimain1.F
ghimain2.F
ghiparnt.F
ghistrng.F
granseed.F
HijCrdn.h
Hijing.cxx
HijJet1.h
HijJet2.h
HijJet4.h
HiMain1.h
HiMain2.h
HiParnt.h
HiStrng.h
RanSeed.h
xml_test.C
offline
simulation
Doxygen_Assist
ecce-detectors
fun4all_eicdetectors
geant4
macros
online_distribution
tutorials
doxygen_mainpage.h
File Members
External Links
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
HiParnt.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file HiParnt.h
1
2
#ifndef HiParnt_h
3
#define HiParnt_h
4
5
extern
"C"
{
void
*
hiparnt_address_
(
void
); }
6
12
class
HiParnt
{
13
public
:
14
HiParnt
();
15
~HiParnt
();
16
17
float
&
hipr1
(
int
n
);
18
int
&
ihpr2
(
int
n);
19
float
&
hint1
(
int
n);
20
int
&
ihnt2
(
int
n);
21
22
void
init
(
void
);
23
24
// return common array lengths
25
inline
int
lenHipr1
()
const
{
return
_lenHipr1
;}
26
inline
int
lenIhpr2
()
const
{
return
_lenIhpr2
;}
27
inline
int
lenHint1
()
const
{
return
_lenHint1
;}
28
inline
int
lenIhnt2
()
const
{
return
_lenIhnt2
;}
29
30
private
:
31
32
// Lengths of the COMMONS
33
static
const
int
_lenHipr1
= 100;
34
static
const
int
_lenIhpr2
= 50;
35
static
const
int
_lenHint1
= 100;
36
static
const
int
_lenIhnt2
= 50;
37
38
struct
HIPARNT
;
39
friend
struct
HIPARNT
;
40
41
struct
HIPARNT
42
{
43
float
hipr1[
_lenHipr1
];
44
int
ihpr2[
_lenIhpr2
];
45
float
hint1[
_lenHint1
];
46
int
ihnt2[
_lenIhnt2
];
47
};
48
49
int
_dummy
;
50
float
_realdummy
;
51
static
HIPARNT
*
_hiparnt
;
52
};
53
54
// set pointer to zero at start
55
HiParnt::HIPARNT
*
HiParnt::_hiparnt
=0;
56
57
inline
void
58
HiParnt::init
(
void
)
59
{
if
(!
_hiparnt
)
_hiparnt
=
static_cast<
HIPARNT
*
>
(
hiparnt_address_
()); }
60
61
inline
62
HiParnt::HiParnt
()
63
: _dummy (-999),
64
_realdummy (-999.)
65
{}
66
67
inline
68
HiParnt::~HiParnt
()
69
{}
70
71
inline
float
&
72
HiParnt::hipr1
(
int
n
)
73
{
74
init
();
// check COMMON is initialized
75
if
(n < 1 || n >
lenHipr1
())
return
_realdummy
;
76
return
_hiparnt
->
hipr1
[n-1];
77
}
78
79
inline
int
&
80
HiParnt::ihpr2
(
int
n
)
81
{
82
init
();
// check COMMON is initialized
83
if
(n < 1 || n >
lenIhpr2
())
return
_dummy
;
84
return
_hiparnt
->
ihpr2
[n-1];
85
}
86
87
inline
float
&
88
HiParnt::hint1
(
int
n
)
89
{
90
init
();
// check COMMON is initialized
91
if
(n < 1 || n >
lenHint1
())
return
_realdummy
;
92
return
_hiparnt
->
hint1
[n-1];
93
}
94
95
// access ihnt2 in common
96
inline
int
&
97
HiParnt::ihnt2
(
int
n
)
98
{
99
init
();
// check COMMON is initialized
100
if
(n < 1 || n >
lenIhnt2
())
return
_dummy
;
101
return
_hiparnt
->
ihnt2
[n-1];
102
}
103
104
#endif
coresoftware
blob
master
generators
sHijing
HiParnt.h
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:33
using
1.8.2 with
ECCE GitHub integration