Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
x
z
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
$
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
v
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
GitLab
LXR
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Simulation
G4Atlas
G4AtlasTools
src
PunchThroughSimWrapper.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 G4FASTSIMULATION_PUNCHTHROUGHSIMWRAPPER_H
6
#define G4FASTSIMULATION_PUNCHTHROUGHSIMWRAPPER_H
7
8
// Base classes
9
#include "
AthenaBaseComps/AthAlgTool.h
"
10
#include "
G4AtlasInterfaces/IPunchThroughSimWrapper.h
"
11
12
// Geant4 Punchthrough G4 Tool
13
#include "
G4AtlasInterfaces/IPunchThroughG4Tool.h
"
14
#include "
G4AtlasInterfaces/IPunchThroughG4Classifier.h
"
15
16
// Random generator includes
17
#include "
AthenaKernel/RNGWrapper.h
"
18
19
//Geant4
20
#include "G4ParticleTable.hh"
21
#include "G4FastStep.hh"
22
#include "G4FastTrack.hh"
23
34
class
PunchThroughSimWrapper
:
public
extends<AthAlgTool, IPunchThroughSimWrapper>
35
{
36
public
:
38
PunchThroughSimWrapper
(
const
std::string&,
const
std::string&,
const
IInterface*);
39
41
virtual
~PunchThroughSimWrapper
() =
default
;
42
44
virtual
StatusCode
initialize
();
46
virtual
StatusCode
finalize
();
47
48
// public function exposed to interface
49
virtual
void
DoPunchThroughSim
(G4ParticleTable &ptable,
ATHRNG::RNGWrapper
* rngWrapper,
const
double
simE, std::vector<double> simEfrac,
const
G4FastTrack& fastTrack, G4FastStep& fastStep);
50
51
private
:
52
/*---------------------------------------------------------------------
53
* Private member functions
54
*---------------------------------------------------------------------*/
55
PublicToolHandle<IPunchThroughG4Tool>
m_PunchThroughG4Tool
{
this
,
"PunchThroughG4Tool"
,
"PunchThroughG4Tool"
,
""
};
56
PublicToolHandle<IPunchThroughG4Classifier>
m_PunchThroughG4Classifier
{
this
,
"PunchThroughG4Classifier"
,
"PunchThroughG4Classifier"
,
""
};
57
};
58
59
#endif
PunchThroughSimWrapper::m_PunchThroughG4Tool
PublicToolHandle< IPunchThroughG4Tool > m_PunchThroughG4Tool
Definition:
PunchThroughSimWrapper.h:55
IPunchThroughG4Classifier.h
PunchThroughSimWrapper::PunchThroughSimWrapper
PunchThroughSimWrapper(const std::string &, const std::string &, const IInterface *)
Constructor.
Definition:
PunchThroughSimWrapper.cxx:14
IPunchThroughSimWrapper.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition:
PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
PunchThroughSimWrapper::m_PunchThroughG4Classifier
PublicToolHandle< IPunchThroughG4Classifier > m_PunchThroughG4Classifier
Definition:
PunchThroughSimWrapper.h:56
IPunchThroughG4Tool.h
PunchThroughSimWrapper::initialize
virtual StatusCode initialize()
AlgTool initialize method.
Definition:
PunchThroughSimWrapper.cxx:19
ATHRNG::RNGWrapper
A wrapper class for event-slot-local random engines.
Definition:
RNGWrapper.h:56
PunchThroughSimWrapper
Class to wrap PunchThrough simulation inside FastCaloSim; Runs both PunchThroughG4Classifier and Punc...
Definition:
PunchThroughSimWrapper.h:35
RNGWrapper.h
PunchThroughSimWrapper::DoPunchThroughSim
virtual void DoPunchThroughSim(G4ParticleTable &ptable, ATHRNG::RNGWrapper *rngWrapper, const double simE, std::vector< double > simEfrac, const G4FastTrack &fastTrack, G4FastStep &fastStep)
Definition:
PunchThroughSimWrapper.cxx:29
PunchThroughSimWrapper::~PunchThroughSimWrapper
virtual ~PunchThroughSimWrapper()=default
Destructor.
PunchThroughSimWrapper::finalize
virtual StatusCode finalize()
AlgTool finalize method.
Definition:
PunchThroughSimWrapper.cxx:24
Generated on Mon Mar 24 2025 21:17:07 for ATLAS Offline Software by
1.8.18