ATLAS Offline Software
Loading...
Searching...
No Matches
ForwardDetectors
LUCID
LUCID_SimUtils
LUCID_SimEvent
LUCID_SimEvent
LUCID_SimHit.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef LUCID_SIMHIT_H
6
#define LUCID_SIMHIT_H 1
7
8
#include "
GeneratorObjects/HepMcParticleLink.h
"
9
#include "
Identifier/Identifiable.h
"
10
#include "CLHEP/Vector/ThreeVector.h"
11
#include <string>
12
#include "CLHEP/Random/RandFlat.h"
13
14
// LUCID_SimHit hold all information needed by the digitization algorithms
15
// to construct raw data objects.
16
17
class
LUCID_SimHit
{
18
19
public
:
20
21
LUCID_SimHit
();
22
LUCID_SimHit
(
const
LUCID_SimHit
&);
23
LUCID_SimHit
(
short
tubeID,
24
int
pdgCode,
25
int
truthBarcode
,
26
int
genVolume,
27
float
stepStartPosX,
28
float
stepStartPosY,
29
float
stepStartPosZ,
30
float
stepEndPosX,
31
float
stepEndPosY,
32
float
stepEndPosZ,
33
float
preStepTime,
34
float
postStepTime,
35
float
wavelength,
36
float
energy);
37
LUCID_SimHit
(
short
tubeID,
38
int
pdgCode,
39
const
HepMcParticleLink
& partLink,
40
int
genVolume,
41
float
stepStartPosX,
42
float
stepStartPosY,
43
float
stepStartPosZ,
44
float
stepEndPosX,
45
float
stepEndPosY,
46
float
stepEndPosZ,
47
float
preStepTime,
48
float
postStepTime,
49
float
wavelength,
50
float
energy);
51
52
std::string
print
()
const
;
53
54
const
LUCID_SimHit
&
operator=
(
const
LUCID_SimHit
& t);
55
56
int
operator ==
(
const
LUCID_SimHit
&)
const
;
57
bool
operator <
(
const
LUCID_SimHit
&)
const
;
58
59
const
HepMcParticleLink
&
particleLink
()
const
;
60
61
inline
float
GetX
()
const
{
return
m_stepStartPosX
; }
62
inline
float
GetY
()
const
{
return
m_stepStartPosY
; }
63
inline
float
GetZ
()
const
{
return
m_stepStartPosZ
; }
64
65
inline
float
GetEPX
()
const
{
return
m_stepEndPosX
; }
66
inline
float
GetEPY
()
const
{
return
m_stepEndPosY
; }
67
inline
float
GetEPZ
()
const
{
return
m_stepEndPosZ
; }
68
69
inline
short
GetTubeID
()
const
{
return
m_tubeID
; }
70
inline
int
truthBarcode
()
const
{
return
m_partLink
.barcode(); }
71
inline
int
truthID
()
const
{
return
m_partLink
.id(); }
72
inline
int
GetPdgCode
()
const
{
return
m_pdgCode
; }
73
inline
int
GetGenVolume
()
const
{
return
m_genVolume
; }
74
inline
float
GetPreStepTime
()
const
{
return
m_preStepTime
; }
75
inline
float
GetPostStepTime
()
const
{
return
m_postStepTime
; }
76
inline
float
GetWavelength
()
const
{
return
m_wavelength
; }
77
inline
float
GetEnergy
()
const
{
return
m_energy
; }
78
79
bool
isDetected
(CLHEP::HepRandomEngine* rndEngine)
const
;
80
81
private
:
82
83
short
m_tubeID
{};
84
int
m_pdgCode
{};
85
HepMcParticleLink
m_partLink
;
// link to the particle generating the hit
86
int
m_genVolume
{};
87
float
m_stepStartPosX
{};
88
float
m_stepStartPosY
{};
89
float
m_stepStartPosZ
{};
90
float
m_stepEndPosX
{};
91
float
m_stepEndPosY
{};
92
float
m_stepEndPosZ
{};
93
float
m_preStepTime
{};
94
float
m_postStepTime
{};
95
float
m_wavelength
{};
96
float
m_energy
{};
97
};
98
99
inline
const
HepMcParticleLink
&
LUCID_SimHit::particleLink
()
const
{
return
m_partLink
; }
100
101
#endif
HepMcParticleLink.h
Identifiable.h
HepMcParticleLink
a link optimized in size for a GenParticle in a McEventCollection
Definition
HepMcParticleLink.h:72
LUCID_SimHit::GetEPY
float GetEPY() const
Definition
LUCID_SimHit.h:66
LUCID_SimHit::m_preStepTime
float m_preStepTime
Definition
LUCID_SimHit.h:93
LUCID_SimHit::isDetected
bool isDetected(CLHEP::HepRandomEngine *rndEngine) const
Definition
LUCID_SimHit.cxx:126
LUCID_SimHit::GetEnergy
float GetEnergy() const
Definition
LUCID_SimHit.h:77
LUCID_SimHit::GetPreStepTime
float GetPreStepTime() const
Definition
LUCID_SimHit.h:74
LUCID_SimHit::particleLink
const HepMcParticleLink & particleLink() const
Definition
LUCID_SimHit.h:99
LUCID_SimHit::m_pdgCode
int m_pdgCode
Definition
LUCID_SimHit.h:84
LUCID_SimHit::operator=
const LUCID_SimHit & operator=(const LUCID_SimHit &t)
Definition
LUCID_SimHit.cxx:106
LUCID_SimHit::GetEPZ
float GetEPZ() const
Definition
LUCID_SimHit.h:67
LUCID_SimHit::GetX
float GetX() const
Definition
LUCID_SimHit.h:61
LUCID_SimHit::truthID
int truthID() const
Definition
LUCID_SimHit.h:71
LUCID_SimHit::m_stepStartPosX
float m_stepStartPosX
Definition
LUCID_SimHit.h:87
LUCID_SimHit::operator==
int operator==(const LUCID_SimHit &) const
Definition
LUCID_SimHit.cxx:135
LUCID_SimHit::operator<
bool operator<(const LUCID_SimHit &) const
Definition
LUCID_SimHit.cxx:137
LUCID_SimHit::m_tubeID
short m_tubeID
Definition
LUCID_SimHit.h:83
LUCID_SimHit::m_partLink
HepMcParticleLink m_partLink
Definition
LUCID_SimHit.h:85
LUCID_SimHit::m_postStepTime
float m_postStepTime
Definition
LUCID_SimHit.h:94
LUCID_SimHit::GetPostStepTime
float GetPostStepTime() const
Definition
LUCID_SimHit.h:75
LUCID_SimHit::m_stepStartPosZ
float m_stepStartPosZ
Definition
LUCID_SimHit.h:89
LUCID_SimHit::m_genVolume
int m_genVolume
Definition
LUCID_SimHit.h:86
LUCID_SimHit::GetY
float GetY() const
Definition
LUCID_SimHit.h:62
LUCID_SimHit::m_stepEndPosZ
float m_stepEndPosZ
Definition
LUCID_SimHit.h:92
LUCID_SimHit::GetEPX
float GetEPX() const
Definition
LUCID_SimHit.h:65
LUCID_SimHit::m_energy
float m_energy
Definition
LUCID_SimHit.h:96
LUCID_SimHit::truthBarcode
int truthBarcode() const
Definition
LUCID_SimHit.h:70
LUCID_SimHit::GetPdgCode
int GetPdgCode() const
Definition
LUCID_SimHit.h:72
LUCID_SimHit::LUCID_SimHit
LUCID_SimHit()
Definition
LUCID_SimHit.cxx:9
LUCID_SimHit::m_stepEndPosX
float m_stepEndPosX
Definition
LUCID_SimHit.h:90
LUCID_SimHit::m_wavelength
float m_wavelength
Definition
LUCID_SimHit.h:95
LUCID_SimHit::GetWavelength
float GetWavelength() const
Definition
LUCID_SimHit.h:76
LUCID_SimHit::GetTubeID
short GetTubeID() const
Definition
LUCID_SimHit.h:69
LUCID_SimHit::m_stepStartPosY
float m_stepStartPosY
Definition
LUCID_SimHit.h:88
LUCID_SimHit::print
std::string print() const
Definition
LUCID_SimHit.cxx:88
LUCID_SimHit::GetZ
float GetZ() const
Definition
LUCID_SimHit.h:63
LUCID_SimHit::m_stepEndPosY
float m_stepEndPosY
Definition
LUCID_SimHit.h:91
LUCID_SimHit::GetGenVolume
int GetGenVolume() const
Definition
LUCID_SimHit.h:73
Generated on
for ATLAS Offline Software by
1.14.0