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
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
SvtxEvaluator.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file SvtxEvaluator.h
1
#ifndef G4EVAL_SVTXEVALUATOR_H
2
#define G4EVAL_SVTXEVALUATOR_H
3
4
//===============================================
8
//===============================================
9
10
#include <
fun4all/SubsysReco.h
>
11
12
#include <string>
13
#include <TMatrixFfwd.h>
14
#include <TMatrixT.h>
15
#include <TMatrixTUtils.h>
16
17
class
PHCompositeNode
;
18
class
PHTimer
;
19
class
TrkrCluster
;
20
class
SvtxEvalStack
;
21
class
TFile;
22
class
TNtuple;
23
//class TrkrClusterContainer;
24
33
class
SvtxEvaluator
:
public
SubsysReco
34
{
35
public
:
36
SvtxEvaluator
(
const
std::string &
name
=
"SVTXEVALUATOR"
,
37
const
std::string &
filename
=
"g4eval.root"
,
38
const
std::string &trackmapname =
"SvtxTrackMap"
,
39
unsigned
int
nlayers_maps = 3,
40
unsigned
int
nlayers_intt = 8,
41
unsigned
int
nlayers_tpc = 48,
42
unsigned
int
nlayers_mms = 2);
43
~SvtxEvaluator
()
override
;
44
45
int
Init
(
PHCompositeNode
*topNode)
override
;
46
int
InitRun
(
PHCompositeNode
*topNode)
override
;
47
int
process_event
(
PHCompositeNode
*topNode)
override
;
48
int
End
(
PHCompositeNode
*topNode)
override
;
49
// void do_primaries(bool b);
50
51
void
set_strict
(
bool
b
) {
_strict
=
b
; }
52
void
set_use_initial_vertex
(
bool
use_init_vtx) {
_use_initial_vertex
= use_init_vtx;}
53
void
set_use_genfit_vertex
(
bool
use_genfit_vtx) {
_use_genfit_vertex
= use_genfit_vtx;}
54
void
do_info_eval
(
bool
b
) {
_do_info_eval
=
b
; }
55
void
do_vertex_eval
(
bool
b
) {
_do_vertex_eval
=
b
; }
56
void
do_gpoint_eval
(
bool
b
) {
_do_gpoint_eval
=
b
; }
57
void
do_g4hit_eval
(
bool
b
) {
_do_g4hit_eval
=
b
; }
58
void
do_hit_eval
(
bool
b
) {
_do_hit_eval
=
b
; }
59
void
do_cluster_eval
(
bool
b
) {
_do_cluster_eval
=
b
; }
60
void
do_g4cluster_eval
(
bool
b
) {
_do_g4cluster_eval
=
b
; }
61
void
do_gtrack_eval
(
bool
b
) {
_do_gtrack_eval
=
b
; }
62
void
do_track_eval
(
bool
b
) {
_do_track_eval
=
b
; }
63
void
do_gseed_eval
(
bool
b
) {
_do_gseed_eval
=
b
; }
64
65
void
do_track_match
(
bool
b
) {
_do_track_match
=
b
; }
66
void
do_eval_light
(
bool
b
) {
_do_eval_light
=
b
; }
67
void
do_vtx_eval_light
(
bool
b
) {
_do_vtx_eval_light
=
b
;}
68
void
scan_for_embedded
(
bool
b
) {
_scan_for_embedded
=
b
; }
69
void
scan_for_primaries
(
bool
b
) {
_scan_for_primaries
=
b
; }
70
71
72
private
:
73
unsigned
int
_ievent
;
74
unsigned
int
_iseed
;
75
float
m_fSeed
;
76
// eval stack
77
SvtxEvalStack
*
_svtxevalstack
;
78
79
TMatrixF
calculateClusterError
(
TrkrCluster
*
c
,
float
& clusphi);
80
81
//TrkrClusterContainer *cluster_map{nullptr};
82
83
//----------------------------------
84
// evaluator output ntuples
85
86
bool
_strict
;
87
bool
_use_initial_vertex
=
true
;
88
bool
_use_genfit_vertex
=
false
;
89
unsigned
int
_errors
;
90
91
bool
_do_info_eval
;
92
bool
_do_vertex_eval
;
93
bool
_do_gpoint_eval
;
94
bool
_do_g4hit_eval
;
95
bool
_do_hit_eval
;
96
bool
_do_cluster_eval
;
97
bool
_do_g4cluster_eval
;
98
bool
_do_gtrack_eval
;
99
bool
_do_track_eval
;
100
bool
_do_gseed_eval
;
101
102
bool
_do_track_match
;
103
bool
_do_eval_light
;
104
bool
_do_vtx_eval_light
;
105
bool
_scan_for_embedded
;
106
bool
_scan_for_primaries
;
107
108
unsigned
int
_nlayers_maps
= 3;
109
unsigned
int
_nlayers_intt
= 4;
110
unsigned
int
_nlayers_tpc
= 48;
111
unsigned
int
_nlayers_mms
= 2;
112
113
TNtuple *
_ntp_info
;
114
TNtuple *
_ntp_vertex
;
115
TNtuple *
_ntp_gpoint
;
116
TNtuple *
_ntp_g4hit
;
117
TNtuple *
_ntp_hit
;
118
TNtuple *
_ntp_cluster
;
119
TNtuple *
_ntp_g4cluster
;
120
TNtuple *
_ntp_gtrack
;
121
TNtuple *
_ntp_track
;
122
TNtuple *
_ntp_gseed
;
123
124
// evaluator output file
125
std::string
_filename
;
126
//Track map name
127
std::string
_trackmapname
;
128
TFile *
_tfile
;
129
130
PHTimer
*
_timer
;
131
132
// output subroutines
133
void
fillOutputNtuples
(
PHCompositeNode
*topNode);
134
void
printInputInfo
(
PHCompositeNode
*topNode);
135
void
printOutputInfo
(
PHCompositeNode
*topNode);
136
};
137
138
#endif // G4EVAL_SVTXEVALUATOR_H
coresoftware
blob
master
simulation
g4simulation
g4eval
SvtxEvaluator.h
Built by
Jin Huang
. updated:
Wed Jun 29 2022 17:24:42
using
1.8.2 with
ECCE GitHub integration