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
PHG4CylinderCellGeom_Spacalv1.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file PHG4CylinderCellGeom_Spacalv1.h
1
// Tell emacs that this is a C++ source
2
// -*- C++ -*-.
3
// $Id: $
4
13
#ifndef G4DETECTORS_PHG4CYLINDERCELLGEOMSPACALV1_H
14
#define G4DETECTORS_PHG4CYLINDERCELLGEOMSPACALV1_H
15
16
#include "
PHG4CylinderCellGeom.h
"
17
18
#include <iostream>
// for cout, ostream
19
#include <map>
20
#include <utility>
// for pair
21
25
class
PHG4CylinderCellGeom_Spacalv1
:
public
PHG4CylinderCellGeom
26
{
27
public
:
28
PHG4CylinderCellGeom_Spacalv1
();
29
~PHG4CylinderCellGeom_Spacalv1
()
override
;
30
31
void
identify
(std::ostream&
os
= std::cout)
const override
;
32
33
std::pair<double, double>
34
get_zbounds
(
const
int
ibin
)
const override
;
35
std::pair<double, double>
36
get_etabounds
(
const
int
ibin)
const override
;
37
38
double
39
get_etacenter
(
const
int
ibin)
const override
;
40
double
41
get_zcenter
(
const
int
ibin)
const override
;
42
43
int
get_etabin
(
const
double
eta
)
const override
;
44
int
get_zbin
(
const
double
z
)
const override
;
45
46
void
47
set_zbounds
(
const
int
ibin,
const
std::pair<double, double>&
bounds
);
48
void
49
set_etabounds
(
const
int
ibin,
const
std::pair<double, double>& bounds);
50
51
typedef
std::pair<double, double>
bound_t
;
52
typedef
std::map<int, bound_t>
bound_map_t
;
53
54
const
bound_map_t
&
55
get_eta_bound_map
()
const
56
{
57
map_consistency_check
();
58
return
eta_bound_map
;
59
}
60
61
void
62
set_eta_bound_map
(
const
bound_map_t
& etaBoundMap)
63
{
64
eta_bound_map
= etaBoundMap;
65
}
66
67
const
bound_map_t
&
68
get_z_bound_map
()
const
69
{
70
map_consistency_check
();
71
return
z_bound_map
;
72
}
73
74
void
75
set_z_bound_map
(
const
bound_map_t
& boundMap)
76
{
77
z_bound_map
= boundMap;
78
}
79
81
typedef
std::map<int, int>
tower_z_ID_eta_bin_map_t
;
82
84
const
tower_z_ID_eta_bin_map_t
&
85
get_tower_z_ID_eta_bin_map
()
const
86
{
87
return
tower_z_ID_eta_bin_map
;
88
}
89
90
virtual
int
91
get_etabin_block
(
const
int
tower_z_ID)
const
;
92
94
void
95
set_tower_z_ID_eta_bin_map
(
const
tower_z_ID_eta_bin_map_t
&
m
)
96
{
97
tower_z_ID_eta_bin_map
=
m
;
98
}
99
100
protected
:
101
void
102
map_consistency_check
()
const
;
103
104
bound_map_t
z_bound_map
;
105
bound_map_t
eta_bound_map
;
106
108
tower_z_ID_eta_bin_map_t
tower_z_ID_eta_bin_map
;
109
110
ClassDefOverride(
PHG4CylinderCellGeom_Spacalv1
, 2)
111
};
112
113
#endif
/* PHG4CYLINDERCELLGEOMSPACALV1_H_ */
coresoftware
blob
master
simulation
g4simulation
g4detectors
PHG4CylinderCellGeom_Spacalv1.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:12
using
1.8.2 with
sPHENIX GitHub integration