ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
G4Extensions
ExtraParticles
src
ExtraParticlesPhysicsTool.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 EXTRA_PARTICLES__EXTRA_PARTICLES_PHYSICS_TOOL_H
6
#define EXTRA_PARTICLES__EXTRA_PARTICLES_PHYSICS_TOOL_H 1
7
8
// Include files
9
#include "
AthenaBaseComps/AthAlgTool.h
"
10
#include "
G4AtlasInterfaces/IPhysicsOptionTool.h
"
11
#include "
G4AtlasInterfaces/IPhysicsConstructor.h
"
12
21
class
ExtraParticlesPhysicsTool
22
:
public
extends<AthAlgTool, IPhysicsOptionTool> {
23
public
:
25
ExtraParticlesPhysicsTool
(
const
std::string &
type
,
const
std::string &name,
26
const
IInterface *parent);
27
28
virtual
~ExtraParticlesPhysicsTool
();
29
31
virtual
StatusCode
initialize
()
override
final
;
32
34
virtual
UPPhysicsConstructor
GetPhysicsOption
()
override
final
;
35
36
class
PhysicsConstructor
:
public
IPhysicsContructor
{
37
public
:
38
PhysicsConstructor
(
39
const
std::string &name, MSG::Level level,
40
const
std::map<std::string, std::vector<double>> &extraParticlesConfig)
41
:
IPhysicsContructor
(name, level),
42
m_extraParticlesConfig
(extraParticlesConfig) {}
43
44
virtual
void
ConstructParticle
()
override
;
45
virtual
void
ConstructProcess
()
override
;
46
47
private
:
49
std::map<std::string, std::vector<double>>
m_extraParticlesConfig
;
50
52
std::set<G4ParticleDefinition *>
m_extraParticles
;
53
};
54
55
protected
:
57
std::map<std::string, std::vector<double>>
m_extraParticlesConfig
;
58
};
59
60
#endif
// EXTRA_PARTICLES__EXTRA_PARTICLES_PHYSICS_TOOL_H
AthAlgTool.h
IPhysicsConstructor.h
IPhysicsOptionTool.h
ExtraParticlesPhysicsTool::PhysicsConstructor::m_extraParticles
std::set< G4ParticleDefinition * > m_extraParticles
a set to hold the newly created extra particles
Definition
ExtraParticlesPhysicsTool.h:52
ExtraParticlesPhysicsTool::PhysicsConstructor::ConstructParticle
virtual void ConstructParticle() override
Definition
ExtraParticlesPhysicsTool.cxx:68
ExtraParticlesPhysicsTool::PhysicsConstructor::PhysicsConstructor
PhysicsConstructor(const std::string &name, MSG::Level level, const std::map< std::string, std::vector< double > > &extraParticlesConfig)
Definition
ExtraParticlesPhysicsTool.h:38
ExtraParticlesPhysicsTool::PhysicsConstructor::ConstructProcess
virtual void ConstructProcess() override
Definition
ExtraParticlesPhysicsTool.cxx:110
ExtraParticlesPhysicsTool::PhysicsConstructor::m_extraParticlesConfig
std::map< std::string, std::vector< double > > m_extraParticlesConfig
a set of parameters for extra particle building
Definition
ExtraParticlesPhysicsTool.h:49
ExtraParticlesPhysicsTool::ExtraParticlesPhysicsTool
ExtraParticlesPhysicsTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard constructor.
Definition
ExtraParticlesPhysicsTool.cxx:35
ExtraParticlesPhysicsTool::GetPhysicsOption
virtual UPPhysicsConstructor GetPhysicsOption() override final
Implements.
Definition
ExtraParticlesPhysicsTool.cxx:60
ExtraParticlesPhysicsTool::~ExtraParticlesPhysicsTool
virtual ~ExtraParticlesPhysicsTool()
Destructor.
Definition
ExtraParticlesPhysicsTool.cxx:47
ExtraParticlesPhysicsTool::m_extraParticlesConfig
std::map< std::string, std::vector< double > > m_extraParticlesConfig
a set of parameters for extra particle building
Definition
ExtraParticlesPhysicsTool.h:57
ExtraParticlesPhysicsTool::initialize
virtual StatusCode initialize() override final
Initialize method.
Definition
ExtraParticlesPhysicsTool.cxx:52
IPhysicsContructor::IPhysicsContructor
IPhysicsContructor(const std::string &name, MSG::Level level)
Standard constructor.
Definition
IPhysicsConstructor.h:44
type
Generated on
for ATLAS Offline Software by
1.17.0