ATLAS Offline Software
HGTD_DetectorElement.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // HGTD_DetectorElement.h, (c) ATLAS Detector software
8 
9 #ifndef HGTD_READOUTGEOMETRY_HGTD_DETECTORELEMENT_H
10 #define HGTD_READOUTGEOMETRY_HGTD_DETECTORELEMENT_H
11 
12 // Base class.
14 
15 // Data member classes
16 #include "Identifier/Identifier.h"
23 #include "CLHEP/Geometry/Point3D.h"
25 
26 class AtlasDetectorID;
27 class GeoVFullPhysVol;
28 
29 namespace InDetDD {
30 
41 
43  // Public methods:
45 public:
46 
50  const GeoVFullPhysVol *geophysvol,
51  const SiCommonItems * commonItems,
52  const GeoAlignmentStore* geoAlignStore=nullptr);
53 
55  virtual ~HGTD_DetectorElement();
56 
58  //
61  //
63 
65  Identifier identifierFromCellId(const SiCellId & cellId) const override final;
66 
68  SiCellId cellIdFromIdentifier(const Identifier & identifier) const override final;
69 
71  //
73  //
75 
77  virtual const std::vector<const Trk::Surface*>& surfaces() const;
78 
80  //
84 
86  double get_rz() const override final;
88 
90  //
92  //
94 
95 
97  const HGTD_ModuleDesign &design() const override final;
98 
99  // carrier type for readout. ie electrons for pixels.
101 
103 
105  // Protected data:
107 protected:
108 
115 };
116 
118 // Inline methods:
120 
122 {
123  return static_cast<const HGTD_ModuleDesign&> (SolidStateDetectorElementBase::design());
124 }
125 
127 {
128  return design().carrierType();
129 }
130 
131 } // namespace InDetDD
132 
133 #endif // HGTD_READOUTGEOMETRY_HGTD_DETECTORELEMENT_H
GeoAlignmentStore
Ensure that the extensions for the Vector3D are properly loaded.
Definition: GeoAlignmentStore.h:24
SolidStateDetectorElementBase.h
InDetDD::HGTD_DetectorElement::~HGTD_DetectorElement
virtual ~HGTD_DetectorElement()
Destructor:
Definition: HGTD_DetectorElement.cxx:31
InDetDD::HGTD_DetectorElement::m_surfaces
CxxUtils::CachedValue< std::vector< const Trk::Surface * > > m_surfaces
Definition: HGTD_DetectorElement.h:113
InDetDD::HGTD_DetectorElement::cellIdFromIdentifier
SiCellId cellIdFromIdentifier(const Identifier &identifier) const override final
SiCellId from Identifier.
Definition: HGTD_DetectorElement.cxx:51
InDetDD::SolidStateDetectorElementBase
Definition: SolidStateDetectorElementBase.h:132
InDetDD::HGTD_DetectorElement
Definition: HGTD_DetectorElement.h:40
InDetDD::DetectorDesign::carrierType
InDetDD::CarrierType carrierType() const
Return carrier type (ie electrons or holes)
Definition: DetectorDesign.h:275
xAOD::identifier
identifier
Definition: UncalibratedMeasurement_v1.cxx:15
InDetDD::HGTD_DetectorElement::surfaces
virtual const std::vector< const Trk::Surface * > & surfaces() const
Returns the full list of surfaces associated to this detector element.
Definition: HGTD_DetectorElement.cxx:65
ParamDefs.h
InDetDD::HGTD_DetectorElement::design
const HGTD_ModuleDesign & design() const override final
access to the local description:
Definition: HGTD_DetectorElement.h:121
InDetDD::HGTD_DetectorElement::carrierType
InDetDD::CarrierType carrierType() const
Definition: HGTD_DetectorElement.h:126
InDetDD_Defs.h
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
SiCommonItems.h
InDetDD::SolidStateDetectorElementBase::design
virtual const DetectorDesign & design() const
access to the local description (inline):
CxxUtils::CachedValue
Cached value with atomic update.
Definition: CachedValue.h:55
CLHEPtoEigenConverter.h
InDetDD::SiCommonItems
Definition: SiCommonItems.h:45
IdentifierHash.h
InDetDD::SiCellId
Definition: SiCellId.h:29
InDetDD::CarrierType
CarrierType
Definition: InDetDD_Defs.h:17
HGTD_ModuleDesign.h
InDetDD
Message Stream Member.
Definition: FakeTrackBuilder.h:8
InDetDD::HGTD_DetectorElement::HGTD_DetectorElement
HGTD_DetectorElement(const Identifier &id, const HGTD_ModuleDesign *design, const GeoVFullPhysVol *geophysvol, const SiCommonItems *commonItems, const GeoAlignmentStore *geoAlignStore=nullptr)
Constructor:
Definition: HGTD_DetectorElement.cxx:17
InDetDD::HGTD_ModuleDesign
Definition: HGTD_ModuleDesign.h:43
SiCellId.h
InDetDD::HGTD_DetectorElement::identifierFromCellId
Identifier identifierFromCellId(const SiCellId &cellId) const override final
Identifier from SiCellId (ie pixel eta_index,phi_index)
Definition: HGTD_DetectorElement.cxx:36
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:57
InDetDD::HGTD_DetectorElement::get_rz
double get_rz() const override final
Definition: HGTD_DetectorElement.cxx:80