ATLAS Offline Software
Loading...
Searching...
No Matches
ActsSurfaceMappingTool Class Reference

#include <ActsSurfaceMappingTool.h>

Inheritance diagram for ActsSurfaceMappingTool:
Collaboration diagram for ActsSurfaceMappingTool:

Public Member Functions

virtual StatusCode initialize () override
 ActsSurfaceMappingTool (const std::string &type, const std::string &name, const IInterface *parent)
virtual std::shared_ptr< Acts::SurfaceMaterialMapper > mapper () const override
virtual Acts::SurfaceMaterialMapper::State mappingState () const override

Private Types

using SlStepper = Acts::StraightLineStepper
using StraightLinePropagator = Acts::Propagator<SlStepper, Acts::Navigator>

Private Attributes

Acts::MagneticFieldContext m_magFieldContext
PublicToolHandle< ActsTrk::ITrackingGeometryToolm_trackingGeometryTool {this, "TrackingGeometryTool", "ActsTrackingGeometryTool"}
std::shared_ptr< Acts::SurfaceMaterialMapper > m_mapper
std::shared_ptr< const Acts::TrackingGeometry > m_trackingGeometry

Detailed Description

Definition at line 25 of file ActsSurfaceMappingTool.h.

Member Typedef Documentation

◆ SlStepper

using ActsSurfaceMappingTool::SlStepper = Acts::StraightLineStepper
private

Definition at line 49 of file ActsSurfaceMappingTool.h.

◆ StraightLinePropagator

using ActsSurfaceMappingTool::StraightLinePropagator = Acts::Propagator<SlStepper, Acts::Navigator>
private

Definition at line 50 of file ActsSurfaceMappingTool.h.

Constructor & Destructor Documentation

◆ ActsSurfaceMappingTool()

ActsSurfaceMappingTool::ActsSurfaceMappingTool ( const std::string & type,
const std::string & name,
const IInterface * parent )

Definition at line 26 of file ActsSurfaceMappingTool.cxx.

28 : base_class(type, name, parent)
29{
30}

Member Function Documentation

◆ initialize()

StatusCode ActsSurfaceMappingTool::initialize ( )
overridevirtual

The material mapper

Definition at line 33 of file ActsSurfaceMappingTool.cxx.

34{
35 ATH_MSG_INFO("Initializing ACTS Surface Mapper");
36
38
39 m_trackingGeometry = m_trackingGeometryTool->trackingGeometry();
40
41 Acts::Navigator navigator( Acts::Navigator::Config{ m_trackingGeometry } );
42
43 // Make stepper and propagator
44 SlStepper stepper;
45 StraightLinePropagator propagator = StraightLinePropagator(std::move(stepper), std::move(navigator));
46
48 Acts::SurfaceMaterialMapper::Config smmConfig;
49 smmConfig.mapperDebugOutput = false;
50 m_mapper = std::make_shared<Acts::SurfaceMaterialMapper>(
51 smmConfig,
52 std::move(propagator),
53 makeActsAthenaLogger(this, "SurfaceMaterialMapper"));
54
55
56 ATH_MSG_INFO("ACTS Surface Mapper successfully initialized");
57 return StatusCode::SUCCESS;
58}
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_INFO(x)
std::unique_ptr< const Acts::Logger > makeActsAthenaLogger(IMessageSvc *svc, const std::string &name, int level, std::optional< std::string > parent_name)
Acts::Propagator< SlStepper, Acts::Navigator > StraightLinePropagator
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
std::shared_ptr< Acts::SurfaceMaterialMapper > m_mapper
Acts::StraightLineStepper SlStepper
std::shared_ptr< const Acts::TrackingGeometry > m_trackingGeometry

◆ mapper()

virtual std::shared_ptr< Acts::SurfaceMaterialMapper > ActsSurfaceMappingTool::mapper ( ) const
inlineoverridevirtual

Definition at line 36 of file ActsSurfaceMappingTool.h.

37 {
38 return m_mapper;
39 };

◆ mappingState()

Acts::SurfaceMaterialMapper::State ActsSurfaceMappingTool::mappingState ( ) const
overridevirtual

Definition at line 61 of file ActsSurfaceMappingTool.cxx.

62{
63 auto mappingState = m_mapper->createState(
64 m_trackingGeometryTool->getNominalGeometryContext().context(), m_magFieldContext, *m_trackingGeometry);
65
66 return mappingState;
67}
virtual Acts::SurfaceMaterialMapper::State mappingState() const override
Acts::MagneticFieldContext m_magFieldContext

Member Data Documentation

◆ m_magFieldContext

Acts::MagneticFieldContext ActsSurfaceMappingTool::m_magFieldContext
private

Definition at line 48 of file ActsSurfaceMappingTool.h.

◆ m_mapper

std::shared_ptr<Acts::SurfaceMaterialMapper> ActsSurfaceMappingTool::m_mapper
private

Definition at line 52 of file ActsSurfaceMappingTool.h.

◆ m_trackingGeometry

std::shared_ptr<const Acts::TrackingGeometry> ActsSurfaceMappingTool::m_trackingGeometry
private

Definition at line 53 of file ActsSurfaceMappingTool.h.

◆ m_trackingGeometryTool

PublicToolHandle<ActsTrk::ITrackingGeometryTool> ActsSurfaceMappingTool::m_trackingGeometryTool {this, "TrackingGeometryTool", "ActsTrackingGeometryTool"}
private

Definition at line 51 of file ActsSurfaceMappingTool.h.

51{this, "TrackingGeometryTool", "ActsTrackingGeometryTool"};

The documentation for this class was generated from the following files: