5#ifndef ACTSGEOMETRY_ACTSDETECTORELEMENT_H
6#define ACTSGEOMETRY_ACTSDETECTORELEMENT_H
11#include "GeoModelKernel/GeoVDetectorElement.h"
18#include "Acts/Geometry/DetectorElementBase.hpp"
19#include "Acts/Geometry/GeometryContext.hpp"
79 virtual const Acts::Transform3 &
83 virtual const Acts::Surface &
surface()
const final override;
88 virtual Acts::Surface &
surface() final override;
116 std::shared_ptr<const Acts::SurfaceBounds>
m_bounds{};
122 std::unique_ptr<const Amg::Transform3D>
m_trtTrf{};
130 return m_parent->localToGlobal(store);
Eigen::Affine3d Transform3D
ActsDetectorElement(const InDetDD::SiDetectorElement &detElem)
Identifier m_explicitIdentifier
std::unique_ptr< const Amg::Transform3D > m_trtTrf
ActsTrk::GeometryContext::AlignmentStore AlignmentStore
const Acts::Transform3 & getDefaultTransform() const
Returns default transform.
ActsTrk::DetectorType DetectorType
const Trk::Surface & atlasSurface() const
Return a shared pointer on the ATLAS surface associated with this identifier,.
double m_thickness
Thickness of this detector element.
ActsTrk::TransformCacheDetEle< ActsDetectorElement > m_trfCache
DetectorType detectorType() const override final
Detector type.
virtual ~ActsDetectorElement()=default
Destructor.
std::shared_ptr< const Acts::SurfaceBounds > m_bounds
Boundaries of the detector element.
virtual bool isSensitive() const final override
Returns whether the detector element is sensitive.
Identifier identify() const override final
Identifier.
IdentifierHash identifyHash() const
Identifier hash.
IdentityHelper identityHelper() const
std::shared_ptr< Acts::Surface > m_surface
Corresponding Surface.
const GeoVDetectorElement * m_detElement
Detector element as variant.
double thickness() const
Returns the thickness of the module.
const GeoVDetectorElement * upstreamDetectorElement() const
Returns the underllying GeoModel detectorelement that this one is based on.
virtual const Acts::Surface & surface() const final override
Return surface associated with this identifier, which should come from the.
virtual unsigned int storeAlignedTransforms(const ActsTrk::DetectorAlignStore &alignStore) const override
Caches the aligned transformation in the provided store. Returns the number of cached elements.
Amg::Transform3D localToGlobal(const ActsTrk::DetectorAlignStore *store) const
virtual const Acts::Transform3 & localToGlobalTransform(const Acts::GeometryContext &gctx) const final override
ActsTrk::DetectorAlignStore AlignmentStore
Base class interface for the actual readout elements.
This is a "hash" representation of an Identifier.
Class to hold geometrical description of an HGTD detector element.
Class to hold geometrical description of a silicon detector element.
Virtual base class of TRT readout elements.
Abstract Base Class for tracking surfaces.
The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout ge...
DetectorType
Simple enum to Identify the Type of the ACTS sub detector.
This class is not to needed in AthSimulation.
Definition of ATLAS Math & Geometry primitives (Amg)
Eigen::Affine3d Transform3D
Ensure that the ATLAS eigen extensions are properly loaded.