Geant4
10.02.p03
LXeUserEventInformation.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
//
26
// $Id: LXeUserEventInformation.hh 68752 2013-04-05 10:23:47Z gcosmo $
27
//
30
//
31
#include "
G4VUserEventInformation.hh
"
32
#include "
G4ThreeVector.hh
"
33
#include "
globals.hh
"
34
35
#ifndef LXeUserEventInformation_h
36
#define LXeUserEventInformation_h 1
37
38
class
LXeUserEventInformation
:
public
G4VUserEventInformation
39
{
40
public
:
41
42
LXeUserEventInformation
();
43
virtual
~LXeUserEventInformation
();
44
45
inline
virtual
void
Print
()
const
{};
46
47
void
IncPhotonCount_Scint
(){
fPhotonCount_Scint
++;}
48
void
IncPhotonCount_Ceren
(){
fPhotonCount_Ceren
++;}
49
void
IncEDep
(
G4double
dep){
fTotE
+=dep;}
50
void
IncAbsorption
(){
fAbsorptionCount
++;}
51
void
IncBoundaryAbsorption
(){
fBoundaryAbsorptionCount
++;}
52
void
IncHitCount
(
G4int
i=1){
fHitCount
+=i;}
53
54
void
SetEWeightPos
(
const
G4ThreeVector
& p){
fEWeightPos
=p;}
55
void
SetReconPos
(
const
G4ThreeVector
& p){
fReconPos
=p;}
56
void
SetConvPos
(
const
G4ThreeVector
& p){
fConvPos
=p;
fConvPosSet
=
true
;}
57
void
SetPosMax
(
const
G4ThreeVector
& p,
G4double
edep
){
fPosMax
=p;
fEdepMax
=
edep
;}
58
59
G4int
GetPhotonCount_Scint
()
const
{
return
fPhotonCount_Scint
;}
60
G4int
GetPhotonCount_Ceren
()
const
{
return
fPhotonCount_Ceren
;}
61
G4int
GetHitCount
()
const
{
return
fHitCount
;}
62
G4double
GetEDep
()
const
{
return
fTotE
;}
63
G4int
GetAbsorptionCount
()
const
{
return
fAbsorptionCount
;}
64
G4int
GetBoundaryAbsorptionCount
()
const
{
return
fBoundaryAbsorptionCount
;}
65
66
G4ThreeVector
GetEWeightPos
(){
return
fEWeightPos
;}
67
G4ThreeVector
GetReconPos
(){
return
fReconPos
;}
68
G4ThreeVector
GetConvPos
(){
return
fConvPos
;}
69
G4ThreeVector
GetPosMax
(){
return
fPosMax
;}
70
G4double
GetEDepMax
(){
return
fEdepMax
;}
71
G4double
IsConvPosSet
(){
return
fConvPosSet
;}
72
73
//Gets the total photon count produced
74
G4int
GetPhotonCount
(){
return
fPhotonCount_Scint
+
fPhotonCount_Ceren
;}
75
76
void
IncPMTSAboveThreshold
(){
fPMTsAboveThreshold
++;}
77
G4int
GetPMTSAboveThreshold
(){
return
fPMTsAboveThreshold
;}
78
79
private
:
80
81
G4int
fHitCount
;
82
G4int
fPhotonCount_Scint
;
83
G4int
fPhotonCount_Ceren
;
84
G4int
fAbsorptionCount
;
85
G4int
fBoundaryAbsorptionCount
;
86
87
G4double
fTotE
;
88
89
//These only have meaning if totE > 0
90
//If totE = 0 then these wont be set by EndOfEventAction
91
G4ThreeVector
fEWeightPos
;
92
G4ThreeVector
fReconPos
;
//Also relies on hitCount>0
93
G4ThreeVector
fConvPos
;
//true (initial) converstion position
94
G4bool
fConvPosSet
;
95
G4ThreeVector
fPosMax
;
96
G4double
fEdepMax
;
97
98
G4int
fPMTsAboveThreshold
;
99
100
};
101
102
#endif
LXeUserEventInformation::GetEDep
G4double GetEDep() const
Definition:
LXeUserEventInformation.hh:62
LXeUserEventInformation::GetReconPos
G4ThreeVector GetReconPos()
Definition:
LXeUserEventInformation.hh:67
CLHEP::Hep3Vector
Definition:
ThreeVector.h:41
LXeUserEventInformation::GetBoundaryAbsorptionCount
G4int GetBoundaryAbsorptionCount() const
Definition:
LXeUserEventInformation.hh:64
LXeUserEventInformation::fEdepMax
G4double fEdepMax
Definition:
LXeUserEventInformation.hh:96
LXeUserEventInformation::IncAbsorption
void IncAbsorption()
Definition:
LXeUserEventInformation.hh:50
LXeUserEventInformation::GetHitCount
G4int GetHitCount() const
Definition:
LXeUserEventInformation.hh:61
G4VUserEventInformation
Definition:
G4VUserEventInformation.hh:57
LXeUserEventInformation::fPMTsAboveThreshold
G4int fPMTsAboveThreshold
Definition:
LXeUserEventInformation.hh:98
LXeUserEventInformation::GetAbsorptionCount
G4int GetAbsorptionCount() const
Definition:
LXeUserEventInformation.hh:63
LXeUserEventInformation::IncPhotonCount_Scint
void IncPhotonCount_Scint()
Definition:
LXeUserEventInformation.hh:47
LXeUserEventInformation::IncPhotonCount_Ceren
void IncPhotonCount_Ceren()
Definition:
LXeUserEventInformation.hh:48
LXeUserEventInformation::SetConvPos
void SetConvPos(const G4ThreeVector &p)
Definition:
LXeUserEventInformation.hh:56
G4int
int G4int
Definition:
G4Types.hh:78
edep
Double_t edep
Definition:
brachytherapy/macro.C:11
LXeUserEventInformation::fHitCount
G4int fHitCount
Definition:
LXeUserEventInformation.hh:81
LXeUserEventInformation::GetEWeightPos
G4ThreeVector GetEWeightPos()
Definition:
LXeUserEventInformation.hh:66
LXeUserEventInformation::GetPhotonCount_Ceren
G4int GetPhotonCount_Ceren() const
Definition:
LXeUserEventInformation.hh:60
LXeUserEventInformation::fPhotonCount_Scint
G4int fPhotonCount_Scint
Definition:
LXeUserEventInformation.hh:82
LXeUserEventInformation::LXeUserEventInformation
LXeUserEventInformation()
Definition:
LXeUserEventInformation.cc:36
LXeUserEventInformation::~LXeUserEventInformation
virtual ~LXeUserEventInformation()
Definition:
LXeUserEventInformation.cc:43
LXeUserEventInformation::Print
virtual void Print() const
Definition:
LXeUserEventInformation.hh:45
G4bool
bool G4bool
Definition:
G4Types.hh:79
LXeUserEventInformation::fPosMax
G4ThreeVector fPosMax
Definition:
LXeUserEventInformation.hh:95
LXeUserEventInformation::IncEDep
void IncEDep(G4double dep)
Definition:
LXeUserEventInformation.hh:49
LXeUserEventInformation::GetPosMax
G4ThreeVector GetPosMax()
Definition:
LXeUserEventInformation.hh:69
LXeUserEventInformation::fPhotonCount_Ceren
G4int fPhotonCount_Ceren
Definition:
LXeUserEventInformation.hh:83
globals.hh
LXeUserEventInformation::GetPhotonCount
G4int GetPhotonCount()
Definition:
LXeUserEventInformation.hh:74
LXeUserEventInformation::fBoundaryAbsorptionCount
G4int fBoundaryAbsorptionCount
Definition:
LXeUserEventInformation.hh:85
LXeUserEventInformation::IncBoundaryAbsorption
void IncBoundaryAbsorption()
Definition:
LXeUserEventInformation.hh:51
LXeUserEventInformation::GetPhotonCount_Scint
G4int GetPhotonCount_Scint() const
Definition:
LXeUserEventInformation.hh:59
LXeUserEventInformation::fConvPosSet
G4bool fConvPosSet
Definition:
LXeUserEventInformation.hh:94
LXeUserEventInformation::SetReconPos
void SetReconPos(const G4ThreeVector &p)
Definition:
LXeUserEventInformation.hh:55
G4VUserEventInformation.hh
LXeUserEventInformation
Definition:
LXeUserEventInformation.hh:38
LXeUserEventInformation::IncPMTSAboveThreshold
void IncPMTSAboveThreshold()
Definition:
LXeUserEventInformation.hh:76
LXeUserEventInformation::fEWeightPos
G4ThreeVector fEWeightPos
Definition:
LXeUserEventInformation.hh:91
LXeUserEventInformation::fConvPos
G4ThreeVector fConvPos
Definition:
LXeUserEventInformation.hh:93
LXeUserEventInformation::IsConvPosSet
G4double IsConvPosSet()
Definition:
LXeUserEventInformation.hh:71
LXeUserEventInformation::fTotE
G4double fTotE
Definition:
LXeUserEventInformation.hh:87
LXeUserEventInformation::GetPMTSAboveThreshold
G4int GetPMTSAboveThreshold()
Definition:
LXeUserEventInformation.hh:77
LXeUserEventInformation::fReconPos
G4ThreeVector fReconPos
Definition:
LXeUserEventInformation.hh:92
G4double
double G4double
Definition:
G4Types.hh:76
G4ThreeVector.hh
LXeUserEventInformation::IncHitCount
void IncHitCount(G4int i=1)
Definition:
LXeUserEventInformation.hh:52
LXeUserEventInformation::fAbsorptionCount
G4int fAbsorptionCount
Definition:
LXeUserEventInformation.hh:84
LXeUserEventInformation::GetEDepMax
G4double GetEDepMax()
Definition:
LXeUserEventInformation.hh:70
LXeUserEventInformation::GetConvPos
G4ThreeVector GetConvPos()
Definition:
LXeUserEventInformation.hh:68
LXeUserEventInformation::SetEWeightPos
void SetEWeightPos(const G4ThreeVector &p)
Definition:
LXeUserEventInformation.hh:54
LXeUserEventInformation::SetPosMax
void SetPosMax(const G4ThreeVector &p, G4double edep)
Definition:
LXeUserEventInformation.hh:57
Geant4
Geant4.10.02.p03
examples
extended
optical
LXe
include
LXeUserEventInformation.hh
Generated by
1.8.13