ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
InnerDetector
InDetDetDescr
InDetReadoutGeometry
InDetReadoutGeometry
SiDetectorDesign.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// SiDetectorDesign.h
8
9
#ifndef INDETREADOUTGEOMETRY_SIDETECTORDESIGN_H
10
#define INDETREADOUTGEOMETRY_SIDETECTORDESIGN_H
11
12
//Base class
13
#include "
ReadoutGeometryBase/DetectorDesign.h
"
14
// Input/output classes
15
#include "
ReadoutGeometryBase/SiDiodesParameters.h
"
16
#include "
ReadoutGeometryBase/InDetDD_Defs.h
"
17
#include "CLHEP/Geometry/Point3D.h"
18
#include "CLHEP/Geometry/Vector3D.h"
19
#include "
AtlasDetDescr/AtlasDetectorID.h
"
20
#include "
GeoPrimitives/GeoPrimitives.h
"
21
22
#include <list>
23
#include <vector>
24
25
26
class
Identifier
;
27
28
namespace
Trk
{
29
class
SurfaceBounds
;
30
}
31
32
namespace
InDetDD
{
33
class
SiReadoutCellId
;
34
class
SiCellId
;
35
class
SiDiode;
36
class
SiReadoutCell;
37
class
SiLocalPosition
;
38
class
SiIntersect
;
39
49
50
class
SiDetectorDesign
:
public
DetectorDesign
{
51
53
// Public methods:
55
public
:
66
SiDetectorDesign
(
double
thickness
,
67
bool
phiSymmetric
,
68
bool
etaSymmetric
,
69
bool
depthSymmetric
,
70
InDetDD::CarrierType
carrierType
,
71
int
readoutSide
);
72
73
SiDetectorDesign
(
double
thickness
,
74
bool
phiSymmetric
,
75
bool
etaSymmetric
,
76
bool
depthSymmetric
,
77
InDetDD::CarrierType
carrierType
,
78
int
readoutSide
,
79
SiDetectorDesign::Axis
stripDirection,
80
SiDetectorDesign::Axis
depthDirection);
81
82
84
virtual
~SiDetectorDesign
();
85
87
// Const methods:
89
90
virtual
double
sinStripAngleReco
(
double
phiCoord,
double
etaCoord)
const
;
91
93
virtual
bool
nearBondGap
(
const
SiLocalPosition
&localPosition,
94
double
etaTol)
const
= 0;
95
97
virtual
int
strip1Dim
(
int
strip
,
int
row)
const
;
98
99
101
// Pure virtual methods:
103
104
virtual
HepGeom::Vector3D<double>
phiMeasureSegment
(
const
SiLocalPosition
&position)
105
const
= 0;
106
108
virtual
std::pair<SiLocalPosition, SiLocalPosition>
endsOfStrip
(
109
const
SiLocalPosition
&position)
const
= 0;
110
113
virtual
SiCellId
gangedCell
(
const
SiCellId
&cellId)
const
= 0;
114
115
117
// Private methods:
119
private
:
120
SiDetectorDesign
();
121
122
// Disallow Copy and assignment;
123
SiDetectorDesign
(
const
SiDetectorDesign
&design);
124
SiDetectorDesign
&
operator =
(
const
SiDetectorDesign
&design);
125
126
};
127
129
// Inline methods:
131
132
inline
double
SiDetectorDesign::sinStripAngleReco
(
double
/* x */
,
double
/* y */
)
const
{
133
return
0.0;
// pixel and barrel strip sensors always zero
134
}
135
136
inline
int
SiDetectorDesign::strip1Dim
(
int
,
int
)
const
{
137
return
-1.0;
138
}
139
140
}
// namespace InDetDD
141
#endif
// INDETREADOUTGEOMETRY_SIDETECTORDESIGN_H
AtlasDetectorID.h
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
DetectorDesign.h
SiliconTech::strip
@ strip
Definition
FPGATrackSimTypes.h:25
GeoPrimitives.h
InDetDD_Defs.h
SiDiodesParameters.h
InDetDD::DetectorDesign::Axis
Axis
Definition
DetectorDesign.h:59
InDetDD::DetectorDesign::DetectorDesign
DetectorDesign(double thickness, bool phiSymmetric, bool etaSymmetric, bool depthSymmetric, InDetDD::CarrierType carrierType, int readoutSide)
Constructor.
Definition
DetectorDesign.cxx:11
InDetDD::DetectorDesign::depthSymmetric
bool depthSymmetric() const
Definition
DetectorDesign.h:287
InDetDD::DetectorDesign::thickness
double thickness() const
Method which returns thickness of the silicon wafer.
Definition
DetectorDesign.h:271
InDetDD::DetectorDesign::etaSymmetric
bool etaSymmetric() const
Definition
DetectorDesign.h:283
InDetDD::DetectorDesign::phiSymmetric
bool phiSymmetric() const
Definition
DetectorDesign.h:279
InDetDD::DetectorDesign::carrierType
InDetDD::CarrierType carrierType() const
Return carrier type (ie electrons or holes).
Definition
DetectorDesign.h:275
InDetDD::DetectorDesign::readoutSide
int readoutSide() const
ReadoutSide.
Definition
DetectorDesign.h:291
InDetDD::SiCellId
Identifier for the strip or pixel cell.
Definition
SiCellId.h:29
InDetDD::SiDetectorDesign::endsOfStrip
virtual std::pair< SiLocalPosition, SiLocalPosition > endsOfStrip(const SiLocalPosition &position) const =0
Special method for SCT to retrieve the two ends of a "strip".
InDetDD::SiDetectorDesign::nearBondGap
virtual bool nearBondGap(const SiLocalPosition &localPosition, double etaTol) const =0
Test if near bond gap within tolerances, only relevant for SCT.
InDetDD::SiDetectorDesign::~SiDetectorDesign
virtual ~SiDetectorDesign()
Destructor:
InDetDD::SiDetectorDesign::sinStripAngleReco
virtual double sinStripAngleReco(double phiCoord, double etaCoord) const
Give strip angle in the reco frame.
Definition
SiDetectorDesign.h:132
InDetDD::SiDetectorDesign::operator=
SiDetectorDesign & operator=(const SiDetectorDesign &design)
InDetDD::SiDetectorDesign::SiDetectorDesign
SiDetectorDesign(double thickness, bool phiSymmetric, bool etaSymmetric, bool depthSymmetric, InDetDD::CarrierType carrierType, int readoutSide)
Constructor.
Definition
SiDetectorDesign.cxx:20
InDetDD::SiDetectorDesign::strip1Dim
virtual int strip1Dim(int strip, int row) const
only relevant for SCT.
Definition
SiDetectorDesign.h:136
InDetDD::SiDetectorDesign::gangedCell
virtual SiCellId gangedCell(const SiCellId &cellId) const =0
If cell is ganged return the id of the other cell which shares the readout for this cell,...
InDetDD::SiDetectorDesign::phiMeasureSegment
virtual HepGeom::Vector3D< double > phiMeasureSegment(const SiLocalPosition &position) const =0
Helper method for stereo angle computation, DEPRECATED.
InDetDD::SiDetectorDesign::SiDetectorDesign
SiDetectorDesign()
InDetDD::SiDetectorDesign::SiDetectorDesign
SiDetectorDesign(const SiDetectorDesign &design)
InDetDD::SiIntersect
class to run intersection tests
Definition
SiIntersect.h:23
InDetDD::SiLocalPosition
Class to represent a position in the natural frame of a silicon sensor, for Pixel and SCT For Pixel: ...
Definition
SiLocalPosition.h:31
InDetDD::SiReadoutCellId
Identifier for the strip or pixel readout cell.
Definition
SiReadoutCellId.h:42
Trk::SurfaceBounds
Abstract base class for surface bounds to be specified.
Definition
SurfaceBounds.h:47
Identifier
Definition
IdentifierFieldParser.cxx:14
InDetDD
Message Stream Member.
Definition
FakeTrackBuilder.h:8
InDetDD::CarrierType
CarrierType
Definition
InDetDD_Defs.h:17
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Generated on
for ATLAS Offline Software by
1.17.0