Geant4
9.6.p02
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
geant4_9_6_p02
examples
extended
radioactivedecay
rdecay02
include
exrdmAnalysisManager.hh
Go to the documentation of this file.
1
//
2
// ********************************************************************
3
// * License and Disclaimer *
4
// * *
5
// * The Geant4 software is copyright of the Copyright Holders of *
6
// * the Geant4 Collaboration. It is provided under the terms and *
7
// * conditions of the Geant4 Software License, included in the file *
8
// * LICENSE and available at http://cern.ch/geant4/license . These *
9
// * include a list of copyright holders. *
10
// * *
11
// * Neither the authors of this software system, nor their employing *
12
// * institutes,nor the agencies providing financial support for this *
13
// * work make any representation or warranty, express or implied, *
14
// * regarding this software system or assume any liability for its *
15
// * use. Please see the license in the file LICENSE and URL above *
16
// * for the full disclaimer and the limitation of liability. *
17
// * *
18
// * This code implementation is the result of the scientific and *
19
// * technical work of the GEANT4 collaboration. *
20
// * By using, copying, modifying or distributing the software (or *
21
// * any work based on the software) you agree to acknowledge its *
22
// * use in resulting scientific publications, and indicate your *
23
// * acceptance of all terms of the Geant4 Software license. *
24
// ********************************************************************
25
//
28
//
29
30
31
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
32
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
33
34
#ifndef exrdmAnalysisManager_h
35
#define exrdmAnalysisManager_h 1
36
37
//---------------------------------------------------------------------------
38
//
39
// ClassName: exrdmAnalysisManager
40
//
41
// Description: Singleton class to hold analysis parameters and build histograms.
42
// User cannot access to the constructor.
43
// The pointer of the only existing object can be got via
44
// exrdmAnalysisManager::GetInstance() static method.
45
// The first invokation of this static method makes
46
// the singleton object.
47
//
48
//----------------------------------------------------------------------------
49
//
50
51
#include "
globals.hh
"
52
#include "
exrdmEnergyDeposition.hh
"
53
#include <vector>
54
55
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
56
57
class
exrdmHisto
;
58
59
class
exrdmAnalysisManager
60
{
61
62
public
:
63
// With description
64
65
static
exrdmAnalysisManager
*
GetInstance
();
66
static
void
Dispose
();
67
68
private
:
69
70
exrdmAnalysisManager
();
71
~
exrdmAnalysisManager
();
72
73
public
:
// Without description
74
75
void
BookHisto
();
76
77
void
BeginOfRun
();
78
void
EndOfRun
(
G4int
);
79
80
void
BeginOfEvent
();
81
void
EndOfEvent
();
82
83
void
AddParticle
(
G4double
,
G4double
,
G4double
,
G4double
);
84
void
AddIsotope
(
G4double
,
G4double
,
G4double
);
85
void
AddEnergy
(
G4double
,
G4double
,
G4double
);
86
void
AddDecayProduct
(
G4double
pid,
G4int
Z
,
G4int
A,
87
G4double
energy
,
G4double
time,
G4double
weight
);
88
89
void
SetVerbose
(
G4int
val) {fVerbose = val;};
90
G4int
GetVerbose
()
const
{
return
fVerbose;};
91
92
void
SetFirstEventToDebug
(
G4int
val) {fNEvt1 = val;};
93
G4int
FirstEventToDebug
()
const
{
return
fNEvt1;};
94
void
SetLastEventToDebug
(
G4int
val) {fNEvt2 = val;};
95
G4int
LastEventToDebug
()
const
{
return
fNEvt2;};
96
97
void
SetMaxEnergyforHisto
(
G4double
val) {fHistEMax = val;};
98
G4double
GetMaxEnergyforHisto
()
const
{
return
fHistEMax;};
99
void
SetMinEnergyforHisto
(
G4double
val) {fHistEMin = val;};
100
G4double
GetMinEnergyforHisto
()
const
{
return
fHistEMin;};
101
void
SetNumBinforHisto
(
G4int
val) {fHistNBin = val;};
102
G4int
GeNumBinforHisto
()
const
{
return
fHistNBin;};
103
104
void
SetThresholdEnergyforTarget
(
G4double
val) {fTargetThresE = val;};
105
G4double
GetThresholdEnergyforTarget
()
const
{
return
fTargetThresE;};
106
void
SetThresholdEnergyforDetector
(
G4double
val) {fDetectorThresE = val;};
107
G4double
GetThresholdEnergyforDetector
()
const
{
return
fDetectorThresE;};
108
void
SetPulseWidth
(
G4double
val) {fPulseWidth = val;};
109
G4double
GetPulseWidth
()
const
{
return
fPulseWidth;};
110
111
private
:
112
113
// MEMBERS
114
static
exrdmAnalysisManager
* fManager;
115
116
G4int
fVerbose;
117
G4int
fNEvt1;
118
G4int
fNEvt2;
119
120
G4double
fHistEMax;
121
G4double
fHistEMin;
122
G4int
fHistNBin;
123
124
G4double
fTargetThresE;
125
G4double
fDetectorThresE;
126
G4double
fPulseWidth;
127
128
// energy depositions for an event
129
std::vector <exrdmEnergyDeposition> fEdepo;
130
//
131
exrdmHisto
* fHisto;
132
133
};
134
135
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
136
137
#endif
Generated on Sat May 25 2013 14:33:00 for Geant4 by
1.8.4