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
BDiJetModule.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file BDiJetModule.h
1
8
#ifndef __BDiJetModule_H__
9
#define __BDiJetModule_H__
10
11
// --- need to check all these includes...
12
#include <
fun4all/SubsysReco.h
>
13
// #include <GenFit/GFRaveVertex.h>
14
// #include <GenFit/Track.h>
15
#include <string>
16
#include <vector>
17
18
#include "TMath.h"
19
20
21
namespace
PHGenFit {
22
class
Track
;
23
}
/* namespace PHGenFit */
24
25
namespace
genfit {
26
class
GFRaveVertexFactory;
27
class
Track
;
28
class
GFRaveVertex;
29
}
/* namespace genfit */
30
31
namespace
PHGenFit {
32
class
Fitter;
33
}
/* namespace PHGenFit */
34
35
class
SvtxTrack
;
36
class
SvtxTrackMap
;
37
class
SvtxVertexMap
;
38
class
SvtxVertex
;
39
class
PHCompositeNode
;
40
class
PHG4TruthInfoContainer
;
41
class
SvtxClusterMap;
42
class
SvtxEvalStack
;
43
class
JetMap
;
44
45
class
TFile;
46
class
TTree;
47
48
class
BDiJetModule
:
public
SubsysReco
{
49
50
public
:
51
52
BDiJetModule
(
const
std::string
&
name
=
"BDiJetModule"
,
53
const
std::string
&ofName =
"out.root"
);
54
55
int
Init
(
PHCompositeNode
*);
56
int
InitRun
(
PHCompositeNode
*);
57
int
process_event
(
PHCompositeNode
*);
58
int
End
(
PHCompositeNode
*);
59
60
private
:
61
62
//-- Functions
63
void
ResetVariables
();
64
int
GetNodes
(
PHCompositeNode
*);
65
void
InitTree
();
66
67
PHGenFit::Track
*
MakeGenFitTrack
(
PHCompositeNode
*,
68
const
SvtxTrack
* intrack,
69
const
SvtxVertex
*
vertex
);
70
72
void
FillVertexMap
(
73
const
std::vector<genfit::GFRaveVertex*> & rave_vertices,
74
const
std::vector<genfit::Track*> & gf_tracks);
75
76
int
GetSVMass_mom
(
77
const
genfit::GFRaveVertex
* rave_vtx,
78
float
& vtx_mass,
79
float
& vtx_px,
80
float
& vtx_py,
81
float
& vtx_pz);
82
83
84
//-- Nodes
85
JetMap
*
_jetmap_truth
;
86
SvtxClusterMap*
_clustermap
;
87
SvtxTrackMap
*
_trackmap
;
88
SvtxVertexMap
*
_vertexmap
;
89
90
//-- Flags
91
// TODO: Make setters & getters
92
bool
_verbose
;
93
bool
_write_tree
;
94
bool
_ana_truth
;
95
bool
_ana_reco
;
96
bool
_do_evt_display
;
97
bool
_use_ladder_geom
;
98
bool
_cut_jet
;
99
bool
_cut_Ncluster
;
100
101
//-- Output
102
std::string
_foutname
;
103
TFile *
_f
;
104
TTree *
_tree
;
105
106
//-- Tree Variables
107
int
_b_event
;
108
109
int
_truthjet_n
;
110
int
_truthjet_parton_flavor
[10];
111
int
_truthjet_hadron_flavor
[10];
112
float
_truthjet_pt
[10];
113
float
_truthjet_eta
[10];
114
float
_truthjet_phi
[10];
115
116
float
gf_prim_vtx
[3];
117
float
gf_prim_vtx_err
[3];
118
int
gf_prim_vtx_ntrk
;
119
float
rv_prim_vtx
[3];
120
float
rv_prim_vtx_err
[3];
121
int
rv_prim_vtx_ntrk
;
122
123
int
rv_sv_njets
;
124
int
rv_sv_jet_id
[10];
125
int
rv_sv_jet_prop
[10][2];
126
float
rv_sv_jet_pT
[10];
127
float
rv_sv_jet_phi
[10];
128
129
int
rv_sv_pT00_nvtx
[10];
130
float
rv_sv_pT00_vtx_x
[10][30];
131
float
rv_sv_pT00_vtx_y
[10][30];
132
float
rv_sv_pT00_vtx_z
[10][30];
133
float
rv_sv_pT00_vtx_ex
[10][30];
134
float
rv_sv_pT00_vtx_ey
[10][30];
135
float
rv_sv_pT00_vtx_ez
[10][30];
136
int
rv_sv_pT00_vtx_ntrk
[10][30];
137
int
rv_sv_pT00_vtx_ntrk_good
[10][30];
138
float
rv_sv_pT00_vtx_mass
[10][30];
139
float
rv_sv_pT00_vtx_mass_corr
[10][30];
140
float
rv_sv_pT00_vtx_pT
[10][30];
141
142
143
//-- internal variables
144
int
_ievent
;
145
146
int
_primary_pid_guess
;
147
148
double
_cut_min_pT
;
149
double
_cut_chi2_ndf
;
150
double
_cut_jet_pT
;
151
double
_cut_jet_eta
;
152
double
_cut_jet_R
;
153
154
std::string
_track_fitting_alg_name
;
155
PHGenFit::Fitter
*
_fitter
;
156
158
std::string
_vertexing_method
;
159
genfit::GFRaveVertexFactory
*
_vertex_finder
;
160
161
};
162
163
#endif // __BDiJetModule_H__
analysis
blob
master
HF-Jet
HFDiJetMomImbalance
BDiJetModule.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:17:52
using
1.8.2 with
sPHENIX GitHub integration