ATLAS Offline Software
Loading...
Searching...
No Matches
ActsVolumeMappingTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ACTSGEOMETRY_ACTSVOLUMEMAPPINGTOOL_H
6#define ACTSGEOMETRY_ACTSVOLUMEMAPPINGTOOL_H
7
8// ATHENA
10#include "GaudiKernel/IInterface.h"
11#include "GaudiKernel/ServiceHandle.h"
12#include "Gaudi/Property.h"
13#include "GaudiKernel/EventContext.h"
14
15// PACKAGE
18
19// ACTS
20#include "Acts/Material/VolumeMaterialMapper.hpp"
21
22// BOOST
23
24#include <cmath>
25
26class ActsVolumeMappingTool : public extends<AthAlgTool, IActsVolumeMappingTool>
27{
28
29public:
30 virtual StatusCode initialize() override;
31
32 ActsVolumeMappingTool(const std::string& type, const std::string& name,
33 const IInterface* parent);
34
35 std::shared_ptr<Acts::VolumeMaterialMapper>
36 mapper() const override
37 {
38 return m_mapper;
39 };
40
41 virtual
42 Acts::VolumeMaterialMapper::State
43 mappingState() const override;
44
45private:
46 // Straight line stepper
47 Acts::MagneticFieldContext m_magFieldContext;
48 Acts::GeometryContext m_geoContext;
49 using SlStepper = Acts::StraightLineStepper;
50 using StraightLinePropagator = Acts::Propagator<SlStepper, Acts::Navigator>;
51 PublicToolHandle<ActsTrk::ITrackingGeometryTool> m_trackingGeometryTool{this, "TrackingGeometryTool", "ActsTrackingGeometryTool"};
52 std::shared_ptr<Acts::VolumeMaterialMapper> m_mapper;
53 std::shared_ptr<const Acts::TrackingGeometry> m_trackingGeometry;
54};
55
56
57
58#endif
ActsVolumeMappingTool(const std::string &type, const std::string &name, const IInterface *parent)
std::shared_ptr< const Acts::TrackingGeometry > m_trackingGeometry
Acts::Propagator< SlStepper, Acts::Navigator > StraightLinePropagator
virtual Acts::VolumeMaterialMapper::State mappingState() const override
Acts::MagneticFieldContext m_magFieldContext
Acts::StraightLineStepper SlStepper
std::shared_ptr< Acts::VolumeMaterialMapper > m_mapper
PublicToolHandle< ActsTrk::ITrackingGeometryTool > m_trackingGeometryTool
Acts::GeometryContext m_geoContext
std::shared_ptr< Acts::VolumeMaterialMapper > mapper() const override
virtual StatusCode initialize() override