Geant4 VMC
Version 6.8
Toggle main menu visibility
Loading...
Searching...
No Matches
source
physics_list
src
TG4VUserFastSimulation.cxx
Go to the documentation of this file.
1
//------------------------------------------------
2
// The Geant4 Virtual Monte Carlo package
3
// Copyright (C) 2007 - 2015 Ivana Hrivnacova
4
// All rights reserved.
5
//
6
// For the licensing terms see geant4_vmc/LICENSE.
7
// Contact: root-vmc@cern.ch
8
//-------------------------------------------------
9
14
15
#include "
TG4VUserFastSimulation.h
"
16
#include "
TG4GeometryManager.h
"
17
#include "
TG4Globals.h
"
18
#include "
TG4ModelConfiguration.h
"
19
#include "
TG4ModelConfigurationManager.h
"
20
21
#include <G4VFastSimulationModel.hh>
22
23
//_____________________________________________________________________________
24
TG4VUserFastSimulation::TG4VUserFastSimulation
()
25
:
// fModelNames(),
26
fFastModelsManager
(0)
27
{
29
30
fFastModelsManager
=
TG4GeometryManager::Instance
()->
GetFastModelsManager
();
31
}
32
33
//_____________________________________________________________________________
34
TG4VUserFastSimulation::~TG4VUserFastSimulation
()
35
{
37
}
38
39
//
40
// protected methods
41
//
42
43
//_____________________________________________________________________________
44
void
TG4VUserFastSimulation::SetModel
(
const
G4String& modelName)
45
{
46
fFastModelsManager
->SetModel(modelName);
47
}
48
49
//_____________________________________________________________________________
50
void
TG4VUserFastSimulation::SetModelParticles
(
51
const
G4String& modelName,
const
G4String& particles)
52
{
53
fFastModelsManager
->SetModelParticles(modelName, particles);
54
}
55
56
//_____________________________________________________________________________
57
void
TG4VUserFastSimulation::SetModelRegions
(
58
const
G4String& modelName,
const
G4String& regions)
59
{
60
fFastModelsManager
->SetModelRegions(modelName, regions);
61
}
62
63
//_____________________________________________________________________________
64
void
TG4VUserFastSimulation::Register
(
65
G4VFastSimulationModel* fastSimulationModel)
66
{
68
69
// check that model configuration exists
70
TG4ModelConfiguration
* modelConfiguration =
71
fFastModelsManager
->GetModelConfiguration(fastSimulationModel->GetName());
72
if
(!modelConfiguration) {
73
TString text =
"The fast simulation model "
;
74
text += fastSimulationModel->GetName().data();
75
text +=
" configuration was not found."
;
76
TG4Globals::Warning
(
"TG4VUserFastSimulation"
,
"Register"
,
77
text +
TG4Globals::Endl
() +
78
TString(
"The model configuration has to set firts."
) +
79
TG4Globals::Endl
() +
80
TString(
"/mcPhysics/fastSimulation/setModel command or SetModel() "
81
"function."
));
82
return
;
83
}
84
85
modelConfiguration->
SetFastSimulationModel
(fastSimulationModel);
86
}
TG4GeometryManager.h
Definition of the TG4GeometryManager class.
TG4Globals.h
Definition of the TG4Globals class and basic container types.
TG4ModelConfigurationManager.h
Definition of the TG4ModelConfigurationManager class.
TG4ModelConfiguration.h
Definition of the TG4ModelConfiguration class.
TG4VUserFastSimulation.h
Definition of the TG4VUserFastSimulation class.
TG4GeometryManager::GetFastModelsManager
TG4ModelConfigurationManager * GetFastModelsManager() const
Definition
TG4GeometryManager.h:202
TG4GeometryManager::Instance
static TG4GeometryManager * Instance()
Definition
TG4GeometryManager.h:189
TG4Globals::Warning
static void Warning(const TString &className, const TString &methodName, const TString &text)
Definition
TG4Globals.cxx:48
TG4Globals::Endl
static TString Endl()
Definition
TG4Globals.h:101
TG4ModelConfiguration
A helper class to hold a configuration of a special physics model.
Definition
TG4ModelConfiguration.h:35
TG4ModelConfiguration::SetFastSimulationModel
void SetFastSimulationModel(G4VFastSimulationModel *fastSimulationModel)
Definition
TG4ModelConfiguration.h:91
TG4VUserFastSimulation::SetModelParticles
void SetModelParticles(const G4String &modelName, const G4String &particles)
Method to be utilized to apply fast simulation model to selected particles.
Definition
TG4VUserFastSimulation.cxx:50
TG4VUserFastSimulation::SetModel
void SetModel(const G4String &modelName)
Method to be utilized to register each fast simulation model by name.
Definition
TG4VUserFastSimulation.cxx:44
TG4VUserFastSimulation::SetModelRegions
void SetModelRegions(const G4String &modelName, const G4String ®ions)
Method to be utilized to apply fast simulation model to selected regions.
Definition
TG4VUserFastSimulation.cxx:57
TG4VUserFastSimulation::fFastModelsManager
TG4ModelConfigurationManager * fFastModelsManager
the fast simulation models manager
Definition
TG4VUserFastSimulation.h:61
TG4VUserFastSimulation::TG4VUserFastSimulation
TG4VUserFastSimulation()
Definition
TG4VUserFastSimulation.cxx:24
TG4VUserFastSimulation::Register
void Register(G4VFastSimulationModel *fastSimulationModel)
Method to be utilized to register each fast simulation model.
Definition
TG4VUserFastSimulation.cxx:64
TG4VUserFastSimulation::~TG4VUserFastSimulation
virtual ~TG4VUserFastSimulation()
Definition
TG4VUserFastSimulation.cxx:34
Generated on
for Geant4 VMC by
1.17.0