ATLAS Offline Software
|
#include <TransformCache.h>
Public Member Functions | |
TransformCache (const IdentifierHash &cacheHash, const DetectorType type) | |
TransformCache (const TransformCache &other)=delete | |
TransformCache & | operator= (const TransformCache &other)=delete |
virtual | ~TransformCache () |
virtual Identifier | identify () const =0 |
Returns the Identifier of the transform cache. More... | |
IdentifierHash | hash () const |
Returns the sensor hash of this transformation cache. More... | |
virtual const IDetectorElement * | parent () const =0 |
Returns the parent IDetectorElement owning the cache. More... | |
const Amg::Transform3D & | getTransform (const DetectorAlignStore *store) const |
Returns the matching transformation from the alignment store. More... | |
const Amg::Transform3D & | transform (const Acts::GeometryContext &gctx) const |
returns the cached transform from the Acts Geometry context More... | |
void | releaseNominalCache () const |
resets the nominal cache associated with the detector element More... | |
DetectorType | detectorType () const |
returns the detector type of the cache More... | |
Protected Member Functions | |
virtual Amg::Transform3D | fetchTransform (const DetectorAlignStore *store) const =0 |
Private Types | |
using | TicketCounter = DetectorAlignStore::TrackingAlignStore |
Private Attributes | |
const IdentifierHash | m_hash {0} |
const DetectorType | m_type {DetectorType::UnDefined} |
const unsigned int | m_clientNo {TicketCounter::drawTicket(m_type)} |
std::shared_mutex m_mutex | ATLAS_THREAD_SAFE {} |
CxxUtils::CachedUniquePtrT< Amg::Transform3D > m_nomCache | ATLAS_THREAD_SAFE {} |
Definition at line 21 of file TransformCache.h.
Definition at line 59 of file TransformCache.h.
ActsTrk::TransformCache::TransformCache | ( | const IdentifierHash & | cacheHash, |
const DetectorType | type | ||
) |
|
delete |
|
virtual |
Definition at line 9 of file TransformCache.cxx.
DetectorType ActsTrk::TransformCache::detectorType | ( | ) | const |
|
protectedpure virtual |
const Amg::Transform3D& ActsTrk::TransformCache::getTransform | ( | const DetectorAlignStore * | store | ) | const |
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.
IdentifierHash ActsTrk::TransformCache::hash | ( | ) | const |
Returns the sensor hash of this transformation cache.
|
pure virtual |
Returns the Identifier of the transform cache.
|
delete |
|
pure virtual |
Returns the parent IDetectorElement owning the cache.
void ActsTrk::TransformCache::releaseNominalCache | ( | ) | const |
resets the nominal cache associated with the detector element
Definition at line 17 of file TransformCache.cxx.
const Amg::Transform3D& ActsTrk::TransformCache::transform | ( | const Acts::GeometryContext & | gctx | ) | const |
returns the cached transform from the Acts Geometry context
|
mutableprivate |
Definition at line 61 of file TransformCache.h.
|
mutableprivate |
Definition at line 62 of file TransformCache.h.
|
private |
Definition at line 60 of file TransformCache.h.
|
private |
Definition at line 57 of file TransformCache.h.
|
private |
Definition at line 58 of file TransformCache.h.