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 {
17 
18 class MdtReadoutGeomTool : public extends<AthAlgTool,IMuonReadoutGeomTool> {
19  public:
20  // Constructor
21  MdtReadoutGeomTool(const std::string &type, const std::string &name,
22  const IInterface *parent);
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:22
MuonGMR4::MdtReadoutGeomTool::FactoryCache::tubeLayers
MdtTubeLayerSet tubeLayers
Definition: MdtReadoutGeomTool.h:46
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:181
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:20
MuonGMR4::MdtReadoutElement::parameterBook
Set of parameters to describe a MDT chamber.
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MdtReadoutElement.h:27
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonGMR4::MdtReadoutGeomTool::MdtReadoutGeomTool
MdtReadoutGeomTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: MdtReadoutGeomTool.cxx:36
AthAlgTool.h
MuonGMR4::MdtTubeLayer::CutTubes
Constructor taking the GeoModel parent node of the tube nodes.
Definition: MdtTubeLayer.h:36
MuonGMR4::MdtReadoutGeomTool
Definition: MdtReadoutGeomTool.h:18
test_pyathena.parent
parent
Definition: test_pyathena.py:15
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
MuonGMR4::MdtReadoutGeomTool::buildReadOutElements
StatusCode buildReadOutElements(MuonDetectorManager &mgr) override final
Definition: MdtReadoutGeomTool.cxx:117
MuonGMR4::MdtReadoutGeomTool::loadDimensions
StatusCode loadDimensions(FactoryCache &facCache, MdtReadoutElement::defineArgs &args) const
Loads the chamber dimensions from GeoModel.
Definition: MdtReadoutGeomTool.cxx:41
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
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
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
python.CaloScaleNoiseConfig.args
args
Definition: CaloScaleNoiseConfig.py:80
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:76
MuonGMR4::MdtReadoutGeomTool::FactoryCache::parBook
ParamBookTable parBook
Definition: MdtReadoutGeomTool.h:39