ATLAS Offline Software
Loading...
Searching...
No Matches
ActsDetectorElement.h File Reference
#include "GeoPrimitives/GeoPrimitives.h"
#include "GeoModelKernel/GeoVDetectorElement.h"
#include "ActsGeometryInterfaces/IDetectorElement.h"
#include "ActsGeometryInterfaces/GeometryContext.h"
#include "ActsGeoUtils/TransformCache.h"
#include "ActsGeoUtils/SurfacePlacement.h"
#include "Acts/Geometry/GeometryContext.hpp"
#include "Acts/Utilities/PointerTraits.hpp"
#include <memory>
Include dependency graph for ActsDetectorElement.h:

Go to the source code of this file.

Classes

class  ActsDetectorElement

Namespaces

namespace  InDetDD
 Message Stream Member.
namespace  Trk
 Ensure that the ATLAS eigen extensions are properly loaded.
namespace  Acts
 This class is not to needed in AthSimulation.
namespace  ActsTrk
 The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout geometry to cache the final transformations of the sensor surfaces associated to one particular detector technology (Pixel, Sct, etc.).

Functions

const ActsDetectorElementgetActsDetectorElement (const Acts::Surface &surf)
 Attempts to retrieve the ActsDetectorElement associated to the passed ActsSurface.
template<Acts::PointerConcept ptr_t>
requires (std::is_base_of_v<Acts::Surface, Acts::RemovePointer_t<ptr_t>>)
const ActsDetectorElementgetActsDetectorElement (const ptr_t &surf)

Function Documentation

◆ getActsDetectorElement() [1/2]

const ActsDetectorElement * getActsDetectorElement ( const Acts::Surface & surf)

Attempts to retrieve the ActsDetectorElement associated to the passed ActsSurface.

Parameters
surfThe surface for which the detector element shall be retrieved

Definition at line 53 of file ActsDetectorElement.cxx.

53 {
54 if (!surf.isAlignable()) {
55 return nullptr;
56 }
57 const auto* placement = dynamic_cast<const ISurfacePlacement*>(surf.surfacePlacement());
58 if(!placement) {
59 return nullptr;
60 }
61 return dynamic_cast<const ActsDetectorElement*>(placement->detectorElement());
62}
Extension of the interface of the Acts::SurfacePlacementBase for ATLAS.

◆ getActsDetectorElement() [2/2]

template<Acts::PointerConcept ptr_t>
requires (std::is_base_of_v<Acts::Surface, Acts::RemovePointer_t<ptr_t>>)
const ActsDetectorElement * getActsDetectorElement ( const ptr_t & surf)

Definition at line 48 of file ActsDetectorElement.h.

49 {
50 if (!surf) {
51 return nullptr;
52 }
53 return getActsDetectorElement(*surf);
54 }
const ActsDetectorElement * getActsDetectorElement(const Acts::Surface &surf)
Attempts to retrieve the ActsDetectorElement associated to the passed ActsSurface.