ATLAS Offline Software
xAODSimHitTosTGCMeasCnvAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef XAODMUONSIMHITCNV_xAODSimHitTosTGCMeasurementCnvAlg_H
5 #define XAODMUONSIMHITCNV_xAODSimHitTosTGCMeasurementCnvAlg_H
6 
8 
12 
17 
18 
21 
23 #include <CLHEP/Random/RandomEngine.h>
24 
26 
33  public:
34  xAODSimHitTosTGCMeasCnvAlg(const std::string& name, ISvcLocator* pSvcLocator);
35 
37 
38  StatusCode execute(const EventContext& ctx) const override;
39  StatusCode initialize() override;
40 
41  private:
42  CLHEP::HepRandomEngine* getRandomEngine(const EventContext& ctx) const;
43 
44  void digitizeStrip(const EventContext& ctx,
45  const xAOD::MuonSimHit& simHit,
46  xAOD::sTgcStripContainer& stripContainer,
47  CLHEP::HepRandomEngine* rndEngine) const;
48 
49  void digitizeWire(const EventContext& ctx,
50  const xAOD::MuonSimHit& simHit,
51  xAOD::sTgcWireContainer& wireContainer,
52  CLHEP::HepRandomEngine* rndEngine) const;
53 
54  void digitizePad(const EventContext& ctx,
55  const xAOD::MuonSimHit& simHit,
56  xAOD::sTgcPadContainer& padContainer) const;
57 
58  SG::ReadHandleKey<xAOD::MuonSimHitContainer> m_readKey{this, "InputCollection", "xStgcSimHits",
59  "Name of the new xAOD SimHit collection"};
60 
61  SG::ReadHandleKey<ActsGeometryContext> m_geoCtxKey{this, "AlignmentKey", "ActsAlignment", "cond handle key"};
62 
63  SG::WriteHandleKey<xAOD::sTgcStripContainer> m_writeKeyStrip{this, "StripWriteKey", "xAODsTgcStrips",
64  "Write strip key"};
65 
66  SG::WriteHandleKey<xAOD::sTgcWireContainer> m_writeKeyWire{this, "WireWriteKey", "xAODsTgcWires",
67  "Write wire key"};
68  SG::WriteHandleKey<xAOD::sTgcPadContainer> m_writeKeyPad{this, "PadWriteKey", "xAODsTgcPads",
69  "Write pad key"};
70 
71 
74 
75  ServiceHandle<Muon::IMuonIdHelperSvc> m_idHelperSvc{this, "MuonIdHelperSvc", "Muon::MuonIdHelperSvc/MuonIdHelperSvc"};
76 
77  ServiceHandle<IAthRNGSvc> m_rndmSvc{this, "RndmSvc", "AthRNGSvc", ""}; // Random number service
78  Gaudi::Property<std::string> m_streamName{this, "RandomStream", "sTGCSimHitForkLifting"};
79 
80  SG::ReadCondHandleKey<NswErrorCalibData> m_uncertCalibKey{this, "ErrorCalibKey", "NswUncertData",
81  "Key of the parametrized NSW uncertainties"};
82 
83 };
84 
85 #endif
xAODSimHitTosTGCMeasCnvAlg::m_streamName
Gaudi::Property< std::string > m_streamName
Definition: xAODSimHitTosTGCMeasCnvAlg.h:78
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
xAOD::MuonSimHit_v1
Definition: MuonSimHit_v1.h:18
xAODSimHitTosTGCMeasCnvAlg::m_uncertCalibKey
SG::ReadCondHandleKey< NswErrorCalibData > m_uncertCalibKey
Definition: xAODSimHitTosTGCMeasCnvAlg.h:80
xAODSimHitTosTGCMeasCnvAlg
The xAODSimHitTosTGCMasCnvAlg is a short cut towards the stgc strip measurement It takes the SimHits ...
Definition: xAODSimHitTosTGCMeasCnvAlg.h:32
xAODSimHitTosTGCMeasCnvAlg::m_writeKeyWire
SG::WriteHandleKey< xAOD::sTgcWireContainer > m_writeKeyWire
Definition: xAODSimHitTosTGCMeasCnvAlg.h:66
xAODSimHitTosTGCMeasCnvAlg::xAODSimHitTosTGCMeasCnvAlg
xAODSimHitTosTGCMeasCnvAlg(const std::string &name, ISvcLocator *pSvcLocator)
Definition: xAODSimHitTosTGCMeasCnvAlg.cxx:22
MuonGMR4::MuonDetectorManager
Definition: MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h:61
xAODSimHitTosTGCMeasCnvAlg::digitizeWire
void digitizeWire(const EventContext &ctx, const xAOD::MuonSimHit &simHit, xAOD::sTgcWireContainer &wireContainer, CLHEP::HepRandomEngine *rndEngine) const
Definition: xAODSimHitTosTGCMeasCnvAlg.cxx:92
xAODSimHitTosTGCMeasCnvAlg::digitizePad
void digitizePad(const EventContext &ctx, const xAOD::MuonSimHit &simHit, xAOD::sTgcPadContainer &padContainer) const
Definition: xAODSimHitTosTGCMeasCnvAlg.cxx:144
xAODSimHitTosTGCMeasCnvAlg::m_DetMgr
const MuonGMR4::MuonDetectorManager * m_DetMgr
Access to the new readout geometry.
Definition: xAODSimHitTosTGCMeasCnvAlg.h:73
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
xAODSimHitTosTGCMeasCnvAlg::initialize
StatusCode initialize() override
Definition: xAODSimHitTosTGCMeasCnvAlg.cxx:26
sTgcWireContainer.h
xAODSimHitTosTGCMeasCnvAlg::m_writeKeyPad
SG::WriteHandleKey< xAOD::sTgcPadContainer > m_writeKeyPad
Definition: xAODSimHitTosTGCMeasCnvAlg.h:68
xAODSimHitTosTGCMeasCnvAlg::m_geoCtxKey
SG::ReadHandleKey< ActsGeometryContext > m_geoCtxKey
Definition: xAODSimHitTosTGCMeasCnvAlg.h:61
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAODSimHitTosTGCMeasCnvAlg::m_readKey
SG::ReadHandleKey< xAOD::MuonSimHitContainer > m_readKey
Definition: xAODSimHitTosTGCMeasCnvAlg.h:58
MuonDetectorManager.h
MuonSimHitContainer.h
NswErrorCalibData.h
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
xAODSimHitTosTGCMeasCnvAlg::execute
StatusCode execute(const EventContext &ctx) const override
Definition: xAODSimHitTosTGCMeasCnvAlg.cxx:179
xAODSimHitTosTGCMeasCnvAlg::m_rndmSvc
ServiceHandle< IAthRNGSvc > m_rndmSvc
Definition: xAODSimHitTosTGCMeasCnvAlg.h:77
xAODSimHitTosTGCMeasCnvAlg::getRandomEngine
CLHEP::HepRandomEngine * getRandomEngine(const EventContext &ctx) const
Definition: xAODSimHitTosTGCMeasCnvAlg.cxx:220
ReadCondHandleKey.h
xAODSimHitTosTGCMeasCnvAlg::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: xAODSimHitTosTGCMeasCnvAlg.h:75
AthReentrantAlgorithm.h
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
xAODSimHitTosTGCMeasCnvAlg::m_writeKeyStrip
SG::WriteHandleKey< xAOD::sTgcStripContainer > m_writeKeyStrip
Definition: xAODSimHitTosTGCMeasCnvAlg.h:63
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
sTgcPadContainer.h
SG::ReadCondHandleKey< NswErrorCalibData >
xAODSimHitTosTGCMeasCnvAlg::digitizeStrip
void digitizeStrip(const EventContext &ctx, const xAOD::MuonSimHit &simHit, xAOD::sTgcStripContainer &stripContainer, CLHEP::HepRandomEngine *rndEngine) const
Definition: xAODSimHitTosTGCMeasCnvAlg.cxx:40
sTgcStripContainer.h
xAODSimHitTosTGCMeasCnvAlg::~xAODSimHitTosTGCMeasCnvAlg
~xAODSimHitTosTGCMeasCnvAlg()=default
IMuonIdHelperSvc.h
IAthRNGSvc.h
ServiceHandle< Muon::IMuonIdHelperSvc >