ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
G4Utilities
G4UserActions
src
FastIDKiller.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef G4UserActions_FastIDKiller_H
6
#define G4UserActions_FastIDKiller_H
7
8
9
#include "G4UserRunAction.hh"
10
#include "G4UserSteppingAction.hh"
11
#include "
AthenaBaseComps/AthMessaging.h
"
12
13
namespace
G4UA
14
{
15
17
class
FastIDKiller
:
public
G4UserRunAction,
18
public
G4UserSteppingAction,
19
public
AthMessaging
20
{
21
22
public
:
23
25
struct
Config
26
{
27
float
R
=1150.;
// ID outer radius by default.
28
float
Z
=3490.;
// ID maximum Z coordiate by default.
29
float
energyCut
=100000000.;
// default energy threshold
30
bool
isDalek
=
false
;
// Use FastIDKiller as DALEK (Domain Actuated Low Energy Killer)
31
};
32
34
FastIDKiller
(
const
Config
& config);
35
37
struct
Report
38
{
39
long
killCount
=0;
40
void
merge
(
const
Report
& rep){
41
killCount
+=rep.killCount;
42
}
43
};
44
45
const
Report
&
getReport
()
const
46
{
return
m_report
; }
47
48
virtual
void
BeginOfRunAction
(
const
G4Run*)
override
;
49
virtual
void
UserSteppingAction
(
const
G4Step*)
override
;
50
51
private
:
52
53
void
KillParticle
(
const
G4Step* aStep);
54
55
Config
m_config
;
56
Report
m_report
;
57
bool
m_init
;
58
59
};
// class FastIDKiller
60
61
}
// namespace G4UA
62
63
#endif
AthMessaging.h
AthMessaging::AthMessaging
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Definition
AthMessaging.cxx:13
G4UA::FastIDKiller::FastIDKiller
FastIDKiller(const Config &config)
Constructor.
Definition
FastIDKiller.cxx:25
G4UA::FastIDKiller::UserSteppingAction
virtual void UserSteppingAction(const G4Step *) override
Definition
FastIDKiller.cxx:83
G4UA::FastIDKiller::m_config
Config m_config
Definition
FastIDKiller.h:55
G4UA::FastIDKiller::KillParticle
void KillParticle(const G4Step *aStep)
Definition
FastIDKiller.cxx:67
G4UA::FastIDKiller::m_report
Report m_report
Definition
FastIDKiller.h:56
G4UA::FastIDKiller::BeginOfRunAction
virtual void BeginOfRunAction(const G4Run *) override
Definition
FastIDKiller.cxx:34
G4UA::FastIDKiller::m_init
bool m_init
Definition
FastIDKiller.h:57
G4UA::FastIDKiller::getReport
const Report & getReport() const
Definition
FastIDKiller.h:45
G4UA
for nSW
Definition
CalibrationDefaultProcessing.h:19
G4UA::FastIDKiller::Config
Configuration parameters.
Definition
FastIDKiller.h:26
G4UA::FastIDKiller::Config::energyCut
float energyCut
Definition
FastIDKiller.h:29
G4UA::FastIDKiller::Config::R
float R
Definition
FastIDKiller.h:27
G4UA::FastIDKiller::Config::isDalek
bool isDalek
Definition
FastIDKiller.h:30
G4UA::FastIDKiller::Config::Z
float Z
Definition
FastIDKiller.h:28
G4UA::FastIDKiller::Report
Per-thread results for merging at end of run.
Definition
FastIDKiller.h:38
G4UA::FastIDKiller::Report::merge
void merge(const Report &rep)
Definition
FastIDKiller.h:40
G4UA::FastIDKiller::Report::killCount
long killCount
Definition
FastIDKiller.h:39
Generated on
for ATLAS Offline Software by
1.17.0