ATLAS Offline Software
MmReadoutGeomTool.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_MMREAOUDGEOMTOOL_H
6 #define MUONGEOMODELR4_MMREAOUDGEOMTOOL_H
7 
11 
16 
17 namespace MuonGMR4 {
18 
20  virtual public IMuonReadoutGeomTool {
21  public:
22  // Constructor
23  MmReadoutGeomTool(const std::string &type, const std::string &name,
24  const IInterface *parent);
25 
27 
28 
29  private:
31  "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
32 
33  ServiceHandle<IGeoDbTagSvc> m_geoDbTagSvc{this, "GeoDbTagSvc", "GeoDbTagSvc"};
34 
35  PublicToolHandle<IMuonGeoUtilityTool> m_geoUtilTool{this,"GeoUtilTool", "" };
36 
38  struct wMMTable {
39  double stripPitch{0.};
40  double stripWidth{0.};
41  double distBotFrameStrip{0.};
42  std::vector<double> stereoAngle{};
43  std::vector<int> totalActiveStrips{};
44  std::vector<int> readoutSide{};
47  int nMissedTopEta{0};
48  std::vector<StripLayer> layers{};
49  };
50 
51 
52  struct FactoryCache {
53 
54  using ParamBookTable = std::map<std::string, wMMTable>;
55  std::set<StripDesignPtr, StripDesignSorter> stripDesigns{};
56  std::set<StripLayerPtr, StripLayerSorter> stripLayers{};
57 
59 
60  };
61 
62 
64  StatusCode readParameterBook(FactoryCache& cache);
65 
68  FactoryCache& factory);
69 };
70 
71 } // namespace MuonGMR4
72 #endif
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:61
MuonGMR4::MmReadoutGeomTool::wMMTable::readoutSide
std::vector< int > readoutSide
Definition: MmReadoutGeomTool.h:44
MuonGMR4::MmReadoutElement::parameterBook
Set of parameters to describe a RPC chamber.
Definition: MmReadoutElement.h:23
MuonGMR4::MmReadoutGeomTool::wMMTable::stripWidth
double stripWidth
Definition: MmReadoutGeomTool.h:40
MuonGMR4::MmReadoutGeomTool::wMMTable::stereoAngle
std::vector< double > stereoAngle
Definition: MmReadoutGeomTool.h:42
MuonGMR4::MmReadoutGeomTool::FactoryCache
Definition: MmReadoutGeomTool.h:52
MuonGMR4::MmReadoutGeomTool
Definition: MmReadoutGeomTool.h:20
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
CutOutArea.h
MuonGMR4::MmReadoutGeomTool::wMMTable::totalActiveStrips
std::vector< int > totalActiveStrips
Definition: MmReadoutGeomTool.h:43
MuonGMR4
A muon chamber is a collection of readout elements belonging to the same station.
Definition: ChamberAssembleTool.h:16
MuonGMR4::MmReadoutGeomTool::wMMTable::distBotFrameStrip
double distBotFrameStrip
Definition: MmReadoutGeomTool.h:41
MuonGMR4::IMuonReadoutGeomTool
Definition: IMuonReaoutGeomTool.h:20
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonGMR4::MmReadoutGeomTool::wMMTable::stripPitch
double stripPitch
Definition: MmReadoutGeomTool.h:39
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
MuonGMR4::MmReadoutGeomTool::wMMTable::layers
std::vector< StripLayer > layers
Definition: MmReadoutGeomTool.h:48
MuonGMR4::MmReadoutGeomTool::buildReadOutElements
StatusCode buildReadOutElements(MuonDetectorManager &mgr) override final
Retrieves the GeoModel from the GeoModelSvc and append the ReadoutElements of the Given MuonDetectorT...
Definition: MmReadoutGeomTool.cxx:165
MuonGMR4::MmReadoutGeomTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: MmReadoutGeomTool.h:30
MuonGMR4::MmReadoutGeomTool::FactoryCache::stripLayers
std::set< StripLayerPtr, StripLayerSorter > stripLayers
Definition: MmReadoutGeomTool.h:56
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
MuonGMR4::MmReadoutGeomTool::m_geoDbTagSvc
ServiceHandle< IGeoDbTagSvc > m_geoDbTagSvc
Definition: MmReadoutGeomTool.h:33
MuonGMR4::MmReadoutGeomTool::readParameterBook
StatusCode readParameterBook(FactoryCache &cache)
Retrieves the auxillary tables from the database.
Definition: MmReadoutGeomTool.cxx:229
MuonGMR4::MmReadoutGeomTool::wMMTable
Struct to cache the relevant parameters of from the WRPC tables.
Definition: MmReadoutGeomTool.h:38
MuonGMR4::MmReadoutGeomTool::m_geoUtilTool
PublicToolHandle< IMuonGeoUtilityTool > m_geoUtilTool
Definition: MmReadoutGeomTool.h:35
MuonGMR4::MmReadoutGeomTool::wMMTable::nMissedBottomEta
int nMissedBottomEta
Definition: MmReadoutGeomTool.h:45
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
MuonGMR4::MmReadoutGeomTool::wMMTable::nMissedTopEta
int nMissedTopEta
Definition: MmReadoutGeomTool.h:47
AthAlgTool
Definition: AthAlgTool.h:26
IMuonReaoutGeomTool.h
MuonGMR4::MmReadoutGeomTool::MmReadoutGeomTool
MmReadoutGeomTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: MmReadoutGeomTool.cxx:29
MuonGMR4::MmReadoutGeomTool::wMMTable::nMissedBottomStereo
int nMissedBottomStereo
Definition: MmReadoutGeomTool.h:46
MuonGMR4::MmReadoutGeomTool::FactoryCache::stripDesigns
std::set< StripDesignPtr, StripDesignSorter > stripDesigns
Definition: MmReadoutGeomTool.h:55
MuonGMR4::MmReadoutGeomTool::FactoryCache::ParamBookTable
std::map< std::string, wMMTable > ParamBookTable
Definition: MmReadoutGeomTool.h:54
IMuonGeoUtilityTool.h
IMuonIdHelperSvc.h
python.CaloScaleNoiseConfig.args
args
Definition: CaloScaleNoiseConfig.py:80
IGeoDbTagSvc.h
MuonGMR4::MmReadoutElement::defineArgs
Definition: MmReadoutElement.h:48
MmReadoutElement.h
MuonGMR4::MmReadoutGeomTool::loadDimensions
StatusCode loadDimensions(MmReadoutElement::defineArgs &args, FactoryCache &factory)
Loads the chamber dimensions from GeoModel.
Definition: MmReadoutGeomTool.cxx:36
ServiceHandle< Muon::IMuonIdHelperSvc >