ATLAS Offline Software
SolidStateDetectorElementBase.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
9 #ifndef READOUTGEOMETRYBASE_SOLIDSTATEDETECTORELEMENTBASE_H
10 #define READOUTGEOMETRYBASE_SOLIDSTATEDETECTORELEMENTBASE_H
11 
19 #include "GeoModelKernel/GeoDefinitions.h"
20 #include "Identifier/Identifier.h"
29 #include "CxxUtils/CachedValue.h"
30 
31 #include "CLHEP/Geometry/Point3D.h"
32 
33 #include <limits>
34 #include <memory>
35 
36 class AtlasDetectorID;
37 class GeoAlignmentStore;
38 class GeoVFullPhysVol;
39 
40 namespace Trk {
41  class SurfaceBounds;
42 }
43 
44 namespace InDetDD {
45 
46  class SiReadoutCellId;
47 
133 
134  public:
135 
140  const DetectorDesign* design,
141  const GeoVFullPhysVol* geophysvol,
142  const SiCommonItems* commonItems,
143  const GeoAlignmentStore* geoAlignStore=nullptr);
144 
149 
154 
159 
164 
169 
174 
185  void invalidate();
186 
194 
200 
204  virtual Identifier identify() const override final;
205 
209  virtual IdentifierHash identifyHash() const override final;
210 
215 
225 
227 
236  virtual const Trk::Surface& surface() const override final;
240  virtual const Trk::Surface& surface(const Identifier&) const override final;
249 
254  virtual const Amg::Transform3D& transform() const override final;
258  virtual const Amg::Transform3D& transform(const Identifier&) const override final;
259 
266 
272 
276  //{@
277 
291 
316 
320  virtual const Amg::Vector3D& normal() const override final;
324  virtual const Amg::Vector3D& normal(const Identifier&) const override final;
325 
327 
335  virtual const Amg::Vector3D& center() const override final;
339  virtual const Amg::Vector3D& center(const Identifier&) const override final;
340 
343  virtual Trk::DetectorElemType detectorType() const override;
344 
348  HepGeom::Point3D<double> globalPositionHit(const HepGeom::Point3D<double>& simulationLocalPos) const;
350 
354  HepGeom::Point3D<double> globalPosition(const HepGeom::Point3D<double>& localPos) const;
356 
361 
366  Amg::Vector2D hitLocalToLocal(double xEta, double xPhi) const;
370  HepGeom::Point3D<double> hitLocalToLocal3D(const HepGeom::Point3D<double>& hitPosition) const;
371 
377 
379 
380 
386  double rMin() const;
387  double rMax() const;
388  double zMin() const;
389  double zMax() const;
390  double phiMin() const;
391  double phiMax() const;
392 
399  void getEtaPhiRegion(double deltaZ,
400  double& etaMin, double& etaMax,
401  double& phiMin, double& phiMax,
402  double& rz) const;
404  virtual double get_rz() const = 0;
405 
410 
416 
417  virtual const Trk::SurfaceBounds& bounds() const override final;
421  virtual const Trk::SurfaceBounds& bounds(const Identifier&) const override final;
422 
428  double width() const;
432  double minWidth() const;
436  double maxWidth() const;
440  double length() const;
441  double thickness() const;
442 
456  double etaPitch() const;
457  double phiPitch() const;
458 
463 
474 
476 
481 
491  SiIntersect inDetector(const Amg::Vector2D& localPosition, double phiTol, double etaTol) const;
492  SiIntersect inDetector(const Amg::Vector3D& globalPosition, double phiTol, double etaTol) const;
494 
509 
519 
529 
541 
545  virtual void updateCache() const;
546 
553  double depthAngle() const;
554  double etaAngle() const;
555  double phiAngle() const;
556 
557  protected:
558  struct CachedVals;
559  private:
560 
570  void commonConstructor();
571 
577  void getExtent(CachedVals& cache) const;
578 
584  void getCorners(HepGeom::Point3D<double>* corners) const;
585 
591  void getEtaPhiPoint(const HepGeom::Point3D<double>& point, double deltaZ,
592  double& etaMin, double& etaMax, double& phi) const;
593 
597  MsgStream& msg(MSG::Level lvl) const;
598 
602  bool msgLvl(MSG::Level lvl) const;
604 
608  protected:
613 
618 
622  const DetectorDesign* m_design{nullptr};
623 
624  const SiCommonItems* m_commonItems{nullptr};
625  std::unique_ptr<Trk::Surface> m_surface;
627 
635 
645 
653  struct AxisDir
654  {
662 
663  double m_depthAngle;
664  double m_phiAngle;
665  double m_etaAngle;
666 
674  };
676 
678 
683  struct CachedVals {
689  HepGeom::Vector3D<double> m_etaAxisCLHEP;
691  HepGeom::Vector3D<double> m_phiAxisCLHEP;
693  HepGeom::Vector3D<double> m_centerCLHEP;
695  double m_minZ;
696  double m_maxZ;
697  double m_minR;
698  double m_maxR;
699  double m_minPhi;
700  double m_maxPhi;
701  };
703 
705 
706  };
707 
708 } // namespace InDetDD
709 
714 
715 #endif // INDETREADOUTGEOMETRY_SIDETECTORELEMENTBASE_H
InDetDD::SolidStateDetectorElementBase::hitLocalToLocal3D
HepGeom::Point3D< double > hitLocalToLocal3D(const HepGeom::Point3D< double > &hitPosition) const
Same as previuos method but 3D.
Definition: SolidStateDetectorElementBase.cxx:117
InDetDD::SolidStateDetectorElementBase::identifierOfPosition
Identifier identifierOfPosition(const Amg::Vector2D &localPos) const
Full identifier of the cell for a given position: assumes a raw local position (no Lorentz shift)
Definition: SolidStateDetectorElementBase.cxx:217
GeoAlignmentStore
Ensure that the extensions for the Vector3D are properly loaded.
Definition: GeoAlignmentStore.h:24
InDetDD::SolidStateDetectorElementBase::transformCLHEP
const HepGeom::Transform3D & transformCLHEP() const
Local (reconstruction frame) to global transform.
Definition: SolidStateDetectorElementBase.cxx:43
TrkDetElementBase.h
InDetDD::SolidStateDetectorElementBase::~SolidStateDetectorElementBase
virtual ~SolidStateDetectorElementBase()
Destructor.
InDetDD::SolidStateDetectorElementBase::CachedVals::m_maxPhi
double m_maxPhi
Definition: SolidStateDetectorElementBase.h:700
InDetDD::SolidStateDetectorElementBase::connectedCell
SiCellId connectedCell(const SiCellId cellId, int number) const
Get the cell ids sharing the readout for this cell.
Definition: SolidStateDetectorElementBase.cxx:250
InDetDD::SolidStateDetectorElementBase::CachedVals::m_center
Amg::Vector3D m_center
Definition: SolidStateDetectorElementBase.h:692
InDetDD::SolidStateDetectorElementBase::cellIdOfPosition
SiCellId cellIdOfPosition(const Amg::Vector2D &localPos) const
As in previous method but returns SiCellId.
Definition: SolidStateDetectorElementBase.cxx:224
InDetDD::SolidStateDetectorElementBase::m_commonItems
const SiCommonItems * m_commonItems
Definition: SolidStateDetectorElementBase.h:624
InDetDD::SolidStateDetectorElementBase::getExtent
void getExtent(CachedVals &cache) const
Calculate extent in r,z and phi.
Definition: SolidStateDetectorElementBase.cxx:483
InDetDD::SolidStateDetectorElementBase::AxisDir
Definition: SolidStateDetectorElementBase.h:654
InDetDD::SolidStateDetectorElementBase::phiMax
double phiMax() const
InDetDD::SolidStateDetectorElementBase::getCorners
void getCorners(HepGeom::Point3D< double > *corners) const
Return the four corners of an element in local coordinates.
Definition: SolidStateDetectorElementBase.cxx:551
InDetDD::SolidStateDetectorElementBase
Definition: SolidStateDetectorElementBase.h:132
InDetDD::SolidStateDetectorElementBase::depthDirection
bool depthDirection() const
Return information on orientation.
InDetDD::SolidStateDetectorElementBase::inDetector
SiIntersect inDetector(const Amg::Vector2D &localPosition, double phiTol, double etaTol) const
Test that it is in the active region.
Definition: SolidStateDetectorElementBase.cxx:204
InDetDD::SolidStateDetectorElementBase::hitEtaDirection
double hitEtaDirection() const
See previous method.
InDetDD::SolidStateDetectorElementBase::etaAngle
double etaAngle() const
InDetDD::SolidStateDetectorElementBase::m_idHash
IdentifierHash m_idHash
hash id of this detector element
Definition: SolidStateDetectorElementBase.h:643
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
InDetDD::SolidStateDetectorElementBase::phiAxisCLHEP
const HepGeom::Vector3D< double > & phiAxisCLHEP() const
To determine if readout direction between online and offline needs swapping, see methods swapPhiReado...
Definition: SolidStateDetectorElementBase.cxx:67
InDetDD::SolidStateDetectorElementBase::AxisDir::m_phiDirection
bool m_phiDirection
Definition: SolidStateDetectorElementBase.h:660
InDetDD::SolidStateDetectorElementBase::CachedVals::m_normal
Amg::Vector3D m_normal
Definition: SolidStateDetectorElementBase.h:687
InDetDD::SolidStateDetectorElementBase::center
virtual const Amg::Vector3D & center() const override final
Center in global coordinates.
InDetDD::SolidStateDetectorElementBase::CachedVals::m_minPhi
double m_minPhi
Definition: SolidStateDetectorElementBase.h:699
InDetDD::SolidStateDetectorElementBase::CachedVals::m_origin
Amg::Vector3D m_origin
Definition: SolidStateDetectorElementBase.h:694
InDetDD::SolidStateDetectorElementBase::etaAxis
const Amg::Vector3D & etaAxis() const
Definition: SolidStateDetectorElementBase.cxx:88
InDetDD::SolidStateDetectorElementBase::AxisDir::m_etaDirection
bool m_etaDirection
Definition: SolidStateDetectorElementBase.h:661
InDetDD::SolidStateDetectorElementBase::hitPhiDirection
double hitPhiDirection() const
See previous method.
InDetDD::SolidStateDetectorElementBase::SolidStateDetectorElementBase
SolidStateDetectorElementBase()=delete
Don't allow no-argument constructor.
Surface
Definition: Trigger/TrigAccel/TrigCudaFitter/src/Surface.h:8
InDetDD::SolidStateDetectorElementBase::surface
Trk::Surface & surface()
Element Surface.
InDetDD::SolidStateDetectorElementBase::m_geoAlignStore
const GeoAlignmentStore * m_geoAlignStore
Definition: SolidStateDetectorElementBase.h:626
xAOD::etaMax
etaMax
Definition: HIEventShape_v2.cxx:46
InDetDD::SolidStateDetectorElementBase::carrierType
InDetDD::CarrierType carrierType() const
carrier type for readout.
SolidStateDetectorElementBase.icc
Trk::TrkDetElementBase
Definition: TrkDetElementBase.h:52
InDetDD::DetectorDesign::Axis
Axis
Definition: DetectorDesign.h:59
xAOD::identifier
identifier
Definition: UncalibratedMeasurement_v1.cxx:15
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
InDetDD::SolidStateDetectorElementBase::msgLvl
bool msgLvl(MSG::Level lvl) const
Declaring the Method providing Verbosity Level (inline)
InDetDD::SolidStateDetectorElementBase::getEtaPhiRegion
void getEtaPhiRegion(double deltaZ, double &etaMin, double &etaMax, double &phiMin, double &phiMax, double &rz) const
Method for building up region of interest table.
Definition: SolidStateDetectorElementBase.cxx:140
InDetDD::SolidStateDetectorElementBase::phiAngle
double phiAngle() const
InDetDD::SolidStateDetectorElementBase::rMin
double rMin() const
ParamDefs.h
InDetDD::SolidStateDetectorElementBase::etaPitch
double etaPitch() const
Pitch (inline methods)
InDetDD::SolidStateDetectorElementBase::CachedVals::m_phiAxis
Amg::Vector3D m_phiAxis
Definition: SolidStateDetectorElementBase.h:690
InDetDD::SolidStateDetectorElementBase::identifyHash
virtual IdentifierHash identifyHash() const override final
identifier hash (inline)
InDetDD::SolidStateDetectorElementBase::getIdHelper
const AtlasDetectorID * getIdHelper() const
Returns the id helper (inline)
InDetDD::SolidStateDetectorElementBase::CachedVals
Definition: SolidStateDetectorElementBase.h:683
SiIntersect.h
InDetDD::SolidStateDetectorElementBase::m_cache
CxxUtils::CachedValue< CachedVals > m_cache
Definition: SolidStateDetectorElementBase.h:702
InDetDD::SolidStateDetectorElementBase::m_surface
std::unique_ptr< Trk::Surface > m_surface
Definition: SolidStateDetectorElementBase.h:625
InDetDD::SolidStateDetectorElementBase::hitDepthDirection
double hitDepthDirection() const
Directions of hit depth,phi,eta axes relative to reconstruction local position axes (LocalPosition).
InDetDD::SolidStateDetectorElementBase::identifierFromCellId
virtual Identifier identifierFromCellId(const SiCellId &cellId) const =0
Identifier <-> SiCellId (ie strip number or pixel eta_index,phi_index) Identifier from SiCellId (ie s...
GeoPrimitives.h
InDetDD::SolidStateDetectorElementBase::getEtaPhiPoint
void getEtaPhiPoint(const HepGeom::Point3D< double > &point, double deltaZ, double &etaMin, double &etaMax, double &phi) const
Get eta and phi coresponding to a point in local coordinates.
Definition: SolidStateDetectorElementBase.cxx:589
InDetDD::SolidStateDetectorElementBase::m_design
const DetectorDesign * m_design
local description of this detector element
Definition: SolidStateDetectorElementBase.h:622
InDetDD::SolidStateDetectorElementBase::defTransform
const Amg::Transform3D defTransform() const
Definition: SolidStateDetectorElementBase.cxx:60
InDetDD::SolidStateDetectorElementBase::recoToHitTransform
const HepGeom::Transform3D recoToHitTransform() const
Transform to go from local reconstruction frame to local hit frame.
Definition: SolidStateDetectorElementBase.cxx:607
InDetDD::SolidStateDetectorElementBase::numberOfConnectedCells
int numberOfConnectedCells(const SiCellId cellId) const
Test if readout cell has more than one diode associated with it.
Definition: SolidStateDetectorElementBase.cxx:243
InDetDD_Defs.h
TrigConf::MSGTC::Level
Level
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
InDetDD::SolidStateDetectorElementBase::thickness
double thickness() const
InDetDD::SolidStateDetectorElementBase::commonConstructor
void commonConstructor()
Common code for constructors.
Definition: SolidStateDetectorElementBase.cxx:257
InDetDD::SolidStateDetectorElementBase::get_rz
virtual double get_rz() const =0
MSG
Definition: MsgLevel.h:28
SiCommonItems.h
InDetDD::SolidStateDetectorElementBase::CachedVals::m_minR
double m_minR
Definition: SolidStateDetectorElementBase.h:697
InDetDD::SolidStateDetectorElementBase::design
virtual const DetectorDesign & design() const
access to the local description (inline):
InDetDD::SolidStateDetectorElementBase::updateCache
virtual void updateCache() const
Recalculate cached values.
Definition: SolidStateDetectorElementBase.cxx:272
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
InDetDD::DetectorDesign
Definition: DetectorDesign.h:57
CxxUtils::CachedValue
Cached value with atomic update.
Definition: CachedValue.h:55
InDetDD::SolidStateDetectorElementBase::width
double width() const
Methods from design (inline)
InDetDD::SolidStateDetectorElementBase::CachedVals::m_phiAxisCLHEP
HepGeom::Vector3D< double > m_phiAxisCLHEP
Definition: SolidStateDetectorElementBase.h:691
InDetDD::SolidStateDetectorElementBase::depthAngle
double depthAngle() const
InDetDD::SolidStateDetectorElementBase::AxisDir::m_depthDirection
bool m_depthDirection
Direction of depth axis.
Definition: SolidStateDetectorElementBase.h:659
Trk::DetectorElemType
DetectorElemType
Definition: TrkDetElementBase.h:39
InDetDD::SolidStateDetectorElementBase::bounds
virtual const Trk::SurfaceBounds & bounds() const override final
Return the boundaries of the element.
Definition: SolidStateDetectorElementBase.cxx:198
InDetDD::SolidStateDetectorElementBase::swapEtaReadoutDirection
bool swapEtaReadoutDirection() const
For eta_index (only relevant for pixel) (inline)
InDetDD::SolidStateDetectorElementBase::CachedVals::m_maxZ
double m_maxZ
Definition: SolidStateDetectorElementBase.h:696
SiLocalPosition.h
InDetDD::SolidStateDetectorElementBase::normal
virtual const Amg::Vector3D & normal() const override final
Get reconstruction local normal axes in global frame.
InDetDD::SolidStateDetectorElementBase::AxisDir::m_phiAngle
double m_phiAngle
Definition: SolidStateDetectorElementBase.h:664
InDetDD::SolidStateDetectorElementBase::hitLocalToLocal
Amg::Vector2D hitLocalToLocal(double xEta, double xPhi) const
Simulation/Hit local frame to reconstruction local frame.
Definition: SolidStateDetectorElementBase.cxx:95
InDetDD::SolidStateDetectorElementBase::CachedVals::m_centerCLHEP
HepGeom::Vector3D< double > m_centerCLHEP
Definition: SolidStateDetectorElementBase.h:693
DetectorDesign.h
InDetDD::SolidStateDetectorElementBase::zMin
double zMin() const
CLHEPtoEigenConverter.h
InDetDD::SolidStateDetectorElementBase::globalPositionHit
HepGeom::Point3D< double > globalPositionHit(const HepGeom::Point3D< double > &simulationLocalPos) const
transform a hit local position into a global position (inline):
InDetDD::SolidStateDetectorElementBase::CachedVals::m_transformCLHEP
HepGeom::Transform3D m_transformCLHEP
Definition: SolidStateDetectorElementBase.h:686
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Amg
Definition of ATLAS Math & Geometry primitives (Amg)
Definition: AmgStringHelpers.h:19
InDetDD::SolidStateDetectorElementBase::rMax
double rMax() const
InDetDD::SolidStateDetectorElementBase::CachedVals::m_etaAxis
Amg::Vector3D m_etaAxis
Definition: SolidStateDetectorElementBase.h:688
CachedValue.h
Cached value with atomic update.
protected
#define protected
Definition: GenEventCnv_p1.h:26
InDetDD::SolidStateDetectorElementBase::CachedVals::m_minZ
double m_minZ
Definition: SolidStateDetectorElementBase.h:695
python.selection.number
number
Definition: selection.py:20
InDetDD::SiCommonItems
Definition: SiCommonItems.h:45
InDetDD::SolidStateDetectorElementBase::m_hitDepth
DetectorDesign::Axis m_hitDepth
Definition: SolidStateDetectorElementBase.h:633
InDetDD::SolidStateDetectorElementBase::m_hitEta
DetectorDesign::Axis m_hitEta
Axes.
Definition: SolidStateDetectorElementBase.h:631
IdentifierHash.h
InDetDD::SolidStateDetectorElementBase::msg
MsgStream & msg(MSG::Level lvl) const
Declaring the Message method for further use (inline)
InDetDD::SolidStateDetectorElementBase::phiPitch
double phiPitch() const
InDetDD::SolidStateDetectorElementBase::m_hitPhi
DetectorDesign::Axis m_hitPhi
Definition: SolidStateDetectorElementBase.h:632
InDetDD::SolidStateDetectorElementBase::zMax
double zMax() const
InDetDD::SolidStateDetectorElementBase::etaDirection
bool etaDirection() const
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
InDetDD::SolidStateDetectorElementBase::operator=
SolidStateDetectorElementBase & operator=(SolidStateDetectorElementBase &&)=delete
Don't allow move assignment operator.
InDetDD::SolidStateDetectorElementBase::AxisDir::m_etaAngle
double m_etaAngle
Definition: SolidStateDetectorElementBase.h:665
InDetDD::SolidStateDetectorElementBase::CachedVals::m_etaAxisCLHEP
HepGeom::Vector3D< double > m_etaAxisCLHEP
Definition: SolidStateDetectorElementBase.h:689
HepGeom
Definition: VP1String.h:30
InDetDD::SiIntersect
Definition: SiIntersect.h:23
InDetDD::SiCellId
Definition: SiCellId.h:29
InDetDD::SolidStateDetectorElementBase::m_id
Identifier m_id
identifier of this detector element
Definition: SolidStateDetectorElementBase.h:617
InDetDD::SolidStateDetectorElementBase::rawLocalPositionOfCell
Amg::Vector2D rawLocalPositionOfCell(const SiCellId &cellId) const
Returns position (center) of cell.
Definition: SolidStateDetectorElementBase.cxx:230
InDetDD::SolidStateDetectorElementBase::CachedVals::m_transform
Amg::Transform3D m_transform
Definition: SolidStateDetectorElementBase.h:685
InDetDD::SolidStateDetectorElementBase::minWidth
double minWidth() const
Min width.
InDetDD::SolidStateDetectorElementBase::phiMin
double phiMin() const
LArCellBinning.etaMin
etaMin
Definition: LArCellBinning.py:84
InDetDD::CarrierType
CarrierType
Definition: InDetDD_Defs.h:17
InDetDD
Message Stream Member.
Definition: FakeTrackBuilder.h:8
InDetDD::SolidStateDetectorElementBase::globalPosition
HepGeom::Point3D< double > globalPosition(const HepGeom::Point3D< double > &localPos) const
transform a reconstruction local position into a global position (inline):
InDetDD::SolidStateDetectorElementBase::defTransformCLHEP
const HepGeom::Transform3D defTransformCLHEP() const
Default Local (reconstruction frame) to global transform ie with no misalignment.
Definition: SolidStateDetectorElementBase.cxx:50
InDetDD::SolidStateDetectorElementBase::phiAxis
const Amg::Vector3D & phiAxis() const
Definition: SolidStateDetectorElementBase.cxx:74
InDetDD::SolidStateDetectorElementBase::CachedVals::m_maxR
double m_maxR
Definition: SolidStateDetectorElementBase.h:698
InDetDD::SolidStateDetectorElementBase::swapPhiReadoutDirection
bool swapPhiReadoutDirection() const
Determine if readout direction between online and offline needs swapping.
InDetDD::SolidStateDetectorElementBase::invalidate
void invalidate()
Signal that cached values are no longer valid.
InDetDD::SolidStateDetectorElementBase::AxisDir::m_depthAngle
double m_depthAngle
Definition: SolidStateDetectorElementBase.h:663
InDetDD::SolidStateDetectorElementBase::detectorType
virtual Trk::DetectorElemType detectorType() const override
TrkDetElementBase interface detectorType.
private
#define private
Definition: xAODTruthCnvAlg.h:20
InDetDD::SolidStateDetectorElementBase::etaAxisCLHEP
const HepGeom::Vector3D< double > & etaAxisCLHEP() const
Get reconstruction local eta axes in global frame.
Definition: SolidStateDetectorElementBase.cxx:81
InDetDD::SolidStateDetectorElementBase::localPosition
Amg::Vector2D localPosition(const HepGeom::Point3D< double > &globalPosition) const
transform a global position into a 2D local position (reconstruction frame) (inline)
InDetDD::SolidStateDetectorElementBase::length
double length() const
Length in eta direction (z - barrel, r - endcap)
InDetDD::SolidStateDetectorElementBase::SolidStateDetectorElementBase
SolidStateDetectorElementBase(SolidStateDetectorElementBase &&)=delete
Don't allow move constructor.
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
makeComparison.deltaZ
int deltaZ
Definition: makeComparison.py:46
InDetDD::SolidStateDetectorElementBase::SolidStateDetectorElementBase
SolidStateDetectorElementBase(const SolidStateDetectorElementBase &)=delete
Don't allow copy constructor.
InDetDD::SolidStateDetectorElementBase::getCommonItems
const SiCommonItems * getCommonItems() const
InDetDD::SolidStateDetectorElementBase::AxisDir::m_barrelLike
bool m_barrelLike
Definition: SolidStateDetectorElementBase.h:673
SiCellId.h
InDetDD::SolidStateDetectorElementBase::phiDirection
bool phiDirection() const
InDetDD::SolidStateDetectorElementBase::transformHit
const GeoTrf::Transform3D & transformHit() const
Local (simulation/hit frame) to global transform.
InDetDD::SolidStateDetectorElementBase::operator=
SolidStateDetectorElementBase & operator=(const SolidStateDetectorElementBase &)=delete
Don't allow assignment operator.
InDetDD::SolidStateDetectorElementBase::cellIdFromIdentifier
virtual SiCellId cellIdFromIdentifier(const Identifier &identifier) const =0
SiCellId from Identifier.
InDetDD::SolidStateDetectorElementBase::identify
virtual Identifier identify() const override final
identifier of this detector element (inline)
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:57
InDetDD::SolidStateDetectorElementBase::transform
virtual const Amg::Transform3D & transform() const override final
Return local to global transform.
InDetDD::SolidStateDetectorElementBase::m_axisDir
CxxUtils::CachedValue< AxisDir > m_axisDir
Definition: SolidStateDetectorElementBase.h:675
InDetDD::SolidStateDetectorElementBase::CachedVals::m_transformHit
Amg::Transform3D m_transformHit
Definition: SolidStateDetectorElementBase.h:684
InDetDD::SolidStateDetectorElementBase::maxWidth
double maxWidth() const
Max width.
Identifier
Definition: IdentifierFieldParser.cxx:14