![]() |
ATLAS Offline Software
|
Extension to handle the caching process of the transform held by the cache. More...
#include <TransformCache.h>
Public Member Functions | |
| ReadoutSurfacePositioning (const IdentifierHash &hash, const CachingDetectorEle *parentEle) | |
| : Standard constructor taking the hash of the sensor element and and the TransformMaker expressed usually as a lambda function | |
| const CachingDetectorEle * | parent () const override final |
| Returns the parent IDetectorElement owning the cache. | |
| Identifier | identify () const override final |
| Returns the Identifier of the. | |
| Identifier | identify () const |
| Returns the Identifier of the. | |
| Identifier | identify () const |
| Identifier of the transform cache equivalent to the Identifier of the first strip inside the gasGap. | |
| Identifier | identify () const |
| Identifier of the transform cache equivalent to the Identifier of the first strip inside the gasGap. | |
| Identifier | identify () const |
| Returns the Identifier of the. | |
| Identifier | identify () const |
| Returns the Identifier of the. | |
| 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 | |
Private Types | |
| using | TicketCounter = detail::TrfStoreTicketCounter |
Private Member Functions | |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const override final |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const |
| Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const |
Private Attributes | |
| const CachingDetectorEle * | m_parent {nullptr} |
| 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. | |
Extension to handle the caching process of the transform held by the cache.
The class is templated over the actual ATLAS implementation and overrides the interface functions from the TransformCache class. The identify and the fetchTransform method are not implemented yet. Their implementation needs to happen at the same place where the template specification of the class is instantiated. E.g.
class CakeDetectorElement : public IDetectorElement { public: using CakeSensorTrfCache_t = ReadoutSurfacePositioning<CakeDetectorElement>; }; Instantiate the identify and fetch transform methods after the class... Identifier ReadoutSurfacePositioning<CakeDetectorElement>::identify() const { return parent()->identify(); }
Amg::Transform3D ReadoutSurfacePositioning<CakeDetectorElement>::fetchTransform(const DetectorAlignStore* store) const { return parent()->nominalTrf() *parent()->alignShift(store); }
Definition at line 156 of file TransformCache.h.
|
privateinherited |
Definition at line 92 of file TransformCache.h.
|
explicit |
: Standard constructor taking the hash of the sensor element and and the TransformMaker expressed usually as a lambda function
|
deletenoexceptinherited |
Copy the constructors from the base class.
|
deletenoexceptinherited |
Copy the constructors from the base class.
|
explicitinherited |
Copy the constructors from the base class.
Definition at line 49 of file TransformCache.cxx.
|
inherited |
|
privatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
|
privatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
|
privatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
|
privatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
|
privatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
|
privatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
|
inlineprivatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
Definition at line 144 of file ActsDetectorElement.h.
|
finaloverrideprivatevirtual |
Implements ActsTrk::AlignableGeoPositioning.
|
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.
|
virtual |
Returns the Identifier of the.
Implements ActsTrk::IReadoutSurfacePositioning.
|
virtual |
Identifier of the transform cache equivalent to the Identifier of the first strip inside the gasGap.
Implements ActsTrk::IReadoutSurfacePositioning.
|
virtual |
Identifier of the transform cache equivalent to the Identifier of the first strip inside the gasGap.
Implements ActsTrk::IReadoutSurfacePositioning.
|
virtual |
Returns the Identifier of the.
Implements ActsTrk::IReadoutSurfacePositioning.
|
virtual |
Returns the Identifier of the.
Implements ActsTrk::IReadoutSurfacePositioning.
|
finaloverridevirtual |
Returns the Identifier of the.
Implements ActsTrk::IReadoutSurfacePositioning.
|
finaloverridevirtual |
Returns the parent IDetectorElement owning the cache.
Implements ActsTrk::IReadoutSurfacePositioning.
|
inherited |
Returns the pointer to the associated surface placement.
Definition at line 46 of file TransformCache.cxx.
|
finalvirtualinherited |
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.
|
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 |
Definition at line 170 of file TransformCache.h.
|
privateinherited |
|
privateinherited |
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.