Geant4
10.03.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
G4QMDParticipant.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
// -------------------------------------------------------------------
27
// GEANT4 Class file
28
//
29
//
30
// File name: G4QMDParticipant.hh
31
//
32
// Author: Koi, Tatsumi (tkoi@slac.stanford.edu)
33
//
34
// Creation date: 29 March 2007
35
// -----------------------------------------------------------------------------
36
//
37
// 081120 Add hit flag and related methods
38
39
#ifndef G4QMDParticipant_hh
40
#define G4QMDParticipant_hh
41
42
#include <
CLHEP/Units/SystemOfUnits.h
>
43
44
#include "
G4ParticleDefinition.hh
"
45
#include "
G4ThreeVector.hh
"
46
#include "
G4LorentzVector.hh
"
47
48
class
G4QMDParticipant
49
{
50
public
:
51
// momentum position
52
G4QMDParticipant
(
const
G4ParticleDefinition
* ,
G4ThreeVector
,
G4ThreeVector
);
53
~G4QMDParticipant
();
54
55
void
SetDefinition
(
const
G4ParticleDefinition
* pd ) { definition = pd; };
56
const
G4ParticleDefinition
*
GetDefinition
() {
return
definition; };
57
58
void
SetPosition
(
G4ThreeVector
r ) {
position
= r; };
59
G4ThreeVector
GetPosition
() {
return
position
; };
60
61
void
SetMomentum
(
G4ThreeVector
p
) { momentum =
p
; };
62
G4ThreeVector
GetMomentum
() {
return
momentum; };
63
64
G4double
GetMass
() {
return
definition->
GetPDGMass
()/
CLHEP::GeV
; };
65
66
G4LorentzVector
Get4Momentum
();
67
68
G4double
GetKineticEnergy
() {
return
Get4Momentum
().
e
() -
GetMass
(); };
69
70
G4int
GetBaryonNumber
() {
return
definition->
GetBaryonNumber
(); };
71
G4int
GetNuc
() {
return
definition->
GetBaryonNumber
(); };
72
73
G4int
GetChargeInUnitOfEplus
() {
return
int
( definition->
GetPDGCharge
()/
CLHEP::eplus
); };
74
75
void
UnsetInitialMark
() { projectile =
false
;
target
=
false
; }
76
void
UnsetHitMark
() { hit =
false
; }
77
G4bool
IsThisHit
() {
return
hit; }
78
void
SetHitMark
() { hit =
true
; }
79
80
void
SetProjectile
() { projectile =
true
; }
81
void
SetTarget
() {
target
=
true
; }
82
G4bool
IsThisProjectile
() {
return
projectile; }
83
G4bool
IsThisTarget
() {
return
target
; }
84
85
private
:
86
const
G4ParticleDefinition
* definition;
87
G4ThreeVector
momentum;
88
G4ThreeVector
position
;
89
90
G4bool
projectile;
91
G4bool
target
;
92
G4bool
hit;
93
};
94
95
#endif
G4LorentzVector.hh
G4QMDParticipant::SetProjectile
void SetProjectile()
Definition:
G4QMDParticipant.hh:80
G4QMDParticipant
Definition:
G4QMDParticipant.hh:48
G4QMDParticipant::GetMass
G4double GetMass()
Definition:
G4QMDParticipant.hh:64
G4QMDParticipant::GetPosition
G4ThreeVector GetPosition()
Definition:
G4QMDParticipant.hh:59
CLHEP::Hep3Vector
Definition:
ThreeVector.h:41
target
const XML_Char * target
Definition:
expat.h:268
G4QMDParticipant::SetPosition
void SetPosition(G4ThreeVector r)
Definition:
G4QMDParticipant.hh:58
p
const char * p
Definition:
xmltok.h:285
G4QMDParticipant::IsThisTarget
G4bool IsThisTarget()
Definition:
G4QMDParticipant.hh:83
G4QMDParticipant::~G4QMDParticipant
~G4QMDParticipant()
Definition:
G4QMDParticipant.cc:43
G4QMDParticipant::GetChargeInUnitOfEplus
G4int GetChargeInUnitOfEplus()
Definition:
G4QMDParticipant.hh:73
G4QMDParticipant::GetBaryonNumber
G4int GetBaryonNumber()
Definition:
G4QMDParticipant.hh:70
G4QMDParticipant::GetDefinition
const G4ParticleDefinition * GetDefinition()
Definition:
G4QMDParticipant.hh:56
G4ParticleDefinition
Definition:
G4ParticleDefinition.hh:72
G4int
int G4int
Definition:
G4Types.hh:78
G4QMDParticipant::GetNuc
G4int GetNuc()
Definition:
G4QMDParticipant.hh:71
G4QMDParticipant::GetMomentum
G4ThreeVector GetMomentum()
Definition:
G4QMDParticipant.hh:62
G4QMDParticipant::SetDefinition
void SetDefinition(const G4ParticleDefinition *pd)
Definition:
G4QMDParticipant.hh:55
G4QMDParticipant::UnsetHitMark
void UnsetHitMark()
Definition:
G4QMDParticipant.hh:76
G4bool
bool G4bool
Definition:
G4Types.hh:79
int
typedef int(XMLCALL *XML_NotStandaloneHandler)(void *userData)
CLHEP::eplus
static constexpr double eplus
Definition:
SystemOfUnits.h:157
G4ParticleDefinition.hh
G4QMDParticipant::SetMomentum
void SetMomentum(G4ThreeVector p)
Definition:
G4QMDParticipant.hh:61
G4QMDParticipant::GetKineticEnergy
G4double GetKineticEnergy()
Definition:
G4QMDParticipant.hh:68
G4QMDParticipant::IsThisHit
G4bool IsThisHit()
Definition:
G4QMDParticipant.hh:77
CLHEP::GeV
static constexpr double GeV
Definition:
SystemOfUnits.h:177
G4QMDParticipant::IsThisProjectile
G4bool IsThisProjectile()
Definition:
G4QMDParticipant.hh:82
G4ParticleDefinition::GetPDGMass
G4double GetPDGMass() const
Definition:
G4ParticleDefinition.hh:122
G4QMDParticipant::Get4Momentum
G4LorentzVector Get4Momentum()
Definition:
G4QMDParticipant.cc:50
CLHEP::HepLorentzVector::e
double e() const
G4QMDParticipant::UnsetInitialMark
void UnsetInitialMark()
Definition:
G4QMDParticipant.hh:75
G4QMDParticipant::SetHitMark
void SetHitMark()
Definition:
G4QMDParticipant.hh:78
position
Definition:
xmltok.h:112
CLHEP::HepLorentzVector
Definition:
LorentzVector.h:72
G4double
double G4double
Definition:
G4Types.hh:76
G4ThreeVector.hh
G4ParticleDefinition::GetPDGCharge
G4double GetPDGCharge() const
Definition:
G4ParticleDefinition.hh:124
G4QMDParticipant::SetTarget
void SetTarget()
Definition:
G4QMDParticipant.hh:81
SystemOfUnits.h
G4QMDParticipant::G4QMDParticipant
G4QMDParticipant(const G4ParticleDefinition *, G4ThreeVector, G4ThreeVector)
Definition:
G4QMDParticipant.cc:30
G4ParticleDefinition::GetBaryonNumber
G4int GetBaryonNumber() const
Definition:
G4ParticleDefinition.hh:144
source
geant4.10.03.p02
source
processes
hadronic
models
qmd
include
G4QMDParticipant.hh
Generated on Tue Nov 28 2017 21:43:42 for Geant4 by
1.8.5