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
RawTowerGeomv2.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file RawTowerGeomv2.h
1
#ifndef CALOBASE_RAWTOWERGEOMV2_H
2
#define CALOBASE_RAWTOWERGEOMV2_H
3
4
#include "
RawTowerGeom.h
"
5
6
#include "
RawTowerDefs.h
"
7
8
#include <iostream>
9
10
class
RawTowerGeomv2
:
public
RawTowerGeom
11
{
12
public
:
13
RawTowerGeomv2
() {}
14
RawTowerGeomv2
(
RawTowerDefs::keytype
id
);
15
~RawTowerGeomv2
()
override
{}
16
17
void
identify
(std::ostream&
os
= std::cout)
const override
;
18
19
void
set_id
(
RawTowerDefs::keytype
key)
override
{
_towerid
= key; }
20
RawTowerDefs::keytype
get_id
()
const override
{
return
_towerid
; }
21
22
int
get_bineta
()
const override
{
return
RawTowerDefs::decode_index1
(
_towerid
); }
23
int
get_binphi
()
const override
{
return
RawTowerDefs::decode_index2
(
_towerid
); }
24
int
get_column
()
const override
{
return
RawTowerDefs::decode_index1
(
_towerid
); }
25
int
get_row
()
const override
{
return
RawTowerDefs::decode_index2
(
_towerid
); }
26
27
void
set_center_x
(
double
x
)
override
28
{
29
_center_x
=
x
;
30
return
;
31
}
32
void
set_center_y
(
double
y
)
override
33
{
34
_center_y
=
y
;
35
return
;
36
}
37
void
set_center_z
(
double
z
)
override
38
{
39
_center_z
=
z
;
40
return
;
41
}
42
43
void
set_size_x
(
double
dx)
override
44
{
45
_size_x
= dx;
46
return
;
47
}
48
void
set_size_y
(
double
dy
)
override
49
{
50
_size_y
=
dy
;
51
return
;
52
}
53
void
set_size_z
(
double
dz
)
override
54
{
55
_size_z
=
dz
;
56
return
;
57
}
58
59
double
get_center_x
()
const override
{
return
_center_x
; }
60
double
get_center_y
()
const override
{
return
_center_y
; }
61
double
get_center_z
()
const override
{
return
_center_z
; }
62
63
double
get_size_x
()
const override
{
return
_size_x
; }
64
double
get_size_y
()
const override
{
return
_size_y
; }
65
double
get_size_z
()
const override
{
return
_size_z
; }
66
double
get_volume
()
const override
{
return
(
_size_x
*
_size_y
*
_size_z
); }
67
68
double
get_center_radius
()
const override
;
69
double
get_eta
()
const override
;
70
double
get_phi
()
const override
;
71
72
protected
:
73
RawTowerDefs::keytype
_towerid
= ~0U;
74
75
double
_center_x
= 0.;
76
double
_center_y
= 0.;
77
double
_center_z
= 0.;
78
79
double
_size_x
= 0.;
80
double
_size_y
= 0.;
81
double
_size_z
= 0.;
82
83
ClassDefOverride(
RawTowerGeomv2
, 3)
84
};
85
86
#endif
coresoftware
blob
master
offline
packages
CaloBase
RawTowerGeomv2.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:05
using
1.8.2 with
sPHENIX GitHub integration