![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
4 #ifndef MUONGEOMETRYCNV_MUONREADOUTGEOMCNVALG_H
5 #define MUONGEOMETRYCNV_MUONREADOUTGEOMCNVALG_H
17 #include "GeoModelKernel/GeoTransform.h"
18 #include "GeoModelHelpers/TransformSorter.h"
19 #include "GeoModelKernel/GeoVFullPhysVol.h"
20 #include "GeoModelKernel/GeoIdentifierTag.h"
49 return *
m_trfPool.insert(make_intrusive<GeoTransform>(
trf)).first;
52 std::unique_ptr<MuonGM::MuonDetectorManager>
detMgr{};
59 return make_intrusive<GeoIdentifierTag>(++
m_id);
62 std::set<GeoIntrusivePtr<GeoTransform>, GeoTrf::TransformSorter>
m_trfPool{};
74 ConstructionCache& cacheObj)
const;
81 ConstructionCache& cacheObj,
82 GeoIntrusivePtr<GeoVFullPhysVol>& clonedPhysVol,
87 ConstructionCache& cacheObj)
const;
90 ConstructionCache& cacheObj)
const;
93 ConstructionCache& cacheObj)
const;
96 ConstructionCache& cacheObj)
const;
99 ConstructionCache& cacheObj)
const;
102 ConstructionCache& cacheObj)
const;
134 Gaudi::Property<bool>
m_checkGeo{
this,
"checkGeo",
false,
"Checks the positions of the sensors"};
StatusCode buildMM(const ActsGeometryContext &gctx, ConstructionCache &cacheObj) const
The MuonReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the lega...
std::set< PVConstLink > translatedStations
Set of all translated Physical volumes.
GeoIntrusivePtr< GeoIdentifierTag > newIdTag()
Returns an identifier tag.
StatusCode cloneReadoutVolume(const ActsGeometryContext &gctx, const Identifier &stationId, ConstructionCache &cacheObj, GeoIntrusivePtr< GeoVFullPhysVol > &clonedPhysVol, MuonGM::MuonStation *&station) const
Clones the fullPhysical volume of the readoutElement and embeds it into the associated station.
Gaudi::Property< bool > m_checkGeo
The MuonReadoutElement is an abstract class representing the geometry representing the muon detector.
An RpcReadoutElement corresponds to a single RPC module; therefore typicaly a barrel muon station con...
PVLink world
Pointer to the world.
std::unique_ptr< MuonGM::MuonDetectorManager > detMgr
Pointer to the legacy MuonDetectorManager.
An algorithm that can be simultaneously executed in multiple threads.
Base class for the XxxReadoutElement, with Xxx = Mdt, Rpc, Tgc, Csc.
bool isReEntrant() const override
StatusCode dumpAndCompare(const ActsGeometryContext &gctx, const MuonGMR4::RpcReadoutElement &refEle, const MuonGM::RpcReadoutElement &testEle) const
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
::StatusCode StatusCode
StatusCode definition for legacy code.
An sTgcReadoutElement corresponds to a single STGC module; therefore typicaly a barrel muon station c...
Eigen::Affine3d Transform3D
A TgcReadoutElement corresponds to a single TGC chamber; therefore typically a TGC station contains s...
SG::WriteCondHandleKey< MuonGM::MuonDetectorManager > m_writeKey
GeoIntrusivePtr< GeoVFullPhysVol > cloneNswWedge(const ActsGeometryContext &gctx, const MuonGMR4::MuonReadoutElement *nswRE, ConstructionCache &cacheObj) const
Clones the fullPhysicalVolume of the
Include the GeoPrimitives which need to be put first.
StatusCode buildTgc(const ActsGeometryContext &gctx, ConstructionCache &cacheObj) const
StatusCode buildRpc(const ActsGeometryContext &gctx, ConstructionCache &cacheObj) const
SG::ReadCondHandleKeyArray< ActsTrk::DetectorAlignStore > m_alignStoreKeys
MuonReadoutGeomCnvAlg(const std::string &name, ISvcLocator *pSvcLocator)
const MuonGMR4::MuonDetectorManager * m_detMgr
StatusCode initialize() override
ConstructionCache()=default
An MMReadoutElement corresponds to a single STGC module; therefore typicaly a barrel muon station con...
GeoIntrusivePtr< GeoTransform > makeTransform(const Amg::Transform3D &trf)
Transforms an Amg::Transform3D into a GeoModelTransform node If the transform has been shown before t...
~MuonReadoutGeomCnvAlg()=default
StatusCode buildStation(const ActsGeometryContext &gctx, const Identifier &stationId, ConstructionCache &cacheObj) const
builds a station object from readout element.
StatusCode buildMdt(const ActsGeometryContext &gctx, ConstructionCache &cacheObj) const
StatusCode checkIdCompability(const MuonGMR4::MuonReadoutElement &refEle, const MuonGM::MuonReadoutElement &testEle) const
std::set< GeoIntrusivePtr< GeoTransform >, GeoTrf::TransformSorter > m_trfPool
StatusCode execute(const EventContext &ctx) const override
StatusCode buildSTGC(const ActsGeometryContext &gctx, ConstructionCache &cacheObj) const