ATLAS Offline Software
Loading...
Searching...
No Matches
MuonTrackingGeometryBuilderCond.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3*/
4
6// MuonTrackingGeometryBuilderCond.cxx, (c) ATLAS Detector software
8
9// Muon
11
13
15 const std::string& t, const std::string& n, const IInterface* p)
17 declareInterface<Trk::IGeometryBuilderCond>(this);
18}
19
21 // Retrieve the station builder (if configured)
22 // -------------------------------------------
23 ATH_CHECK(m_stationBuilder.retrieve(EnableTool{m_muonActive}));
24
25 // Retrieve the inert material builder builder (if configured)
26 // -------------------------------------------
27
28 ATH_CHECK(m_inertBuilder.retrieve(EnableTool{m_muonInert || m_blendInertMaterial}));
30}
31
32std::unique_ptr<Trk::TrackingGeometry>
36 ATH_MSG_DEBUG(" building tracking geometry");
37
38 // process muon material objects
39
40 DetachedVolVec stations{};
42 stations = m_stationBuilder->buildDetachedTrackingVolumes(ctx, whandle);
43 }
44
45 DetachedVolVec inertObjs{};
47 inertObjs = m_inertBuilder->buildDetachedTrackingVolumes(ctx, whandle, m_blendInertMaterial);
48 }
49
51 std::move(inertObjs), tvol);
52}
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_DEBUG(x)
MuonTrackingGeometryBuilderCond(const std::string &, const std::string &, const IInterface *)
Constructor.
ToolHandle< Muon::MuonInertMaterialBuilderCond > m_inertBuilder
A Tool for inert object creation.
virtual std::unique_ptr< Trk::TrackingGeometry > trackingGeometry(const EventContext &ctx, Trk::TrackingVolume *tvol, SG::WriteCondHandle< Trk::TrackingGeometry > &whandle) const override
TrackingGeometry Interface method.
virtual StatusCode initialize() override
AlgTool initailize method.
ToolHandle< Trk::IDetachedTrackingVolumeBuilderCond > m_stationBuilder
A Tool for station type creation.
virtual StatusCode initialize() override
AlgTool initailize method.
std::unique_ptr< Trk::TrackingGeometry > trackingGeometryImpl(DetachedVolVec &&stations, DetachedVolVec &&inertObjs, Trk::TrackingVolume *tvol) const
MuonTrackingGeometryBuilderImpl(const std::string &, const std::string &, const IInterface *)
Full Volume description used in Tracking, it inherits from Volume to get the geometrical structure,...