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
PHPy6ForwardElectronTrig.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file PHPy6ForwardElectronTrig.h
1
#ifndef PHPYTHIA6_PHPY6FORWARDELECTRONTRIG_H
2
#define PHPYTHIA6_PHPY6FORWARDELECTRONTRIG_H
3
4
#include "
PHPy6GenTrigger.h
"
5
6
#include <string>
// for string
7
8
namespace
HepMC
9
{
10
class
GenEvent;
11
}
12
13
class
PHPy6ForwardElectronTrig
:
public
PHPy6GenTrigger
14
{
15
public
:
17
PHPy6ForwardElectronTrig
(
const
std::string&
name
=
"PHPy6ForwardElectronTrigger"
);
18
20
~PHPy6ForwardElectronTrig
(
void
)
override
{}
21
22
bool
Apply
(
const
HepMC::GenEvent* evt)
override
;
23
24
void
set_electrons_required
(
int
n
)
25
{
26
n_ep_required
=
n
;
27
}
28
void
set_positrons_required
(
int
n
) {
n_em_required
=
n
; }
29
void
set_combined_required
(
int
n
) {
n_comb_required
=
n
; }
30
void
set_pt_required
(
float
set_pt) {
pt_required
= set_pt; }
31
void
set_eta_range
(
float
set_eta_low,
float
set_eta_high)
32
{
33
eta_low
= set_eta_low;
34
eta_high
= set_eta_high;
35
}
36
37
void
PrintConfig
();
38
39
void
SetRequireElectron
()
40
{
41
RequireElectron
=
true
;
42
RequirePositron
=
false
;
43
RequireOR
=
false
;
44
RequireAND
=
false
;
45
RequireCOMBO
=
false
;
46
}
47
void
SetRequirePositron
()
48
{
49
RequireElectron
=
false
;
50
RequirePositron
=
true
;
51
RequireOR
=
false
;
52
RequireAND
=
false
;
53
RequireCOMBO
=
false
;
54
}
55
void
SetRequireOR
()
56
{
57
RequireElectron
=
false
;
58
RequirePositron
=
false
;
59
RequireOR
=
true
;
60
RequireAND
=
false
;
61
RequireCOMBO
=
false
;
62
}
63
void
SetRequireAND
()
64
{
65
RequireElectron
=
false
;
66
RequirePositron
=
false
;
67
RequireOR
=
false
;
68
RequireAND
=
true
;
69
RequireCOMBO
=
false
;
70
}
71
void
SetRequireCOMBINED
()
72
{
73
RequireElectron
=
false
;
74
RequirePositron
=
false
;
75
RequireOR
=
false
;
76
RequireAND
=
false
;
77
RequireCOMBO
=
true
;
78
}
79
80
protected
:
81
int
ntriggered_forward_electron
;
82
int
nconsidered_forward_electron
;
83
84
// trigger variables
85
unsigned
int
n_ep_required
;
86
unsigned
int
n_em_required
;
87
unsigned
int
n_comb_required
;
88
float
pt_required
;
89
float
eta_low
;
90
float
eta_high
;
91
92
bool
RequireElectron
;
93
bool
RequirePositron
;
94
bool
RequireOR
;
95
bool
RequireAND
;
96
bool
RequireCOMBO
;
97
};
98
99
#endif
fun4all_coresoftware
blob
master
generators
PHPythia6
PHPy6ForwardElectronTrig.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:42
using
1.8.2 with
EIC GitHub integration