|
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef MUONTRACKINGGEOMETRY_MUONSTATIONBUILDERIMPL_H
6 #define MUONTRACKINGGEOMETRY_MUONSTATIONBUILDERIMPL_H
13 #include "GaudiKernel/ServiceHandle.h"
14 #include "GaudiKernel/ToolHandle.h"
15 #include "GeoModelKernel/GeoVPhysVol.h"
28 class MaterialProperties;
44 using GMInfo = std::pair<Amg::Transform3D, int>;
48 using DetachedVolVec = std::vector<std::unique_ptr<Trk::DetachedTrackingVolume>>;
50 bool blend =
false)
const;
57 this,
"MuonIdHelperSvc",
"Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
59 std::vector<std::pair<const GeoVPhysVol*, std::vector<GMInfo>>>
62 std::unique_ptr<Trk::DetachedTrackingVolume>
87 std::pair<std::pair<const GeoLogVol*, Trk::MaterialProperties*>,
88 std::vector<Amg::Transform3D>>>& vols,
89 std::vector<std::string>& volNames)
const;
92 this,
"StationTypeBuilder",
93 "Muon::MuonStationTypeBuilder/"
94 "MuonStationTypeBuilder"};
99 this,
"TrackingVolumeHelper",
100 "Trk::TrackingVolumeHelper/TrackingVolumeHelper"};
113 Gaudi::Property<bool>
m_buildCsc{
this,
"BuildCSCStations",
true};
114 Gaudi::Property<bool>
m_buildTgc{
this,
"BuildTGCStations",
true};
119 #endif // MUONTRACKINGGEOMETRY_MUONSTATIONBUILDERIMPL_H
void encloseLayers(const Trk::DetachedTrackingVolume *) const
void checkLayerId(std::string_view comment, const MuonGM::MuonDetectorManager *muonMgr, Identifier id, const Trk::Layer *lay) const
Trk::GMTreeBrowser m_gmBrowser
void identifyPrototype(Trk::TrackingVolume &station, int eta, int phi, const Amg::Transform3D &transf, const MuonGM::MuonDetectorManager *muonMgr) const
void identifyNSWLayers(Trk::DetachedTrackingVolume &station, const Identifier &id) const
Gaudi::Property< bool > m_buildTgc
std::vector< std::pair< const GeoVPhysVol *, std::vector< GMInfo > > > retrieveGMsensitive(const MuonGM::MuonDetectorManager *muonMgr) const
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
std::pair< Amg::Transform3D, int > GMInfo
virtual StatusCode initialize() override
void glueComponents(Trk::DetachedTrackingVolume *) const
ToolHandle< Muon::MuonStationTypeBuilder > m_muonStationTypeBuilder
Helper Tool to create TrackingVolume Arrays.
::StatusCode StatusCode
StatusCode definition for legacy code.
Eigen::Affine3d Transform3D
ToolHandle< Trk::ITrackingVolumeHelper > m_trackingVolumeHelper
Helper Tool to create TrackingVolumes.
MuonStationBuilderImpl::GMInfo GMInfo
std::unique_ptr< Trk::DetachedTrackingVolume > buildDetachedTrackingVolumeType(const MuonGM::MuonDetectorManager *muonMgr, const GeoVPhysVol *gv, GMInfo info) const
Trk::GeoMaterialConverter m_materialConverter
Identifier resolveId(std::string vname, GMInfo gm_info, int &eta, int &phi, const MuonGM::MuonDetectorManager *muonMgr) const
Ensure that the ATLAS eigen extensions are properly loaded.
void getNSWStationsForTranslation(const GeoVPhysVol *pv, const std::string &name, const Amg::Transform3D &, std::vector< std::pair< std::pair< const GeoLogVol *, Trk::MaterialProperties * >, std::vector< Amg::Transform3D >>> &vols, std::vector< std::string > &volNames) const
Gaudi::Property< bool > m_buildEndcap
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
MuonStationBuilderImpl(const std::string &, const std::string &, const IInterface *)
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
virtual ~MuonStationBuilderImpl()=default
Trk::Material m_muonMaterial
the material
DetachedVolVec buildDetachedTrackingVolumesImpl(const MuonGM::MuonDetectorManager *muonMgr, bool blend=false) const
Gaudi::Property< bool > m_buildCsc
Trk::VolumeConverter m_volumeConverter
material converter
void identifyLayers(Trk::DetachedTrackingVolume *, Identifier, int, int, const MuonGM::MuonDetectorManager *) const
Gaudi::Property< bool > m_buildBarrel
std::vector< std::unique_ptr< Trk::DetachedTrackingVolume > > DetachedVolVec