ATLAS Offline Software
Loading...
Searching...
No Matches
ProcessSamplingTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ISF_FATRASTOOLS_PROCESSSAMPLINGTOOL_H
6#define ISF_FATRASTOOLS_PROCESSSAMPLINGTOOL_H
7
8// Athena Base
11
12// iFatras
14
15// Tracking
18
19namespace iFatras
20{
27
28 class ProcessSamplingTool : public extends<AthAlgTool, IProcessSamplingTool>
29 {
30 public:
32 ProcessSamplingTool(const std::string&,const std::string&,const IInterface*);
33
35 virtual ~ProcessSamplingTool () = default;
36
38 Trk::PathLimit sampleProcess(CLHEP::HepRandomEngine *randomEngine, double mom, double charge, Trk::ParticleHypothesis pHypothesis) const;
39
40 private:
41 /*---------------------------------------------------------------------
42 * Private members
43 *---------------------------------------------------------------------*/
45 BooleanProperty m_hadInt{this, "HadronicInteraction", true, ""};
46 };
47}
48
49#endif // FATRASTOOLS_PROCESSSSAMPLINGTOOL_H
double charge(const T &p)
Definition AtlasPID.h:997
Define macros for attributes used to control the static checker.
BooleanProperty m_hadInt
hadronic interaction
Trk::PathLimit sampleProcess(CLHEP::HepRandomEngine *randomEngine, double mom, double charge, Trk::ParticleHypothesis pHypothesis) const
Process pre-sampling : to be moved into material updators eventually.
ProcessSamplingTool(const std::string &, const std::string &, const IInterface *)
Constructor.
virtual ~ProcessSamplingTool()=default
Destructor.
ParticleHypothesis
Enumeration for Particle hypothesis respecting the interaction with material.