VMC Examples
Version 6.7
Toggle main menu visibility
Main Page
Related Pages
Topics
Namespaces
Namespace List
Namespace Members
All
Functions
Variables
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
1
2
3
6
a
b
c
d
e
f
g
h
i
k
m
n
o
p
r
s
t
u
~
Functions
1
2
3
6
a
b
c
d
e
f
g
h
i
m
o
p
r
s
t
u
~
Variables
c
f
n
Enumerations
Enumerator
Files
File List
File Members
All
3
b
c
e
f
g
h
i
l
m
n
o
r
s
t
u
v
Functions
b
c
g
h
i
l
m
n
o
r
s
t
u
v
Variables
Typedefs
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Modules
Pages
Loading...
Searching...
No Matches
examples
E02
exampleE02.cxx
Go to the documentation of this file.
1
//------------------------------------------------
2
// The Virtual Monte Carlo examples
3
// Copyright (C) 2014 Ivana Hrivnacova
4
// All rights reserved.
5
//
6
// For the licensing terms see geant4_vmc/LICENSE.
7
// Contact: root-vmc@cern.ch
8
//-------------------------------------------------
9
10
/// \file exampleE02.cxx
11
/// \brief The Geant4 VMC example E02 application executable
12
///
13
/// \date 26/02/2014
14
/// \author I. Hrivnacova; IPN, Orsay
15
16
#include "
Ex02MCApplication.h
"
17
18
#ifdef USE_GEANT4
19
#include "TG4RunConfiguration.h"
20
#include "TGeant4.h"
21
#endif
22
23
#ifdef USE_GEANT3
24
#include "TGeant3TGeo.h"
25
#endif
26
27
#include "TROOT.h"
28
29
/// Application main program
30
int
main
(
int
argc,
char
** argv)
31
{
32
// Initialize Root threading.
33
// (Multi-threading is triggered automatically if Geant4 was built
34
// in MT mode.)
35
#ifdef G4MULTITHREADED
36
ROOT::EnableThreadSafety();
37
#endif
38
39
// Create MC application (thread local)
40
Ex02MCApplication
* appl =
41
new
Ex02MCApplication
(
"ExampleE02"
,
"The exampleE02 MC application"
);
42
43
#ifdef USE_GEANT4
44
// RunConfiguration for Geant4
45
TG4RunConfiguration
* runConfiguration =
46
new
TG4RunConfiguration
(
"geomRootToGeant4"
,
"FTFP_BERT"
);
47
48
// TGeant4
49
TGeant4* geant4 =
new
TGeant4(
50
"TGeant4"
,
"The Geant4 Monte Carlo"
, runConfiguration, argc, argv);
51
52
// Customise Geant4 setting
53
// (verbose level, global range cut, ..)
54
geant4->ProcessGeantMacro(
"g4config.in"
);
55
#endif
56
57
#ifdef USE_GEANT3
58
TGeant3* geant3 =
new
TGeant3TGeo(
"C++ Interface to Geant3"
);
59
geant3->SetHADR(0);
60
#endif
61
62
// Run from this main
63
appl->
InitMC
(
""
);
64
65
#ifdef USE_GEANT4
66
// Setting Geant4 visualization
67
geant4->ProcessGeantMacro(
"g4vis.in"
);
68
#endif
69
appl->
RunMC
(5);
70
71
delete
appl;
72
}
30
int
main
(
int
argc,
char
** argv) {
…
}
Ex02MCApplication.h
Definition of the Ex02MCApplication class.
Ex02MCApplication
Implementation of the TVirtualMCApplication.
Definition
Ex02MCApplication.h:38
Ex02MCApplication::RunMC
void RunMC(Int_t nofEvents)
Definition
Ex02MCApplication.cxx:181
Ex02MCApplication::InitMC
void InitMC(const char *setup)
Definition
Ex02MCApplication.cxx:141
TG4RunConfiguration
main
int main(int argc, char **argv)
Application main program.
Definition
exampleE02.cxx:30
Generated on Tue Apr 1 2025 13:04:57 for VMC Examples by
1.13.2