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
TowerInfoContainer.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file TowerInfoContainer.h
1
#ifndef TOWERINFOCONTAINER_H
2
#define TOWERINFOCONTAINER_H
3
4
#include "
TowerInfo.h
"
5
6
#include <
phool/PHObject.h
>
7
8
#include <climits>
9
#include <map>
10
11
class
TowerInfoContainer
:
public
PHObject
12
{
13
public
:
14
typedef
std::map<unsigned int, TowerInfo*>
TowerMap
;
15
typedef
TowerMap::const_iterator
ConstIter
;
16
typedef
TowerMap::iterator
Iter
;
17
18
enum
DETECTOR
19
{
20
EMCAL
= 0,
21
HCAL
= 1,
22
SEPD
= 2,
23
MBD
= 3,
24
ZDC
= 4,
25
DETECTOR_INVALID
= 9999
26
};
27
28
TowerInfoContainer
() =
default
;
29
~TowerInfoContainer
()
override
=
default
;
30
void
identify
(std::ostream&
os
= std::cout)
const override
;
31
32
virtual
void
Reset
()
override
{}
33
virtual
TowerInfo
*
get_tower_at_channel
(
int
/*index*/
) {
return
nullptr
; }
34
virtual
TowerInfo
*
get_tower_at_key
(
int
/*key*/
) {
return
nullptr
; }
35
virtual
size_t
size
()
const
{
return
0; }
36
37
virtual
unsigned
int
encode_key
(
unsigned
int
/*towerIndex*/
) {
return
UINT_MAX; }
38
virtual
unsigned
int
decode_key
(
unsigned
int
/*towerIndex*/
) {
return
UINT_MAX; }
39
40
virtual
unsigned
int
encode_epd
(
unsigned
int
/*towerIndex*/
);
41
virtual
unsigned
int
encode_hcal
(
unsigned
int
/*towerIndex*/
);
42
virtual
unsigned
int
encode_emcal
(
unsigned
int
/*towerIndex*/
);
43
virtual
unsigned
int
encode_mbd
(
unsigned
int
/*towerIndex*/
);
44
virtual
unsigned
int
encode_zdc
(
unsigned
int
/*towerIndex*/
);
45
46
virtual
unsigned
int
decode_epd
(
unsigned
int
/*towerIndex*/
);
47
virtual
unsigned
int
decode_hcal
(
unsigned
int
/*towerIndex*/
);
48
virtual
unsigned
int
decode_emcal
(
unsigned
int
/*towerIndex*/
);
49
virtual
unsigned
int
decode_mbd
(
unsigned
int
/*towerIndex*/
);
50
virtual
unsigned
int
decode_zdc
(
unsigned
int
/*towerIndex*/
);
51
52
virtual
unsigned
int
getTowerPhiBin
(
unsigned
int
/*towerIndex*/
);
53
virtual
unsigned
int
getTowerEtaBin
(
unsigned
int
/*towerIndex*/
);
54
55
virtual
DETECTOR
get_detectorid
()
const
{
return
DETECTOR_INVALID
;}
56
57
private
:
58
ClassDefOverride
(
TowerInfoContainer
, 1);
59
};
60
61
#endif
coresoftware
blob
master
offline
packages
CaloBase
TowerInfoContainer.h
Built by
Jin Huang
. updated:
Sat Feb 17 2024 22:18:05
using
1.8.2 with
sPHENIX GitHub integration