ATLAS Offline Software
Simulation
G4Atlas
G4AtlasInterfaces
G4AtlasInterfaces
IPhysicsOptionTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef G4ATLASINTERFACES_IPHYSICSOPTIONTOOL_H
6
#define G4ATLASINTERFACES_IPHYSICSOPTIONTOOL_H
7
8
#include "GaudiKernel/IAlgTool.h"
9
class
G4String;
10
class
G4VPhysicsConstructor;
11
20
namespace
G4AtlasPhysicsOption
{
21
enum
Type
{
22
BSMPhysics
= 1,
// Adds new BSM particles and potentially decays
23
QS_ExtraParticles
= 2,
// Adds particles from the PDG Table not currently known to Geant4
24
QS_ExtraProc
= 3,
// Adds MSC and Ionisation processes for specific particles (possibly merge with the next one?)
25
GlobalProcesses
= 4,
// Adds a new physics process for all particles meeting certain criteria
26
UnknownType
= 5
// Not set
27
};
28
}
29
30
class
IPhysicsOptionTool
:
virtual
public
IAlgTool
31
{
32
public
:
33
34
IPhysicsOptionTool
() {}
35
virtual
~IPhysicsOptionTool
() {}
37
DeclareInterfaceID
(
IPhysicsOptionTool
, 1, 0);
38
39
// Method needed to register G4VPhysicsConstructor into G4VmodularPhysicsList
40
virtual
G4VPhysicsConstructor*
GetPhysicsOption
() = 0 ;
41
42
virtual
G4AtlasPhysicsOption::Type
GetOptionType
()
const
{
return
m_physicsOptionType
; };
43
44
protected
:
45
46
G4AtlasPhysicsOption::Type
m_physicsOptionType
{
G4AtlasPhysicsOption::Type::UnknownType
};
47
48
};
49
#endif
G4AtlasPhysicsOption::QS_ExtraProc
@ QS_ExtraProc
Definition:
IPhysicsOptionTool.h:24
G4AtlasPhysicsOption::Type
Type
Definition:
IPhysicsOptionTool.h:21
IPhysicsOptionTool::DeclareInterfaceID
DeclareInterfaceID(IPhysicsOptionTool, 1, 0)
Creates the InterfaceID and interfaceID() method.
IPhysicsOptionTool::GetOptionType
virtual G4AtlasPhysicsOption::Type GetOptionType() const
Definition:
IPhysicsOptionTool.h:42
IPhysicsOptionTool::m_physicsOptionType
G4AtlasPhysicsOption::Type m_physicsOptionType
Definition:
IPhysicsOptionTool.h:46
IPhysicsOptionTool::~IPhysicsOptionTool
virtual ~IPhysicsOptionTool()
Definition:
IPhysicsOptionTool.h:35
xAODType
Definition:
ObjectType.h:13
IPhysicsOptionTool::IPhysicsOptionTool
IPhysicsOptionTool()
Definition:
IPhysicsOptionTool.h:34
IPhysicsOptionTool
Definition:
IPhysicsOptionTool.h:31
G4AtlasPhysicsOption::GlobalProcesses
@ GlobalProcesses
Definition:
IPhysicsOptionTool.h:25
G4AtlasPhysicsOption::UnknownType
@ UnknownType
Definition:
IPhysicsOptionTool.h:26
G4AtlasPhysicsOption::QS_ExtraParticles
@ QS_ExtraParticles
Definition:
IPhysicsOptionTool.h:23
IPhysicsOptionTool::GetPhysicsOption
virtual G4VPhysicsConstructor * GetPhysicsOption()=0
G4AtlasPhysicsOption
Definition:
IPhysicsOptionTool.h:20
G4AtlasPhysicsOption::BSMPhysics
@ BSMPhysics
Definition:
IPhysicsOptionTool.h:22
Generated on Sun Dec 22 2024 21:11:58 for ATLAS Offline Software by
1.8.18