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
TpcClusterizer.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file TpcClusterizer.h
1
#ifndef TPC_TPCCLUSTERIZER_H
2
#define TPC_TPCCLUSTERIZER_H
3
4
#include <
fun4all/SubsysReco.h
>
5
#include <
trackbase/TrkrCluster.h
>
6
#include <
trackbase/ActsSurfaceMaps.h
>
7
#include <
trackbase/ActsTrackingGeometry.h
>
8
9
#include <map>
10
#include <vector>
11
#include <string>
12
13
class
PHCompositeNode
;
14
class
TrkrHitSet
;
15
class
TrkrHitSetContainer
;
16
class
TrkrClusterContainer
;
17
class
TrkrClusterHitAssoc
;
18
class
PHG4CylinderCellGeom
;
19
class
PHG4CylinderCellGeomContainer
;
20
21
//typedef std::pair<int, int> iphiz;
22
//typedef std::pair<double, iphiz> ihit;
23
typedef
std::pair<unsigned short, unsigned short>
iphiz
;
24
typedef
std::pair<unsigned short, iphiz>
ihit
;
25
26
class
TpcClusterizer
:
public
SubsysReco
27
{
28
public
:
29
TpcClusterizer
(
const
std::string &
name
=
"TpcClusterizer"
);
30
~TpcClusterizer
()
override
=
default
;
31
32
int
InitRun
(
PHCompositeNode
*topNode)
override
;
33
int
process_event
(
PHCompositeNode
*topNode)
override
;
34
int
End
(
PHCompositeNode
*topNode)
override
;
35
36
void
set_sector_fiducial_cut
(
const
double
cut){
SectorFiducialCut
= cut; }
37
void
set_do_hit_association
(
bool
do_assoc){
do_hit_assoc
= do_assoc;}
38
void
set_max_cluster_half_size_phi
(
unsigned
short
size) {
MaxClusterHalfSizePhi
= size ;}
39
void
set_max_cluster_half_size_z
(
unsigned
short
size) {
MaxClusterHalfSizeZ
= size ;}
40
41
void
set_drift_velocity_scale
(
double
value
) {
m_drift_velocity_scale
=
value
; }
42
43
private
:
44
bool
is_in_sector_boundary
(
int
phibin,
int
sector,
PHG4CylinderCellGeom
*layergeom)
const
;
45
46
TrkrHitSetContainer
*
m_hits
=
nullptr
;
47
TrkrClusterContainer
*
m_clusterlist
=
nullptr
;
48
TrkrClusterHitAssoc
*
m_clusterhitassoc
=
nullptr
;
49
ActsSurfaceMaps
*
m_surfMaps
=
nullptr
;
50
ActsTrackingGeometry
*
m_tGeometry
=
nullptr
;
51
52
bool
do_hit_assoc
=
true
;
53
double
pedestal
= 74.4;
54
double
SectorFiducialCut
= 0.5;
55
unsigned
short
MaxClusterHalfSizePhi
= 3;
56
unsigned
short
MaxClusterHalfSizeZ
= 5;
57
59
63
double
m_drift_velocity_scale
= 1.0;
64
65
// TPC shaping offset correction parameters
66
// From Tony Frawley May 13, 2021
67
double
par0_neg
= 0.0503;
68
double
par0_pos
= -0.0503;
69
70
};
71
72
#endif
fun4all_coresoftware
blob
master
offline
packages
tpc
TpcClusterizer.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:45
using
1.8.2 with
EIC GitHub integration