![]() |
ATLAS Offline Software
|
Interface extension for caches used to hold the transforms of surfaces from the readout geometry. More...
#include <TransformCache.h>
Public Member Functions | |
| virtual | ~IReadoutSurfacePositioning () |
| Destructor. | |
| virtual Identifier | identify () const =0 |
| Returns the Identifier of the. | |
| virtual const IDetectorElement * | parent () const =0 |
| Returns the parent IDetectorElement owning the cache. | |
| virtual void | releaseNominalCache () const final |
| Release the nominal transform stored in the cache. | |
| const SurfacePlacement * | placement () const |
| Returns the pointer to the associated surface placement. | |
| AlignableGeoPositioning (const IdentifierHash &cacheHash, const DetectorType type) | |
| Copy the constructors from the base class. | |
| AlignableGeoPositioning (const AlignableGeoPositioning &other) noexcept=delete | |
| Copy the constructors from the base class. | |
| AlignableGeoPositioning (AlignableGeoPositioning &&other) noexcept=delete | |
| Copy the constructors from the base class. | |
| IdentifierHash | hash () const |
| Returns the sensor hash of this transformation cache. | |
| const Amg::Transform3D & | getTransform (const DetectorAlignStore *store) const |
| Returns the matching transformation from the alignment store. | |
| const Amg::Transform3D & | getTransform (const GeometryContext &gctx) const |
| returns the cached transform from the Acts Geometry context | |
| const Amg::Transform3D & | getTransform (const Acts::GeometryContext &tgContext) const |
| returns the cached transform from the Acts Geometry context | |
| bool | storeTransform (DetectorAlignStore &store) const |
| Store the final transform in the mutable alignment store. | |
| DetectorType | detectorType () const |
| returns the detector type of the cache | |
Protected Member Functions | |
| virtual Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const =0 |
Private Types | |
| using | TicketCounter = detail::TrfStoreTicketCounter |
Private Attributes | |
| std::shared_ptr< Acts::Surface > | m_surface {} |
| Holder of the surface owned by the surface placement. | |
| std::shared_ptr< SurfacePlacement > | m_placement {} |
| Holder of the surface placement pointer. | |
| const IdentifierHash | m_hash {} |
| const DetectorType | m_type {DetectorType::UnDefined} |
| const unsigned int | m_clientNo {TicketCounter::drawTicket(m_type)} |
| Slot at which the aligned transforms can be put in the external DetectorAlignStore. | |
| CxxUtils::CachedUniquePtrT< Amg::Transform3D > m_nomCache | ATLAS_THREAD_SAFE {} |
| Cache to hold the nominal transform, if no DetectorAlignStore is provided The cache is automatically erased as soon as an instantiated store is presented to the class. | |
Friends | |
| class | SurfacePlacement |
Interface extension for caches used to hold the transforms of surfaces from the readout geometry.
The interface expands by the possibility to request the Surface's identifier and to access the parent IDetectorElement.
Further, the interface has two protected pointers to take the ownership of the associated SurfacePlacementBase and of the Surface aligned by the positioning object
Definition at line 111 of file TransformCache.h.
|
privateinherited |
Definition at line 92 of file TransformCache.h.
|
virtualdefault |
Destructor.
|
deletenoexcept |
Copy the constructors from the base class.
|
deletenoexcept |
Copy the constructors from the base class.
|
explicit |
Copy the constructors from the base class.
Definition at line 49 of file TransformCache.cxx.
|
inherited |
|
protectedpure virtualinherited |
Implemented in ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, and ActsTrk::VolumePlacement::VolumeGeoPositioning.
|
inherited |
returns the cached transform from the Acts Geometry context
| tgContext | The geometry context to be unpacked to the ATLAS geometry context |
|
inherited |
Returns the matching transformation from the alignment store.
If a nullptr is given, then it's equivalent to the case that the transformation is pointing to a perfectly aligned surface. In this case, the internal nominal transformation cache is invoked.
| store | Pointer to the detector aligment store |
|
inherited |
returns the cached transform from the Acts Geometry context
| gctx | The geometry context holding the aligned transforms |
|
inherited |
Returns the sensor hash of this transformation cache.
|
pure virtual |
Returns the Identifier of the.
Implemented in ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >, and ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >.
|
pure virtual |
Returns the parent IDetectorElement owning the cache.
Implemented in ActsTrk::ReadoutSurfacePositioning< CachingDetectorEle >, and ActsTrk::ReadoutSurfacePositioning< ActsDetectorElement >.
| const SurfacePlacement * ActsTrk::IReadoutSurfacePositioning::placement | ( | ) | const |
Returns the pointer to the associated surface placement.
Definition at line 46 of file TransformCache.cxx.
|
finalvirtual |
Release the nominal transform stored in the cache.
Reimplemented from ActsTrk::AlignableGeoPositioning.
Definition at line 36 of file TransformCache.cxx.
|
inherited |
Store the final transform in the mutable alignment store.
Returns true whether a new transform was stored
| store | The reference to the store where the cache stores its transform |
Definition at line 26 of file TransformCache.cxx.
|
friend |
Definition at line 125 of file TransformCache.h.
|
mutableprivateinherited |
Cache to hold the nominal transform, if no DetectorAlignStore is provided The cache is automatically erased as soon as an instantiated store is presented to the class.
Definition at line 99 of file TransformCache.h.
|
privateinherited |
Slot at which the aligned transforms can be put in the external DetectorAlignStore.
Definition at line 95 of file TransformCache.h.
|
privateinherited |
Definition at line 90 of file TransformCache.h.
|
private |
|
private |
Holder of the surface owned by the surface placement.
Definition at line 130 of file TransformCache.h.
|
privateinherited |
Definition at line 91 of file TransformCache.h.