ATLAS Offline Software
Loading...
Searching...
No Matches
LUCID_SimHit Class Reference

#include <LUCID_SimHit.h>

Collaboration diagram for LUCID_SimHit:

Public Member Functions

 LUCID_SimHit ()
 LUCID_SimHit (const LUCID_SimHit &)
 LUCID_SimHit (short tubeID, int pdgCode, int truthBarcode, int genVolume, float stepStartPosX, float stepStartPosY, float stepStartPosZ, float stepEndPosX, float stepEndPosY, float stepEndPosZ, float preStepTime, float postStepTime, float wavelength, float energy)
 LUCID_SimHit (short tubeID, int pdgCode, const HepMcParticleLink &partLink, int genVolume, float stepStartPosX, float stepStartPosY, float stepStartPosZ, float stepEndPosX, float stepEndPosY, float stepEndPosZ, float preStepTime, float postStepTime, float wavelength, float energy)
std::string print () const
const LUCID_SimHitoperator= (const LUCID_SimHit &t)
int operator== (const LUCID_SimHit &) const
bool operator< (const LUCID_SimHit &) const
const HepMcParticleLinkparticleLink () const
float GetX () const
float GetY () const
float GetZ () const
float GetEPX () const
float GetEPY () const
float GetEPZ () const
short GetTubeID () const
int truthBarcode () const
int truthID () const
int GetPdgCode () const
int GetGenVolume () const
float GetPreStepTime () const
float GetPostStepTime () const
float GetWavelength () const
float GetEnergy () const
bool isDetected (CLHEP::HepRandomEngine *rndEngine) const

Private Attributes

short m_tubeID {}
int m_pdgCode {}
HepMcParticleLink m_partLink
int m_genVolume {}
float m_stepStartPosX {}
float m_stepStartPosY {}
float m_stepStartPosZ {}
float m_stepEndPosX {}
float m_stepEndPosY {}
float m_stepEndPosZ {}
float m_preStepTime {}
float m_postStepTime {}
float m_wavelength {}
float m_energy {}

Detailed Description

Definition at line 17 of file LUCID_SimHit.h.

Constructor & Destructor Documentation

◆ LUCID_SimHit() [1/4]

LUCID_SimHit::LUCID_SimHit ( )

Definition at line 9 of file LUCID_SimHit.cxx.

9 : m_partLink() {
10
11 m_tubeID = 0;
12 m_pdgCode = 0;
13 m_genVolume = 0;
17 m_stepEndPosX = 0;
18 m_stepEndPosY = 0;
19 m_stepEndPosZ = 0;
20 m_preStepTime = 0;
22 m_wavelength = 0;
23 m_energy = 0;
24}
float m_preStepTime
float m_stepStartPosX
HepMcParticleLink m_partLink
float m_postStepTime
float m_stepStartPosZ
float m_stepEndPosZ
float m_stepEndPosX
float m_wavelength
float m_stepStartPosY
float m_stepEndPosY

◆ LUCID_SimHit() [2/4]

LUCID_SimHit::LUCID_SimHit ( const LUCID_SimHit & simhit)

Definition at line 26 of file LUCID_SimHit.cxx.

26{ *this = simhit; }

◆ LUCID_SimHit() [3/4]

LUCID_SimHit::LUCID_SimHit ( short tubeID,
int pdgCode,
int truthBarcode,
int genVolume,
float stepStartPosX,
float stepStartPosY,
float stepStartPosZ,
float stepEndPosX,
float stepEndPosY,
float stepEndPosZ,
float preStepTime,
float postStepTime,
float wavelength,
float energy )

Definition at line 28 of file LUCID_SimHit.cxx.

41 :
42
43 m_tubeID (tubeID),
44 m_pdgCode (pdgCode),
46 m_genVolume (genVolume),
47 m_stepStartPosX(stepStartPosX),
48 m_stepStartPosY(stepStartPosY),
49 m_stepStartPosZ(stepStartPosZ),
50 m_stepEndPosX (stepEndPosX),
51 m_stepEndPosY (stepEndPosY),
52 m_stepEndPosZ (stepEndPosZ),
53 m_preStepTime (preStepTime),
54 m_postStepTime (postStepTime),
55 m_wavelength (wavelength),
56 m_energy (energy) {}
int truthBarcode() const

◆ LUCID_SimHit() [4/4]

LUCID_SimHit::LUCID_SimHit ( short tubeID,
int pdgCode,
const HepMcParticleLink & partLink,
int genVolume,
float stepStartPosX,
float stepStartPosY,
float stepStartPosZ,
float stepEndPosX,
float stepEndPosY,
float stepEndPosZ,
float preStepTime,
float postStepTime,
float wavelength,
float energy )

Definition at line 58 of file LUCID_SimHit.cxx.

71 :
72
73 m_tubeID (tubeID),
74 m_pdgCode (pdgCode),
75 m_partLink (partLink),
76 m_genVolume (genVolume),
77 m_stepStartPosX(stepStartPosX),
78 m_stepStartPosY(stepStartPosY),
79 m_stepStartPosZ(stepStartPosZ),
80 m_stepEndPosX (stepEndPosX),
81 m_stepEndPosY (stepEndPosY),
82 m_stepEndPosZ (stepEndPosZ),
83 m_preStepTime (preStepTime),
84 m_postStepTime (postStepTime),
85 m_wavelength (wavelength),
86 m_energy (energy) {}

Member Function Documentation

◆ GetEnergy()

float LUCID_SimHit::GetEnergy ( ) const
inline

Definition at line 77 of file LUCID_SimHit.h.

77{ return m_energy; }

◆ GetEPX()

float LUCID_SimHit::GetEPX ( ) const
inline

Definition at line 65 of file LUCID_SimHit.h.

65{ return m_stepEndPosX; }

◆ GetEPY()

float LUCID_SimHit::GetEPY ( ) const
inline

Definition at line 66 of file LUCID_SimHit.h.

66{ return m_stepEndPosY; }

◆ GetEPZ()

float LUCID_SimHit::GetEPZ ( ) const
inline

Definition at line 67 of file LUCID_SimHit.h.

67{ return m_stepEndPosZ; }

◆ GetGenVolume()

int LUCID_SimHit::GetGenVolume ( ) const
inline

Definition at line 73 of file LUCID_SimHit.h.

73{ return m_genVolume; }

◆ GetPdgCode()

int LUCID_SimHit::GetPdgCode ( ) const
inline

Definition at line 72 of file LUCID_SimHit.h.

72{ return m_pdgCode; }

◆ GetPostStepTime()

float LUCID_SimHit::GetPostStepTime ( ) const
inline

Definition at line 75 of file LUCID_SimHit.h.

75{ return m_postStepTime; }

◆ GetPreStepTime()

float LUCID_SimHit::GetPreStepTime ( ) const
inline

Definition at line 74 of file LUCID_SimHit.h.

74{ return m_preStepTime; }

◆ GetTubeID()

short LUCID_SimHit::GetTubeID ( ) const
inline

Definition at line 69 of file LUCID_SimHit.h.

69{ return m_tubeID; }

◆ GetWavelength()

float LUCID_SimHit::GetWavelength ( ) const
inline

Definition at line 76 of file LUCID_SimHit.h.

76{ return m_wavelength; }

◆ GetX()

float LUCID_SimHit::GetX ( ) const
inline

Definition at line 61 of file LUCID_SimHit.h.

61{ return m_stepStartPosX; }

◆ GetY()

float LUCID_SimHit::GetY ( ) const
inline

Definition at line 62 of file LUCID_SimHit.h.

62{ return m_stepStartPosY; }

◆ GetZ()

float LUCID_SimHit::GetZ ( ) const
inline

Definition at line 63 of file LUCID_SimHit.h.

63{ return m_stepStartPosZ; }

◆ isDetected()

bool LUCID_SimHit::isDetected ( CLHEP::HepRandomEngine * rndEngine) const

Definition at line 126 of file LUCID_SimHit.cxx.

126 {
127
129 double ran = CLHEP::RandFlat::shoot(rndEngine, 0., 1.);
130 bool det = (ran<qef);
131
132 return det;
133}
double GetQuantumEfficiencyR762(double lambda)

◆ operator<()

bool LUCID_SimHit::operator< ( const LUCID_SimHit & rhs) const

Definition at line 137 of file LUCID_SimHit.cxx.

137{ return m_tubeID < rhs.m_tubeID; }

◆ operator=()

const LUCID_SimHit & LUCID_SimHit::operator= ( const LUCID_SimHit & t)

Definition at line 106 of file LUCID_SimHit.cxx.

106 {
107
108 m_tubeID = simhit.m_tubeID;
109 m_pdgCode = simhit.m_pdgCode;
110 m_partLink = simhit.m_partLink;
111 m_genVolume = simhit.m_genVolume;
112 m_stepStartPosX = simhit.m_stepStartPosX;
113 m_stepStartPosY = simhit.m_stepStartPosY;
114 m_stepStartPosZ = simhit.m_stepStartPosZ;
115 m_stepEndPosX = simhit.m_stepEndPosX;
116 m_stepEndPosY = simhit.m_stepEndPosY;
117 m_stepEndPosZ = simhit.m_stepEndPosZ;
118 m_preStepTime = simhit.m_preStepTime;
119 m_postStepTime = simhit.m_postStepTime;
120 m_wavelength = simhit.m_wavelength;
121 m_energy = simhit.m_energy;
122
123 return *this;
124}

◆ operator==()

int LUCID_SimHit::operator== ( const LUCID_SimHit & simhit) const

Definition at line 135 of file LUCID_SimHit.cxx.

135{ return (this==&simhit) ? 1 : 0; }

◆ particleLink()

const HepMcParticleLink & LUCID_SimHit::particleLink ( ) const
inline

Definition at line 99 of file LUCID_SimHit.h.

99{ return m_partLink; }

◆ print()

std::string LUCID_SimHit::print ( ) const

Definition at line 88 of file LUCID_SimHit.cxx.

88 {
89
90 std::stringstream ss;
91
92 ss << "LUCID_SimHit:";
93 ss << " tubeID: " << m_tubeID;
94 ss << " preStepTime: " << m_preStepTime;
95 ss << " postStepTime: " << m_postStepTime;
96 ss << " energy: " << m_energy;
97 ss << " wavelength : " << m_wavelength;
98 ss << " position: (" << m_stepStartPosX
99 << "," << m_stepStartPosY
100 << "," << m_stepStartPosZ
101 << ")";
102
103 return ss.str();
104}
static Double_t ss

◆ truthBarcode()

int LUCID_SimHit::truthBarcode ( ) const
inline

Definition at line 70 of file LUCID_SimHit.h.

70{ return m_partLink.barcode(); }

◆ truthID()

int LUCID_SimHit::truthID ( ) const
inline

Definition at line 71 of file LUCID_SimHit.h.

71{ return m_partLink.id(); }

Member Data Documentation

◆ m_energy

float LUCID_SimHit::m_energy {}
private

Definition at line 96 of file LUCID_SimHit.h.

96{};

◆ m_genVolume

int LUCID_SimHit::m_genVolume {}
private

Definition at line 86 of file LUCID_SimHit.h.

86{};

◆ m_partLink

HepMcParticleLink LUCID_SimHit::m_partLink
private

Definition at line 85 of file LUCID_SimHit.h.

◆ m_pdgCode

int LUCID_SimHit::m_pdgCode {}
private

Definition at line 84 of file LUCID_SimHit.h.

84{};

◆ m_postStepTime

float LUCID_SimHit::m_postStepTime {}
private

Definition at line 94 of file LUCID_SimHit.h.

94{};

◆ m_preStepTime

float LUCID_SimHit::m_preStepTime {}
private

Definition at line 93 of file LUCID_SimHit.h.

93{};

◆ m_stepEndPosX

float LUCID_SimHit::m_stepEndPosX {}
private

Definition at line 90 of file LUCID_SimHit.h.

90{};

◆ m_stepEndPosY

float LUCID_SimHit::m_stepEndPosY {}
private

Definition at line 91 of file LUCID_SimHit.h.

91{};

◆ m_stepEndPosZ

float LUCID_SimHit::m_stepEndPosZ {}
private

Definition at line 92 of file LUCID_SimHit.h.

92{};

◆ m_stepStartPosX

float LUCID_SimHit::m_stepStartPosX {}
private

Definition at line 87 of file LUCID_SimHit.h.

87{};

◆ m_stepStartPosY

float LUCID_SimHit::m_stepStartPosY {}
private

Definition at line 88 of file LUCID_SimHit.h.

88{};

◆ m_stepStartPosZ

float LUCID_SimHit::m_stepStartPosZ {}
private

Definition at line 89 of file LUCID_SimHit.h.

89{};

◆ m_tubeID

short LUCID_SimHit::m_tubeID {}
private

Definition at line 83 of file LUCID_SimHit.h.

83{};

◆ m_wavelength

float LUCID_SimHit::m_wavelength {}
private

Definition at line 95 of file LUCID_SimHit.h.

95{};

The documentation for this class was generated from the following files: