ATLAS Offline Software
Loading...
Searching...
No Matches
HGTD_SurfaceChargesGenerator.h
Go to the documentation of this file.
1
19
20#ifndef HGTD_SURFACECHARGESGENERATOR_H
21#define HGTD_SURFACECHARGESGENERATOR_H
22
26
27#include <string>
28
30 : public AthAlgTool,
31 public virtual IHGTD_SurfaceChargesGenerator {
32
33public:
35 HGTD_SurfaceChargesGenerator(const std::string &type, const std::string &name,
36 const IInterface *parent);
37
39 virtual ~HGTD_SurfaceChargesGenerator() = default;
40
42 StatusCode initialize() override;
43
44 virtual void createSurfaceChargesFromHit(
45 const TimedHitPtr<SiHit> &timed_hit_ptr,
46 SiChargedDiodeCollection *diode_coll,
48 CLHEP::HepRandomEngine *rndm_engine,
49 const EventContext& ctx) const override final;
50
51private:
52 // TODO: where do we get this from?
53 FloatProperty m_small_step_length{this, "SmallStepLength", 1, ""}; /*um*/
54 FloatProperty m_diffusion_constant{this, "DiffusionConstant", .007, ""};
55 FloatProperty m_active_time_window{this, "ActiveTimeWindow", 1.25, "Hits within this time window are used for digitization, the rest are discarded (Given in ns)."};
56 BooleanProperty m_smear_meantime{this, "SmearMeanTime", true, "Smear mean time based on radius and luminosity"};
57 ToolHandle<HGTD_TimeResolutionTool> m_hgtd_time_resolution_tool{
58 this, "TimeResolutionTool", "HGTD_TimeResolutionTool",
59 "Tool for smearing LGAD timing based on integrated luminosity and "
60 "radius"};
61};
62
63#endif // HGTD_DIGITZATION_HGTD_SURFACECHARGESGENERATOR_H
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration.
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration.
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
ToolHandle< HGTD_TimeResolutionTool > m_hgtd_time_resolution_tool
HGTD_SurfaceChargesGenerator(const std::string &type, const std::string &name, const IInterface *parent)
constructor
virtual ~HGTD_SurfaceChargesGenerator()=default
Destructor.
virtual void createSurfaceChargesFromHit(const TimedHitPtr< SiHit > &timed_hit_ptr, SiChargedDiodeCollection *diode_coll, const InDetDD::SolidStateDetectorElementBase *element, CLHEP::HepRandomEngine *rndm_engine, const EventContext &ctx) const override final
StatusCode initialize() override
AlgTool initialize.
Class to hold geometrical description of a solid state detector element.
a smart pointer to a hit that also provides access to the extended timing info of the host event.
Definition TimedHitPtr.h:18