ATLAS Offline Software
RT_Relation_DB_DigiTool.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 MDT_DIGITIZATION_RT_RELATION_DB_DIGITOOL_H
6 #define MDT_DIGITIZATION_RT_RELATION_DB_DIGITOOL_H
7 
8 /*-----------------------------------------------
9 Created 8-10-2009 by Dinos Bachas
10 Digitization tool which uses an rt-relation from Conditions Database
11 Adopted from RT_Relation_DigiTool
12 -----------------------------------------------*/
13 
15 #include "CLHEP/Random/RandFlat.h"
16 #include "CLHEP/Random/RandGaussZiggurat.h"
17 #include "Identifier/Identifier.h"
28 
29 namespace MuonGM {
30  class MuonDetectorManager;
31 }
32 
34 public:
35  // Constructor
36  RT_Relation_DB_DigiTool(const std::string& type, const std::string& name, const IInterface* parent);
37 
38  // Methods
39  virtual StatusCode initialize() override;
40  virtual MdtDigiToolOutput digitize(const EventContext& ctx,
41  const MdtDigiToolInput& input,
42  CLHEP::HepRandomEngine* rndmEngine) const override final;
43 
44 private:
45  // Methods
46  double getDriftTime(const EventContext& ctx,
47  double measRadius,
48  double innerTubeRadius,
49  const Identifier& DigitId,
50  CLHEP::HepRandomEngine* rndmEngine) const;
51 
52  static double getAdcResponse(double radius, CLHEP::HepRandomEngine* rndmEngine) ;
53 
54  SG::ReadCondHandleKey<MuonCalib::MdtCalibDataContainer> m_calibDbKey{this, "CalibDataKey", "MdtCalibConstants",
55  "Conditions object containing the calibrations"};
56 
57  SG::ReadCondHandleKey<MuonGM::MuonDetectorManager> m_detMgrKey{this, "DetMgr", "MuonDetectorManager", ""};
58 
59  Gaudi::Property<double> m_effRadius{this, "EffectiveRadius", 14.4275};
60 };
61 
62 #endif
MdtDigiToolInput
Definition: MdtDigiToolInput.h:26
MuonGM
Ensure that the Athena extensions are properly loaded.
Definition: GeoMuonHits.h:27
TrRelation.h
MdtCalibDataContainer.h
RT_Relation_DB_DigiTool::getAdcResponse
static double getAdcResponse(double radius, CLHEP::HepRandomEngine *rndmEngine)
Definition: RT_Relation_DB_DigiTool.cxx:128
MdtDigiToolOutput
Definition: MdtDigiToolOutput.h:19
IMDT_DigitizationTool
Definition: IMDT_DigitizationTool.h:23
IMDT_DigitizationTool.h
MdtRtRelation.h
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
RT_Relation_DB_DigiTool::RT_Relation_DB_DigiTool
RT_Relation_DB_DigiTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: RT_Relation_DB_DigiTool.cxx:15
IRtResolution.h
ReadCondHandleKey.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
ParticleGun_SamplingFraction.radius
radius
Definition: ParticleGun_SamplingFraction.py:96
RT_Relation_DB_DigiTool::initialize
virtual StatusCode initialize() override
Definition: RT_Relation_DB_DigiTool.cxx:20
MuonDetectorManager.h
SG::ReadCondHandleKey< MuonCalib::MdtCalibDataContainer >
RT_Relation_DB_DigiTool
Definition: RT_Relation_DB_DigiTool.h:33
RT_Relation_DB_DigiTool::digitize
virtual MdtDigiToolOutput digitize(const EventContext &ctx, const MdtDigiToolInput &input, CLHEP::HepRandomEngine *rndmEngine) const override final
Definition: RT_Relation_DB_DigiTool.cxx:27
RT_Relation_DB_DigiTool::m_detMgrKey
SG::ReadCondHandleKey< MuonGM::MuonDetectorManager > m_detMgrKey
Definition: RT_Relation_DB_DigiTool.h:57
IRtRelation.h
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
MdtFullCalibData.h
AthAlgTool
Definition: AthAlgTool.h:26
RT_Relation_DB_DigiTool::m_calibDbKey
SG::ReadCondHandleKey< MuonCalib::MdtCalibDataContainer > m_calibDbKey
Definition: RT_Relation_DB_DigiTool.h:54
RT_Relation_DB_DigiTool::m_effRadius
Gaudi::Property< double > m_effRadius
Definition: RT_Relation_DB_DigiTool.h:59
RT_Relation_DB_DigiTool::getDriftTime
double getDriftTime(const EventContext &ctx, double measRadius, double innerTubeRadius, const Identifier &DigitId, CLHEP::HepRandomEngine *rndmEngine) const
Definition: RT_Relation_DB_DigiTool.cxx:46
MdtDigiToolOutput.h