ATLAS Offline Software
Loading...
Searching...
No Matches
LArCalorimeter
LArCafJobs
LArCafJobs
CellInfo.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
10
11
#ifndef LArCellInfo_H
12
#define LArCellInfo_H
13
14
#include "TVector3.h"
15
16
#include "
LArCafJobs/CaloId.h
"
17
18
#include "
CaloIdentifier/CaloGain.h
"
19
//#include "LArCafJobs/TestObject2.h"
20
#include "
CxxUtils/checker_macros.h
"
21
22
class
TH2;
23
class
TH2D;
24
class
TProfile2D;
25
26
namespace
LArSamples
{
27
28
class
ShapeInfo;
29
30
31
class
ATLAS_NOT_THREAD_SAFE
CellInfo
final{
32
33
public
:
34
36
CellInfo
();
37
38
CellInfo
(
CaloId
calo
,
short
layer
= -1,
39
short
iEta
= -1,
short
iPhi
= -1,
short
feedThrough
= -1,
short
slot
= -1,
short
channel
= -1,
40
ShapeInfo
* shapeL = 0,
ShapeInfo
* shapeM = 0,
ShapeInfo
* shapeH = 0,
const
TVector3&
position
= TVector3(0,0,0), ULong64_t
onlid
= -1);
41
42
CellInfo
(
const
CellInfo
& other,
bool
withShapes =
true
);
43
44
CellInfo
(
CellInfo
&& other)
noexcept
;
45
47
~CellInfo
();
48
50
CaloId
calo
()
const
{
return
(
CaloId
)
m_calo
; }
51
53
short
layer
()
const
{
return
m_layer
; }
54
56
short
iEta
()
const
{
return
(
m_iEta
< 0 ? -1 : (
m_iEta
& 0x3ff)); }
// bottom 10 bits
57
59
short
region
()
const
{
return
(
m_iEta
< 0 ? -1 : (
m_iEta
-
iEta
())>>10); }
// top 5 bits (Actually 3 max)
60
62
short
iPhi
()
const
{
return
m_iPhi
; }
63
65
short
feedThrough
()
const
{
return
m_feedThrough
; }
66
68
short
slot
()
const
{
return
m_slot
; }
69
71
short
feb()
const
;
72
short
globalFeb()
const
;
73
short
globalPhiRing()
const
;
74
76
short
channel
()
const
{
return
m_channel
; }
77
79
TString location(
int
verbose
= 1)
const
;
80
TVector3 position()
const
;
81
82
bool
isValid
()
const
;
83
84
const
ShapeInfo
* shape(
CaloGain::CaloGain
gain)
const
;
85
86
double
footprint()
const
;
87
88
PartitionId
partition()
const
;
89
90
ULong64_t
onlid
()
const
{
return
m_onlid
; }
91
92
double
rt
()
const
{
return
m_rt
; }
93
double
eta
()
const
{
return
m_eta
; }
94
double
phi
()
const
{
return
m_phi
; }
95
96
bool
setShape(
CaloGain::CaloGain
gain,
ShapeInfo
* shape);
97
98
private
:
99
100
unsigned
int
m_calo
;
101
short
m_layer
,
m_iEta
,
m_iPhi
,
m_feedThrough
,
m_slot
,
m_channel
;
102
ShapeInfo
*
m_shapeL
, *
m_shapeM
, *
m_shapeH
;
103
double
m_rt
,
m_eta
,
m_phi
;
104
ULong64_t
m_onlid
;
105
106
CellInfo
& operator= (
const
CellInfo
&);
107
};
108
}
109
#endif
110
isValid
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
Definition
AtlasPID.h:878
CaloGain.h
CaloId.h
checker_macros.h
Define macros for attributes used to control the static checker.
ATLAS_NOT_THREAD_SAFE
#define ATLAS_NOT_THREAD_SAFE
getNoisyStrip() Find noisy strips from hitmaps and write out into xml/db formats
Definition
checker_macros.h:212
LArSamples::CellInfo::eta
double eta() const
Definition
CellInfo.h:93
LArSamples::CellInfo::slot
short slot() const
Definition
CellInfo.h:68
LArSamples::CellInfo::layer
short layer() const
Definition
CellInfo.h:53
LArSamples::CellInfo::position
TVector3 position() const
Definition
CellInfo.cxx:204
LArSamples::CellInfo::m_eta
double m_eta
Definition
CellInfo.h:103
LArSamples::CellInfo::feedThrough
short feedThrough() const
Definition
CellInfo.h:65
LArSamples::CellInfo::m_feedThrough
short m_feedThrough
Definition
CellInfo.h:101
LArSamples::CellInfo::m_layer
short m_layer
Definition
CellInfo.h:101
LArSamples::CellInfo::m_shapeM
ShapeInfo * m_shapeM
Definition
CellInfo.h:102
LArSamples::CellInfo::region
short region() const
Definition
CellInfo.h:59
LArSamples::CellInfo::phi
double phi() const
Definition
CellInfo.h:94
LArSamples::CellInfo::onlid
ULong64_t onlid() const
Definition
CellInfo.h:90
LArSamples::CellInfo::m_slot
short m_slot
Definition
CellInfo.h:101
LArSamples::CellInfo::m_shapeL
ShapeInfo * m_shapeL
Definition
CellInfo.h:102
LArSamples::CellInfo::m_channel
short m_channel
Definition
CellInfo.h:101
LArSamples::CellInfo::rt
double rt() const
Definition
CellInfo.h:92
LArSamples::CellInfo::iPhi
short iPhi() const
Definition
CellInfo.h:62
LArSamples::CellInfo::m_rt
double m_rt
Definition
CellInfo.h:103
LArSamples::CellInfo::m_iPhi
short m_iPhi
Definition
CellInfo.h:101
LArSamples::CellInfo::m_onlid
ULong64_t m_onlid
Definition
CellInfo.h:104
LArSamples::CellInfo::m_iEta
short m_iEta
Definition
CellInfo.h:101
LArSamples::CellInfo::calo
CaloId calo() const
Definition
CellInfo.h:50
LArSamples::CellInfo::m_phi
double m_phi
Definition
CellInfo.h:103
LArSamples::CellInfo::m_shapeH
ShapeInfo * m_shapeH
Definition
CellInfo.h:102
LArSamples::CellInfo::CellInfo
CellInfo()
Constructor.
Definition
CellInfo.cxx:19
LArSamples::CellInfo::channel
short channel() const
Definition
CellInfo.h:76
LArSamples::CellInfo::m_calo
unsigned int m_calo
Definition
CellInfo.h:100
LArSamples::CellInfo::iEta
short iEta() const
Definition
CellInfo.h:56
LArSamples::ShapeInfo
Definition
ShapeInfo.h:24
verbose
bool verbose
Definition
hcg.cxx:73
CaloGain::CaloGain
CaloGain
Definition
CaloGain.h:11
LArSamples
Definition
AbsShape.h:24
LArSamples::CaloId
CaloId
Definition
CaloId.h:21
LArSamples::PartitionId
PartitionId
Definition
CaloId.h:29
Generated on
for ATLAS Offline Software by
1.14.0