ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArGeoModel
LArReadoutGeometry
LArReadoutGeometry
EMBDetectorRegion.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef LARREADOUTGEOMETRY_EMBDETECTORREGION_H
6
#define LARREADOUTGEOMETRY_EMBDETECTORREGION_H
7
#include "
LArReadoutGeometry/EMBCellConstLink.h
"
8
#include "
LArReadoutGeometry/EMBDetDescr.h
"
9
#include "GeoModelKernel/GeoVDetectorElement.h"
10
#include "GeoModelKernel/GeoDefinitions.h"
11
#include "
GeoPrimitives/GeoPrimitives.h
"
12
24
25
class
GeoAlignmentStore
;
26
27
class
EMBDetectorRegion
:
public
GeoVDetectorElement
28
{
29
30
public
:
31
32
typedef
enum
{
NEG
=0,
POS
=1}
DetectorSide
;
33
34
38
EMBDetectorRegion
(
const
GeoVFullPhysVol *physVol,
const
EMBDetDescr
*embDescriptor,
DetectorSide
endcap);
39
43
~EMBDetectorRegion
();
44
48
EMBCellConstLink
getEMBCell
(
unsigned
int
ieta,
unsigned
int
iphi)
const
;
49
53
const
EMBDetDescr
*
getDescriptor
()
const
;
54
58
unsigned
int
getSamplingIndex
()
const
;
59
63
unsigned
int
getRegionIndex
()
const
;
64
68
unsigned
int
beginPhiIndex
()
const
;
69
73
unsigned
int
endPhiIndex
()
const
;
74
78
unsigned
int
beginEtaIndex
()
const
;
79
83
unsigned
int
endEtaIndex
()
const
;
84
88
const
Amg::Transform3D
&
getAbsoluteTransform
(
const
GeoAlignmentStore
* alignStore=
nullptr
)
const
;
89
93
const
Amg::Transform3D
&
getDefAbsoluteTransform
(
const
GeoAlignmentStore
* alignStore=
nullptr
)
const
;
94
98
EMBDetectorRegion::DetectorSide
getEndcapIndex
()
const
;
99
100
private
:
101
102
EMBDetectorRegion
(
const
EMBDetectorRegion
&right);
103
EMBDetectorRegion
&
operator=
(
const
EMBDetectorRegion
&right);
104
GeoIntrusivePtr<const EMBDetDescr>
m_descriptor
{};
105
EMBDetectorRegion::DetectorSide
m_endcapIndex
;
106
};
107
108
109
110
111
112
inline
const
EMBDetDescr
*
EMBDetectorRegion::getDescriptor
()
const
113
{
114
115
return
m_descriptor
;
116
117
}
118
119
inline
unsigned
int
EMBDetectorRegion::getSamplingIndex
()
const
120
{
121
122
return
m_descriptor
->getSamplingIndex();
123
124
}
125
126
inline
unsigned
int
EMBDetectorRegion::getRegionIndex
()
const
127
{
128
129
return
m_descriptor
->getRegionIndex();
130
131
}
132
133
inline
unsigned
int
EMBDetectorRegion::beginPhiIndex
()
const
134
{
135
136
return
m_descriptor
->getPhiBinning().getFirstDivisionNumber();
137
138
}
139
140
inline
unsigned
int
EMBDetectorRegion::endPhiIndex
()
const
141
{
142
143
return
m_descriptor
->getPhiBinning().getFirstDivisionNumber() +
m_descriptor
->getPhiBinning().getNumDivisions();
144
145
}
146
147
inline
unsigned
int
EMBDetectorRegion::beginEtaIndex
()
const
148
{
149
150
return
m_descriptor
->getEtaBinning().getFirstDivisionNumber();
151
152
}
153
154
inline
unsigned
int
EMBDetectorRegion::endEtaIndex
()
const
155
{
156
157
return
m_descriptor
->getEtaBinning().getFirstDivisionNumber() +
m_descriptor
->getEtaBinning().getNumDivisions();
158
159
}
160
161
162
163
inline
EMBDetectorRegion::DetectorSide
EMBDetectorRegion::getEndcapIndex
()
const
164
{
165
166
return
m_endcapIndex
;
167
168
}
169
170
171
172
173
174
#endif
EMBCellConstLink.h
EMBCellConstLink
GeoIntrusivePtr< const EMBCell > EMBCellConstLink
Definition
EMBCellConstLink.h:10
EMBDetDescr.h
GeoPrimitives.h
EMBDetDescr
Descriptor for regions of the electromagnetic barrel calorimeter.
Definition
EMBDetDescr.h:27
EMBDetectorRegion::getDescriptor
const EMBDetDescr * getDescriptor() const
Returns the Descriptor for this region.
Definition
EMBDetectorRegion.h:112
EMBDetectorRegion::beginPhiIndex
unsigned int beginPhiIndex() const
Returns the first phi index in the region.
Definition
EMBDetectorRegion.h:133
EMBDetectorRegion::getEMBCell
EMBCellConstLink getEMBCell(unsigned int ieta, unsigned int iphi) const
Access to Cells.
Definition
EMBDetectorRegion.cxx:22
EMBDetectorRegion::DetectorSide
DetectorSide
Definition
EMBDetectorRegion.h:32
EMBDetectorRegion::NEG
@ NEG
Definition
EMBDetectorRegion.h:32
EMBDetectorRegion::POS
@ POS
Definition
EMBDetectorRegion.h:32
EMBDetectorRegion::m_descriptor
GeoIntrusivePtr< const EMBDetDescr > m_descriptor
Definition
EMBDetectorRegion.h:104
EMBDetectorRegion::getSamplingIndex
unsigned int getSamplingIndex() const
Returns the Sampling Layer Index.
Definition
EMBDetectorRegion.h:119
EMBDetectorRegion::operator=
EMBDetectorRegion & operator=(const EMBDetectorRegion &right)
EMBDetectorRegion::getEndcapIndex
EMBDetectorRegion::DetectorSide getEndcapIndex() const
The endcap index.
Definition
EMBDetectorRegion.h:163
EMBDetectorRegion::EMBDetectorRegion
EMBDetectorRegion(const GeoVFullPhysVol *physVol, const EMBDetDescr *embDescriptor, DetectorSide endcap)
Constructor.
Definition
EMBDetectorRegion.cxx:11
EMBDetectorRegion::getRegionIndex
unsigned int getRegionIndex() const
Returns the Region Index.
Definition
EMBDetectorRegion.h:126
EMBDetectorRegion::beginEtaIndex
unsigned int beginEtaIndex() const
Returns the first eta index in the region.
Definition
EMBDetectorRegion.h:147
EMBDetectorRegion::getDefAbsoluteTransform
const Amg::Transform3D & getDefAbsoluteTransform(const GeoAlignmentStore *alignStore=nullptr) const
Returns the absolute transform of this element.
Definition
EMBDetectorRegion.cxx:35
EMBDetectorRegion::endEtaIndex
unsigned int endEtaIndex() const
Returns the end eta index in the region.
Definition
EMBDetectorRegion.h:154
EMBDetectorRegion::m_endcapIndex
EMBDetectorRegion::DetectorSide m_endcapIndex
Definition
EMBDetectorRegion.h:105
EMBDetectorRegion::EMBDetectorRegion
EMBDetectorRegion(const EMBDetectorRegion &right)
EMBDetectorRegion::getAbsoluteTransform
const Amg::Transform3D & getAbsoluteTransform(const GeoAlignmentStore *alignStore=nullptr) const
Returns the absolute transform of this element.
Definition
EMBDetectorRegion.cxx:27
EMBDetectorRegion::endPhiIndex
unsigned int endPhiIndex() const
Returns the end phi index in the region.
Definition
EMBDetectorRegion.h:140
EMBDetectorRegion::~EMBDetectorRegion
~EMBDetectorRegion()
Destructor.
GeoAlignmentStore
Ensure that the extensions for the Vector3D are properly loaded.
Definition
GeoAlignmentStore.h:24
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition
GeoPrimitives.h:46
Generated on
for ATLAS Offline Software by
1.17.0