ATLAS Offline Software
Public Member Functions | Private Types | Private Attributes | List of all members
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
 
virtual const IActsTrackingGeometryTooltrackingGeometryTool () const override
 

Private Types

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

Private Attributes

Acts::MagneticFieldContext m_magFieldContext
 
ActsGeometryContext m_geoContext
 
ToolHandle< IActsTrackingGeometryToolm_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 57 of file ActsSurfaceMappingTool.h.

◆ StraightLinePropagator

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

Definition at line 58 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 
37  ATH_CHECK( m_trackingGeometryTool.retrieve() );
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  m_geoContext = m_trackingGeometryTool->getNominalGeometryContext();
56 
57  ATH_MSG_INFO("ACTS Surface Mapper successfully initialized");
58  return StatusCode::SUCCESS;
59 }

◆ 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 62 of file ActsSurfaceMappingTool.cxx.

63 {
64  auto mappingState = m_mapper->createState(
66 
67  return mappingState;
68 }

◆ trackingGeometryTool()

virtual const IActsTrackingGeometryTool* ActsSurfaceMappingTool::trackingGeometryTool ( ) const
inlineoverridevirtual

Definition at line 47 of file ActsSurfaceMappingTool.h.

48  {
49  return m_trackingGeometryTool.get();
50  }

Member Data Documentation

◆ m_geoContext

ActsGeometryContext ActsSurfaceMappingTool::m_geoContext
private

Definition at line 56 of file ActsSurfaceMappingTool.h.

◆ m_magFieldContext

Acts::MagneticFieldContext ActsSurfaceMappingTool::m_magFieldContext
private

Definition at line 55 of file ActsSurfaceMappingTool.h.

◆ m_mapper

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

Definition at line 60 of file ActsSurfaceMappingTool.h.

◆ m_trackingGeometry

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

Definition at line 61 of file ActsSurfaceMappingTool.h.

◆ m_trackingGeometryTool

ToolHandle<IActsTrackingGeometryTool> ActsSurfaceMappingTool::m_trackingGeometryTool {this, "TrackingGeometryTool", "ActsTrackingGeometryTool"}
private

Definition at line 59 of file ActsSurfaceMappingTool.h.


The documentation for this class was generated from the following files:
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
ActsSurfaceMappingTool::SlStepper
Acts::StraightLineStepper SlStepper
Definition: ActsSurfaceMappingTool.h:57
ActsSurfaceMappingTool::StraightLinePropagator
Acts::Propagator< SlStepper, Acts::Navigator > StraightLinePropagator
Definition: ActsSurfaceMappingTool.h:58
ActsSurfaceMappingTool::m_magFieldContext
Acts::MagneticFieldContext m_magFieldContext
Definition: ActsSurfaceMappingTool.h:55
ActsSurfaceMappingTool::m_mapper
std::shared_ptr< Acts::SurfaceMaterialMapper > m_mapper
Definition: ActsSurfaceMappingTool.h:60
makeActsAthenaLogger
std::unique_ptr< const Acts::Logger > makeActsAthenaLogger(IMessageSvc *svc, const std::string &name, int level, std::optional< std::string > parent_name)
Definition: Tracking/Acts/ActsInterop/src/Logger.cxx:64
ActsGeometryContext::context
Acts::GeometryContext context() const
Definition: ActsGeometryContext.h:46
ActsSurfaceMappingTool::m_trackingGeometryTool
ToolHandle< IActsTrackingGeometryTool > m_trackingGeometryTool
Definition: ActsSurfaceMappingTool.h:59
ActsSurfaceMappingTool::m_trackingGeometry
std::shared_ptr< const Acts::TrackingGeometry > m_trackingGeometry
Definition: ActsSurfaceMappingTool.h:61
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
ActsSurfaceMappingTool::mappingState
virtual Acts::SurfaceMaterialMapper::State mappingState() const override
Definition: ActsSurfaceMappingTool.cxx:62
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
ActsSurfaceMappingTool::m_geoContext
ActsGeometryContext m_geoContext
Definition: ActsSurfaceMappingTool.h:56
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78