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 
19 class RpcReadoutGeomTool : public extends<AthAlgTool,IMuonReadoutGeomTool> {
20  public:
21  // Constructor
22  RpcReadoutGeomTool(const std::string &type, const std::string &name,
23  const IInterface *parent);
24 
26 
27  private:
29  "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
30 
31  ServiceHandle<IGeoDbTagSvc> m_geoDbTagSvc{this, "GeoDbTagSvc", "GeoDbTagSvc"};
32 
33  PublicToolHandle<IMuonGeoUtilityTool> m_geoUtilTool{this,"GeoUtilTool", "" };
34 
36  struct wRPCTable {
38  double stripPitchEta{0.};
40  double stripPitchPhi{0.};
42  double stripWidthEta{0.};
44  double stripWidthPhi{0.};
46  double firstOffSetPhi{0.};
48  double firstOffSetEta{0.};
50  unsigned int numEtaStrips{0};
52  unsigned int numPhiStrips{0};
53  };
54 
55  struct FactoryCache {
56 
57  using ParamBookTable = std::map<std::string, wRPCTable>;
58  using CutOutTable = std::map<Identifier, std::vector<CutOutArea>>;
59 
60  std::set<StripDesignPtr, StripDesignSorter> stripDesigns{};
61  std::set<StripLayerPtr, StripLayerSorter> stripLayers{};
64 
65  };
66 
68  StatusCode readParameterBook(FactoryCache& cache);
71 
72 };
73 
74 } // namespace MuonGMR4
75 #endif
MuonGMR4::RpcReadoutGeomTool::loadDimensions
StatusCode loadDimensions(RpcReadoutElement::defineArgs &args, FactoryCache &factory)
Loads the chamber dimensions from GeoModel.
Definition: RpcReadoutGeomTool.cxx:66
MuonGMR4::RpcReadoutElement::defineArgs
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/RpcReadoutElement.h:46
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripWidthPhi
double stripWidthPhi
Phi strip width.
Definition: RpcReadoutGeomTool.h:44
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:62
MuonGMR4::MmReadoutElement::parameterBook
Set of parameters to describe a RPC chamber.
Definition: MmReadoutElement.h:24
MuonGMR4::RpcReadoutGeomTool::readParameterBook
StatusCode readParameterBook(FactoryCache &cache)
Retrieves the auxillary tables from the database.
Definition: RpcReadoutGeomTool.cxx:278
MuonGMR4::RpcReadoutGeomTool
Definition: RpcReadoutGeomTool.h:19
MuonGMR4::RpcReadoutGeomTool::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: RpcReadoutGeomTool.h:28
MuonGMR4::RpcReadoutGeomTool::FactoryCache::stripLayers
std::set< StripLayerPtr, StripLayerSorter > stripLayers
Definition: RpcReadoutGeomTool.h:61
BchCleanup.mgr
mgr
Definition: BchCleanup.py:294
CutOutArea.h
MuonGMR4
The ReadoutGeomCnvAlg converts the Run4 Readout geometry build from the GeoModelXML into the legacy M...
Definition: MdtCalibInput.h:20
MuonGMR4::RpcReadoutGeomTool::FactoryCache::CutOutTable
std::map< Identifier, std::vector< CutOutArea > > CutOutTable
Definition: RpcReadoutGeomTool.h:58
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:50
AthAlgTool.h
MuonGMR4::RpcReadoutGeomTool::wRPCTable::firstOffSetEta
double firstOffSetEta
Offset of the first eta strip.
Definition: RpcReadoutGeomTool.h:48
test_pyathena.parent
parent
Definition: test_pyathena.py:15
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripPitchPhi
double stripPitchPhi
Phi strip pitch.
Definition: RpcReadoutGeomTool.h:40
MuonGMR4::RpcReadoutGeomTool::FactoryCache::ParamBookTable
std::map< std::string, wRPCTable > ParamBookTable
Definition: RpcReadoutGeomTool.h:57
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripPitchEta
double stripPitchEta
Eta strip pitch.
Definition: RpcReadoutGeomTool.h:38
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
MuonGMR4::RpcReadoutGeomTool::FactoryCache::cutOuts
CutOutTable cutOuts
Definition: RpcReadoutGeomTool.h:63
MuonGMR4::RpcReadoutGeomTool::FactoryCache::stripDesigns
std::set< StripDesignPtr, StripDesignSorter > stripDesigns
Definition: RpcReadoutGeomTool.h:60
RpcReadoutElement.h
MuonGMR4::RpcReadoutGeomTool::m_geoDbTagSvc
ServiceHandle< IGeoDbTagSvc > m_geoDbTagSvc
Definition: RpcReadoutGeomTool.h:31
MuonGMR4::RpcReadoutGeomTool::RpcReadoutGeomTool
RpcReadoutGeomTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: RpcReadoutGeomTool.cxx:61
MuonGMR4::RpcReadoutGeomTool::FactoryCache
Definition: RpcReadoutGeomTool.h:55
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
MuonGMR4::RpcReadoutGeomTool::buildReadOutElements
StatusCode buildReadOutElements(MuonDetectorManager &mgr) override final
Definition: RpcReadoutGeomTool.cxx:220
MuonGMR4::RpcReadoutGeomTool::m_geoUtilTool
PublicToolHandle< IMuonGeoUtilityTool > m_geoUtilTool
Definition: RpcReadoutGeomTool.h:33
MuonGMR4::RpcReadoutGeomTool::wRPCTable::firstOffSetPhi
double firstOffSetPhi
Offset of the first phi strip.
Definition: RpcReadoutGeomTool.h:46
IMuonReaoutGeomTool.h
MuonGMR4::RpcReadoutGeomTool::wRPCTable::stripWidthEta
double stripWidthEta
Eta strip width.
Definition: RpcReadoutGeomTool.h:42
IMuonGeoUtilityTool.h
MuonGMR4::RpcReadoutGeomTool::wRPCTable::numPhiStrips
unsigned int numPhiStrips
Number of phi strips.
Definition: RpcReadoutGeomTool.h:52
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:36