ATLAS Offline Software
MuonTrackingGeometryBuilder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // MuonTrackingGeometryBuilder.h, (c) ATLAS Detector software
8 
9 #ifndef MUONTRACKINGGEOMETRY_MUONTRACKINGGEOMETRYBUILDER_H
10 #define MUONTRACKINGGEOMETRY_MUONTRACKINGGEOMETRYBUILDER_H
11 
13 //
17 //
18 #include "GaudiKernel/ToolHandle.h"
19 namespace Muon {
20 
36  virtual public Trk::IGeometryBuilder {
37  public:
39  MuonTrackingGeometryBuilder(const std::string&, const std::string&,
40  const IInterface*);
42  virtual ~MuonTrackingGeometryBuilder() = default;
44  virtual StatusCode initialize() override;
46  virtual std::unique_ptr<Trk::TrackingGeometry> trackingGeometry(
47  Trk::TrackingVolume* tvol = 0) const override;
48 
50  virtual Trk::GeometrySignature geometrySignature() const override {
52  }
53 
54  private:
55  ToolHandle<Trk::IDetachedTrackingVolumeBuilder> m_stationBuilder{
56  this, "MuonStationBuilder",
57  "Muon::MuonStationBuilder/MuonStationBuilder"};
58 
60  ToolHandle<Muon::MuonInertMaterialBuilder>
61  m_inertBuilder{this, "InertMaterialBuilder",
62  "Muon::MuonInertMaterialBuilder/"
63  "MuonInertMaterialBuilder"};
64 };
66 
67 } // namespace Muon
68 
69 #endif // MUONTRACKINGGEOMETRY_MUONTRACKINGGEOMETRYBUILDER_H
Muon::MuonTrackingGeometryBuilder::trackingGeometry
virtual std::unique_ptr< Trk::TrackingGeometry > trackingGeometry(Trk::TrackingVolume *tvol=0) const override
TrackingGeometry Interface method.
Definition: MuonTrackingGeometryBuilder.cxx:39
Muon::MuonTrackingGeometryBuilder::MuonTrackingGeometryBuilder
MuonTrackingGeometryBuilder(const std::string &, const std::string &, const IInterface *)
Constructor.
Definition: MuonTrackingGeometryBuilder.cxx:13
Muon::MuonTrackingGeometryBuilder::geometrySignature
virtual Trk::GeometrySignature geometrySignature() const override
The unique signature.
Definition: MuonTrackingGeometryBuilder.h:50
Muon::MuonTrackingGeometryBuilder
Definition: MuonTrackingGeometryBuilder.h:36
IDetachedTrackingVolumeBuilderCond.h
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:45
Muon::MuonTrackingGeometryBuilder::m_inertBuilder
ToolHandle< Muon::MuonInertMaterialBuilder > m_inertBuilder
A Tool for inert object creation.
Definition: MuonTrackingGeometryBuilder.h:61
Trk::GeometrySignature
GeometrySignature
Definition: GeometrySignature.h:24
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::IGeometryBuilder
Definition: IGeometryBuilder.h:40
Muon::MuonTrackingGeometryBuilder::initialize
virtual StatusCode initialize() override
AlgTool initailize method.
Definition: MuonTrackingGeometryBuilder.cxx:22
Muon::MuonTrackingGeometryBuilder::m_stationBuilder
ToolHandle< Trk::IDetachedTrackingVolumeBuilder > m_stationBuilder
A Tool for station type creation.
Definition: MuonTrackingGeometryBuilder.h:55
Muon::MuonTrackingGeometryBuilder::~MuonTrackingGeometryBuilder
virtual ~MuonTrackingGeometryBuilder()=default
Destructor.
IGeometryBuilder.h
Muon::MuonTrackingGeometryBuilderImpl::signature
static Trk::GeometrySignature signature()
The unique signature.
Definition: MuonTrackingGeometryBuilderImpl.h:76
MuonInertMaterialBuilder.h
Trk::TrackingVolume
Definition: TrackingVolume.h:121
MuonTrackingGeometryBuilderImpl.h
Muon::MuonTrackingGeometryBuilderImpl
Definition: MuonTrackingGeometryBuilderImpl.h:54