5#ifndef MUONREADOUTGEOMETRY_SurfaceCache_H
6#define MUONREADOUTGEOMETRY_SurfaceCache_H
36 const Acts::Surface&
surface()
const override final;
37 Acts::Surface&
surface()
override final;
43 std::shared_ptr<Acts::Surface>
getSurface()
const;
60 inline bool operator<(
const std::unique_ptr<SurfaceCache>&
a,
61 const std::unique_ptr<SurfaceCache>& b) {
62 return a->hash() < b->hash();
base class interface providing the bare minimal interface extension.
Identifier identify() const override final
Returns the identifier of the Surface.
SurfaceCache(const TransformCache *transformCache)
: Standard constructor taking the tranasform cache of the element and the detector type.
const TransformCache * m_transformCache
const Acts::Transform3 & localToGlobalTransform(const Acts::GeometryContext &gctx) const override final
Returns the transformation stored in the TransformCache.
bool isSensitive() const override final
Returns whether the detector element is sensitive.
const Acts::Surface & surface() const override final
Returns the dereferenced pointer cache.
std::shared_ptr< Acts::Surface > m_surface
DetectorType detectorType() const override final
Returns the detector type.
const TransformCache * transformCache() const
Returns the associated transform cache.
void setSurface(const std::shared_ptr< Acts::Surface > surface)
Cache the pointer to the surface that's constructed from this cache.
std::shared_ptr< Acts::Surface > getSurface() const
Returns the pointer to the cached surface.
IdentifierHash hash() const
Hash of the SurfaceCache which is the same as the one of the TransformCache.
This is a "hash" representation of an Identifier.
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.
bool operator<(const std::unique_ptr< SurfaceCache > &a, const std::unique_ptr< SurfaceCache > &b)
Comparison operators.
This class is not to needed in AthSimulation.
Eigen::Affine3d Transform3D