![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef MM_DIGITIZATIONTOOL_H
6 #define MM_DIGITIZATIONTOOL_H
40 #include "CLHEP/Geometry/Point3D.h"
41 #include "CLHEP/Random/RandomEngine.h"
42 #include "CLHEP/Vector/ThreeVector.h"
43 #include "GaudiKernel/AlgTool.h"
44 #include "GaudiKernel/ServiceHandle.h"
45 #include "GaudiKernel/ToolHandle.h"
114 Gaudi::Property<std::string>
m_rndmEngineName{
this,
"RndmEngine",
"MuonDigitization",
"Random engine name"};
117 ToolHandle<Muon::INSWCalibSmearingTool>
m_smearingTool{
this,
"SmearingTool",
"Muon::NSWCalibSmearingTool/MMCalibSmearingTool"};
118 ToolHandle<Muon::INSWCalibTool>
m_calibrationTool{
this,
"CalibrationTool",
"Muon::NSWCalibTool/NSWCalibTool"};
122 this,
"CondThrshldsKey",
"NswCalibDbThresholdData",
123 "Key of NswCalibDbThresholdData object containing calibration data (VMM thresholds)"};
126 "Don't use the ReadHandleKey directly. Just extract the container name from it."};
130 Gaudi::Property<std::string>
m_vmmReadoutMode{
this,
"vmmReadoutMode",
"peak",
"For readout (DAQ) path. Can be peak or threshold"};
131 Gaudi::Property<std::string>
m_vmmARTMode{
this,
"vmmARTMode",
"threshold",
"For ART (trigger) path. Can be peak or threshold"};
133 Gaudi::Property<double>
m_energyThreshold{
this,
"EnergyThreshold", 50,
"Minimal energy to produce a PRD"};
135 "lower boundary of the time window in which digits are accepted"};
137 "upper boundary of the time window in which digits are accepted"};
140 Gaudi::Property<int>
m_maskMultiplet{
this,
"MaskMultiplet", 0,
"0: all, 1: first, 2: second, 3: both"};
144 Gaudi::Property<bool>
m_checkMMSimHits{
this,
"CheckSimHits",
true,
"Control on the hit validity"};
148 "set the usage or not of the smearing tool for realistic detector performance"};
155 Gaudi::Property<float>
m_qThreshold{
this,
"qThreshold", 0.001,
"Charge Threshold"};
156 Gaudi::Property<float>
m_driftGapWidth{
this,
"DriftGapWidth", 5.04,
"Drift Gap Width of 5.04 mm"};
157 Gaudi::Property<float>
m_crossTalk1{
this,
"crossTalk1", 0.3,
"Strip Cross Talk with Nearest Neighbor"};
158 Gaudi::Property<float>
m_crossTalk2{
this,
"crossTalk2", 0.09,
"Strip Cross Talk with 2nd Nearest Neighbor"};
160 Gaudi::Property<float>
m_avalancheGain{
this,
"AvalancheGain", 6.0e3,
"avalanche Gain for rach gas mixture"};
164 "threshold Voltage for histoBNL, 2*(Intrinsic noise ~3k e)"};
165 Gaudi::Property<float>
m_stripdeadtime{
this,
"StripDeadTime", 200,
"dead-time for strip, default value 200 ns = 8 BCs"};
166 Gaudi::Property<float>
m_ARTdeadtime{
this,
"ARTDeadTime", 200,
"dead-time for ART, default value 200 ns = 8 BCs"};
169 this,
"OutputObjectName",
"MM_DIGITS",
"WriteHandleKey for Output MmigitContainer"};
171 this,
"OutputSDOName",
"MM_SDO",
"WriteHandleKey for Output MuonSimDataCollection"};
176 "Use conditions data to get thresholds, overrules useThresholdScaling"};
178 "Use a strip length dependent threshold in MM digitiation"};
180 "Use x times the strip length dependent noise as MM threshold"};
182 this,
"vmmDeadtime", 200,
"Specifies how much before the lower time limit the VMM simulation should start evaluating the signal"};
186 this,
"vmmUpperGrazeWindow", 150,
"Specifies how much above the upper time window boundary the VMM sim evaluates the signal."};
191 "Key of input MuonDetectorManager condition data"};
204 #endif // MM_DigitizationTool
Helper struct to cache all calibration constants in a common place of the memory.
Property holding a SG store/key/clid from which a ReadHandle is made.
::StatusCode StatusCode
StatusCode definition for legacy code.
the preferred mechanism to access information from the different event stores in a pileup job.