LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
ConfigurablePhysicsList.hh
Go to the documentation of this file.
1
//
6
// Configurable Physics List Class
7
//
8
// Ben Jones, MIT, 24/06/09
9
//
10
// Based on the QGSP_BERT physics list supplied with geant 4, but with
11
// options to switch on and off different physics processed from the config
12
// file.
13
//
14
// To include a new physics process, create a new physics builder registering
15
// the relevant particles and interactions. Then add the builder to the
16
// GetPhysicsBuilders and GetDefaultSettings functions in this class,
17
// using the name by which the builder will be referenced in the config
18
// file. Physics builders to be enabled are specified in the LArG4 config.
19
//
20
//
21
22
23
#ifndef TConfigurablePhysicsList_h
24
#define TConfigurablePhysicsList_h 1
25
26
#include "Geant4/G4VModularPhysicsList.hh"
27
#include "Geant4/globals.hh"
28
#include "Geant4/CompileTimeConstraints.hh"
29
30
namespace
larg4
{
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
53
#include "
larsim/LArG4/ConfigurablePhysicsList.icc
"
54
55
namespace
larg4
{
56
typedef
TConfigurablePhysicsList<G4VModularPhysicsList>
ConfigurablePhysicsList
;
57
}
58
59
60
61
#endif
62
63
64
65
// Sept 2009 - Ben Jones, MIT
66
larg4::TConfigurablePhysicsList::~TConfigurablePhysicsList
virtual ~TConfigurablePhysicsList()
larg4::TConfigurablePhysicsList::TConfigurablePhysicsList
TConfigurablePhysicsList(G4int ver=1)
larg4
Geant4 interface.
Definition:
ISCalcSeparate.cxx:32
larg4::TConfigurablePhysicsList::ok
Definition:
ConfigurablePhysicsList.hh:48
ConfigurablePhysicsList.icc
larg4::TConfigurablePhysicsList::UseCustomPhysics
bool UseCustomPhysics
Definition:
ConfigurablePhysicsList.hh:38
larg4::TConfigurablePhysicsList::GetDefaultSettings
std::vector< std::string > GetDefaultSettings()
larg4::TConfigurablePhysicsList
Definition:
ConfigurablePhysicsList.hh:33
larg4::TConfigurablePhysicsList::EnabledPhysics
std::vector< std::string > EnabledPhysics
Definition:
ConfigurablePhysicsList.hh:39
larg4::ConfigurablePhysicsList
TConfigurablePhysicsList< G4VModularPhysicsList > ConfigurablePhysicsList
Definition:
ConfigurablePhysicsList.hh:56
larg4::TConfigurablePhysicsList::SetCuts
virtual void SetCuts()
larsim
v07_09_00
source
larsim
LArG4
ConfigurablePhysicsList.hh
Generated on Wed Dec 12 2018 14:43:03 for LArSoft by
1.8.11