Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
garsoft
GArG4
ConfigurablePhysicsList.hh
Go to the documentation of this file.
1
////////////////////////////////////////////////////////////////////////
2
/// \file CustomPhysicsList.h
3
//
4
////////////////////////////////////////////////////////////////////////
5
// Configurable Physics List Class
6
//
7
// Ben Jones, MIT, 24/06/09
8
//
9
// Based on the QGSP_BERT physics list supplied with geant 4, but with
10
// options to switch on and off different physics processed from the config
11
// file.
12
//
13
// To include a new physics process, create a new physics builder registering
14
// the relevant particles and interactions. Then add the builder to the
15
// GetPhysicsBuilders and GetDefaultSettings functions in this class,
16
// using the name by which the builder will be referenced in the config
17
// file. Physics builders to be enabled are specified in the GArG4 config.
18
//
19
//
20
21
22
#ifndef TConfigurablePhysicsList_h
23
#define TConfigurablePhysicsList_h 1
24
25
#include "Geant4/G4VModularPhysicsList.hh"
26
#include "Geant4/globals.hh"
27
#include "Geant4/CompileTimeConstraints.hh"
28
29
namespace
gar
{
30
namespace
garg4 {
31
32
template
<
class
T>
33
class
TConfigurablePhysicsList
:
public
T
34
{
35
public
:
36
TConfigurablePhysicsList
(G4int ver = 1);
37
virtual
~TConfigurablePhysicsList
();
38
bool
UseCustomPhysics
;
39
std::vector<std::string>
EnabledPhysics
;
40
std::vector<std::string>
GetDefaultSettings
();
41
42
43
public
:
44
// SetCuts()
45
virtual
void
SetCuts
();
46
47
private
:
48
enum
{
ok
= CompileTimeConstraints::IsA<T, G4VModularPhysicsList>::ok };
49
};
50
51
}
52
}
// gar
53
54
#include "GArG4/ConfigurablePhysicsList.icc"
55
56
namespace
gar
{
57
namespace
garg4 {
58
typedef
TConfigurablePhysicsList<G4VModularPhysicsList>
ConfigurablePhysicsList
;
59
}
60
}
// gar
61
62
#endif
63
64
65
66
// Sept 2009 - Ben Jones, MIT
67
ValidateOpDetSimulation.T
T
Definition:
ValidateOpDetSimulation.py:52
gar::garg4::TConfigurablePhysicsList::ok
Definition:
ConfigurablePhysicsList.hh:48
gar::garg4::TConfigurablePhysicsList::UseCustomPhysics
bool UseCustomPhysics
Definition:
ConfigurablePhysicsList.hh:38
gar::garg4::ConfigurablePhysicsList
TConfigurablePhysicsList< G4VModularPhysicsList > ConfigurablePhysicsList
Definition:
ConfigurablePhysicsList.hh:58
gar::garg4::TConfigurablePhysicsList::TConfigurablePhysicsList
TConfigurablePhysicsList(G4int ver=1)
gar::garg4::TConfigurablePhysicsList
Definition:
ConfigurablePhysicsList.hh:33
gar
General GArSoft Utilities.
Definition:
anatest_module.cc:57
gar::garg4::TConfigurablePhysicsList::EnabledPhysics
std::vector< std::string > EnabledPhysics
Definition:
ConfigurablePhysicsList.hh:39
gar::garg4::TConfigurablePhysicsList::~TConfigurablePhysicsList
virtual ~TConfigurablePhysicsList()
gar::garg4::TConfigurablePhysicsList::SetCuts
virtual void SetCuts()
gar::garg4::TConfigurablePhysicsList::GetDefaultSettings
std::vector< std::string > GetDefaultSettings()
Generated by
1.8.11