ATLAS Offline Software
RpcReadoutGeomTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef MUONGEOMODELR4_RPCREAOUDGEOMTOOL_H
6 #define MUONGEOMODELR4_RPCREAOUDGEOMTOOL_H
7 
11 
16 
17 namespace MuonGMR4 {
18 
20  virtual public IMuonReadoutGeomTool {
21  public:
22  // Constructor
23  RpcReadoutGeomTool(const std::string &type, const std::string &name,
24  const IInterface *parent);
25 
27 
28  private:
30  "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
31 
32  ServiceHandle<IGeoDbTagSvc> m_geoDbTagSvc{this, "GeoDbTagSvc", "GeoDbTagSvc"};
33 
34  PublicToolHandle<IMuonGeoUtilityTool> m_geoUtilTool{this,"GeoUtilTool", "" };
35 
37  struct wRPCTable {
39  double stripPitchEta{0.};
41  double stripPitchPhi{0.};
43  double stripWidthEta{0.};
45  double stripWidthPhi{0.};
47  double firstOffSetPhi{0.};
49  double firstOffSetEta{0.};
51  unsigned int numEtaStrips{0};
53  unsigned int numPhiStrips{0};
54  };
55 
56  struct FactoryCache {
57 
58  using ParamBookTable = std::map<std::string, wRPCTable>;
59  using CutOutTable = std::map<Identifier, std::vector<CutOutArea>>;
60 
61  std::set<StripDesignPtr, StripDesignSorter> stripDesigns{};
62  std::set<StripLayerPtr, StripLayerSorter> stripLayers{};
65 
66  };
67 
69  StatusCode readParameterBook(FactoryCache& cache);
72 
73 };
74 
75 } // namespace MuonGMR4
76 #endif
MuonGMR4::RpcReadoutGeomTool::loadDimensions
StatusCode loadDimensions(RpcReadoutElement::defineArgs &args, FactoryCache &factory)
Loads the chamber dimensions from GeoModel.
Definition: RpcReadoutGeomTool.cxx:63
MuonGMR4::RpcReadoutElement::defineArgs
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/RpcReadoutElement.h:43
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripWidthPhi
double stripWidthPhi
Phi strip width.
Definition: RpcReadoutGeomTool.h:45
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:61
MuonGMR4::MmReadoutElement::parameterBook
Set of parameters to describe a RPC chamber.
Definition: MmReadoutElement.h:23
MuonGMR4::RpcReadoutGeomTool::readParameterBook
StatusCode readParameterBook(FactoryCache &cache)
Retrieves the auxillary tables from the database.
Definition: RpcReadoutGeomTool.cxx:275
MuonGMR4::RpcReadoutGeomTool
Definition: RpcReadoutGeomTool.h:20
MuonGMR4::RpcReadoutGeomTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: RpcReadoutGeomTool.h:29
MuonGMR4::RpcReadoutGeomTool::FactoryCache::stripLayers
std::set< StripLayerPtr, StripLayerSorter > stripLayers
Definition: RpcReadoutGeomTool.h:62
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
CutOutArea.h
MuonGMR4
A muon chamber is a collection of readout elements belonging to the same station.
Definition: ChamberAssembleTool.h:16
MuonGMR4::RpcReadoutGeomTool::FactoryCache::CutOutTable
std::map< Identifier, std::vector< CutOutArea > > CutOutTable
Definition: RpcReadoutGeomTool.h:59
MuonGMR4::IMuonReadoutGeomTool
Definition: IMuonReaoutGeomTool.h:20
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
MuonGMR4::RpcReadoutGeomTool::wRPCTable::numEtaStrips
unsigned int numEtaStrips
Number of eta strips.
Definition: RpcReadoutGeomTool.h:51
AthAlgTool.h
MuonGMR4::RpcReadoutGeomTool::wRPCTable::firstOffSetEta
double firstOffSetEta
Offset of the first eta strip.
Definition: RpcReadoutGeomTool.h:49
test_pyathena.parent
parent
Definition: test_pyathena.py:15
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripPitchPhi
double stripPitchPhi
Phi strip pitch.
Definition: RpcReadoutGeomTool.h:41
MuonGMR4::RpcReadoutGeomTool::FactoryCache::ParamBookTable
std::map< std::string, wRPCTable > ParamBookTable
Definition: RpcReadoutGeomTool.h:58
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripPitchEta
double stripPitchEta
Eta strip pitch.
Definition: RpcReadoutGeomTool.h:39
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
MuonGMR4::RpcReadoutGeomTool::FactoryCache::cutOuts
CutOutTable cutOuts
Definition: RpcReadoutGeomTool.h:64
MuonGMR4::RpcReadoutGeomTool::FactoryCache::stripDesigns
std::set< StripDesignPtr, StripDesignSorter > stripDesigns
Definition: RpcReadoutGeomTool.h:61
RpcReadoutElement.h
MuonGMR4::RpcReadoutGeomTool::m_geoDbTagSvc
ServiceHandle< IGeoDbTagSvc > m_geoDbTagSvc
Definition: RpcReadoutGeomTool.h:32
MuonGMR4::RpcReadoutGeomTool::RpcReadoutGeomTool
RpcReadoutGeomTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: RpcReadoutGeomTool.cxx:56
MuonGMR4::RpcReadoutGeomTool::FactoryCache
Definition: RpcReadoutGeomTool.h:56
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
MuonGMR4::RpcReadoutGeomTool::buildReadOutElements
StatusCode buildReadOutElements(MuonDetectorManager &mgr) override final
Retrieves the GeoModel from the GeoModelSvc and append the ReadoutElements of the Given MuonDetectorT...
Definition: RpcReadoutGeomTool.cxx:217
MuonGMR4::RpcReadoutGeomTool::m_geoUtilTool
PublicToolHandle< IMuonGeoUtilityTool > m_geoUtilTool
Definition: RpcReadoutGeomTool.h:34
MuonGMR4::RpcReadoutGeomTool::wRPCTable::firstOffSetPhi
double firstOffSetPhi
Offset of the first phi strip.
Definition: RpcReadoutGeomTool.h:47
AthAlgTool
Definition: AthAlgTool.h:26
IMuonReaoutGeomTool.h
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripWidthEta
double stripWidthEta
Eta strip width.
Definition: RpcReadoutGeomTool.h:43
IMuonGeoUtilityTool.h
MuonGMR4::RpcReadoutGeomTool::wRPCTable::numPhiStrips
unsigned int numPhiStrips
Number of phi strips.
Definition: RpcReadoutGeomTool.h:53
IMuonIdHelperSvc.h
python.CaloScaleNoiseConfig.args
args
Definition: CaloScaleNoiseConfig.py:80
IGeoDbTagSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >
MuonGMR4::RpcReadoutGeomTool::wRPCTable
Struct to cache the relevant parameters of from the WRPC tables.
Definition: RpcReadoutGeomTool.h:37