13#include "GeoModelKernel/GeoXF.h"
14#include "GeoGenericFunctions/Variable.h"
15#include "GeoModelKernel/GeoAlignableTransform.h"
46 (*element_iter)->invalidate();
57 (*element_iter)->updateCache();
65 GeoVAlignmentStore* alignStore)
84 if (!extXF)
return false;
86 const GeoVFullPhysVol* child = extXF->
child();
89 const GeoTrf::Transform3D& transform = child->getDefAbsoluteTransform(alignStore);
91 GeoTrf::Transform3D correctedDelta = transform.inverse()*localToGlobalXF
93 * localToGlobalXF.inverse() * transform;
103 GeoVAlignmentStore* alignStore) {
121 if (!extXF)
return false;
123 const GeoVFullPhysVol * child = extXF->
child();
126 const GeoTrf::Transform3D& transform = child->getDefAbsoluteTransform(alignStore);
127 extXF->
alignableTransform()->setDelta(transform.inverse() * delta * transform, alignStore);
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
DataModel_detail::const_iterator< DataVector > const_iterator
DataModel_detail::iterator< DataVector > iterator
InDetDetectorManager(StoreGateSvc *detStore, const std::string &name)
Base class for the detector design classes for Pixel and SCT.
virtual void updateAll() const
Update all caches.
virtual void invalidateAll()
Invalidate cache for all detector elements.
const std::string & tag() const
Get tag used in dictionary.
SiDetectorManager(StoreGateSvc *detStore, const std::string &name)
void setCommonItems(std::unique_ptr< const SiCommonItems > &&commonItems)
Set SiCommonItems.
const SiDetectorDesign * getDesign(int i) const
std::vector< std::unique_ptr< const SiDetectorDesign > > m_designs
const SiDetectorDesign * addDesign(std::unique_ptr< const SiDetectorDesign > &&)
Access to module design; returns an observer pointer.
virtual SiDetectorElementCollection::const_iterator getDetectorElementEnd() const =0
virtual SiDetectorElementCollection::const_iterator getDetectorElementBegin() const =0
std::unique_ptr< const SiCommonItems > m_commonItems
virtual ~SiDetectorManager()
static bool setAlignableTransformGlobalDelta(ExtendedAlignableTransform *extXF, const Amg::Transform3D &delta, GeoVAlignmentStore *alignStore=nullptr)
Helper method to set delta transform from a global delta - Amg interface.
static bool setAlignableTransformLocalDelta(ExtendedAlignableTransform *extXF, const Amg::Transform3D &localToGlobalXF, const Amg::Transform3D &delta, GeoVAlignmentStore *alignStore=nullptr)
Helper method to set delta transform from a local delta - Amg interface.
The Athena Transient Store API.
Eigen::Affine3d Transform3D