ATLAS Offline Software
MdtReadoutGeomTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONGEOMODELR4_MDTREAOUDGEOMTOOL_H
6 #define MUONGEOMODELR4_MDTREAOUDGEOMTOOL_H
7 
10 
15 
16 namespace MuonGMR4 {
19 class MdtReadoutGeomTool : public extends<AthAlgTool,IMuonReadoutGeomTool> {
20  public:
21  // Constructor
22  using base_class::base_class;
23 
24 
26 
27  private:
29  this, "IdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
30 
32  "GeoDbTagSvc"};
33 
34  PublicToolHandle<IMuonGeoUtilityTool> m_geoUtilTool{this,"GeoUtilTool", "" };
36  using ParamBookTable = std::map<std::string, parameterBook>;
37 
38  struct FactoryCache {
42  std::unordered_set<Identifier> readoutOnLeftSide{};
45  std::unordered_map<Identifier, CutTubeSet> cutTubes{};
47  };
48 
50  StatusCode readParameterBook(FactoryCache& facCache) const;
52  StatusCode loadDimensions(FactoryCache& facCache, MdtReadoutElement::defineArgs& args) const;
53 
54 };
55 
56 } // namespace MuonGMR4
57 #endif
MuonGMR4::MdtReadoutGeomTool::ParamBookTable
std::map< std::string, parameterBook > ParamBookTable
Definition: MdtReadoutGeomTool.h:36
MuonGMR4::parameterBook
MmReadoutElement::parameterBook parameterBook
Definition: MmReadoutElement.cxx:21
MuonGMR4::MdtReadoutGeomTool::FactoryCache::tubeLayers
MdtTubeLayerSet tubeLayers
Definition: MdtReadoutGeomTool.h:46
python.CaloAddPedShiftConfig.args
args
Definition: CaloAddPedShiftConfig.py:47
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:62
MuonGMR4::MdtReadoutGeomTool::FactoryCache
Definition: MdtReadoutGeomTool.h:38
MuonGMR4::MdtReadoutGeomTool::FactoryCache::cutTubes
std::unordered_map< Identifier, CutTubeSet > cutTubes
Definition: MdtReadoutGeomTool.h:45
MuonGMR4::MdtReadoutGeomTool::m_geoDbTagSvc
ServiceHandle< IGeoDbTagSvc > m_geoDbTagSvc
Definition: MdtReadoutGeomTool.h:31
MuonGMR4::MdtReadoutGeomTool::readParameterBook
StatusCode readParameterBook(FactoryCache &facCache) const
Retrieves the auxillary tables from the database.
Definition: MdtReadoutGeomTool.cxx:172
MuonGMR4::MdtReadoutGeomTool::m_geoUtilTool
PublicToolHandle< IMuonGeoUtilityTool > m_geoUtilTool
Definition: MdtReadoutGeomTool.h:34
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
MuonGMR4
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
Definition: MdtCalibInput.h:19
MuonGMR4::MdtReadoutElement::parameterBook
Set of parameters to describe a MDT chamber.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h:22
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
MuonGMR4::MdtTubeLayer::CutTubes
Constructor taking the GeoModel parent node of the tube nodes.
Definition: MdtTubeLayer.h:36
MuonGMR4::MdtReadoutGeomTool
Implementation of the IMuonReadoutGeomTool to construct MdtReadoutElements from the list of published...
Definition: MdtReadoutGeomTool.h:19
MuonGMR4::MdtReadoutGeomTool::buildReadOutElements
StatusCode buildReadOutElements(MuonDetectorManager &mgr) override final
Definition: MdtReadoutGeomTool.cxx:110
MuonGMR4::MdtReadoutGeomTool::loadDimensions
StatusCode loadDimensions(FactoryCache &facCache, MdtReadoutElement::defineArgs &args) const
Loads the chamber dimensions from GeoModel.
Definition: MdtReadoutGeomTool.cxx:34
MuonGMR4::MdtReadoutGeomTool::FactoryCache::readoutOnLeftSide
std::unordered_set< Identifier > readoutOnLeftSide
List of chambers that have the readout chip at negative Z.
Definition: MdtReadoutGeomTool.h:42
MuonGMR4::MdtTubeLayerSet
std::set< MdtTubeLayerPtr, MdtTubeLayerSorter > MdtTubeLayerSet
Definition: MdtTubeLayer.h:23
MdtReadoutElement.h
MuonGMR4::MdtReadoutGeomTool::FactoryCache::CutTubeSet
MdtTubeLayer::CutTubeSet CutTubeSet
Definition: MdtReadoutGeomTool.h:44
MuonGMR4::MdtTubeLayer::CutTubeSet
std::set< CutTubes, std::less<> > CutTubeSet
Definition: MdtTubeLayer.h:48
IMuonReaoutGeomTool.h
IMuonGeoUtilityTool.h
IMuonIdHelperSvc.h
IGeoDbTagSvc.h
MuonGMR4::MdtReadoutGeomTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MdtReadoutGeomTool.h:28
ServiceHandle< Muon::IMuonIdHelperSvc >
MuonGMR4::MdtReadoutElement::defineArgs
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h:70
MuonGMR4::MdtReadoutGeomTool::FactoryCache::parBook
ParamBookTable parBook
Definition: MdtReadoutGeomTool.h:39