LDMX Software
ldmx::SimCalorimeterHit Class Reference

Stores simulated calorimeter hit information. More...

#include <SimCalorimeterHit.h>

Classes

class  Contrib
 Information about a contribution to the hit in the associated cell. More...
 

Public Member Functions

 SimCalorimeterHit ()=default
 Class constructor.
 
virtual ~SimCalorimeterHit ()=default
 Class destructor.
 
void clear ()
 Clear the data in the object.
 
int getID () const
 Get the detector ID.
 
void setID (const int id)
 Set the detector ID.
 
float getEdep () const
 Get the energy deposition of the hit [MeV].
 
void setEdep (const float edep)
 Set the energy deposition of the hit [MeV].
 
std::vector< float > getPosition () const
 Get the XYZ position of the hit [mm].
 
std::vector< float > getPreStepPosition () const
 Get the XYZ pre-step position of the hit in the coordinate frame of the sensitive volume [mm].
 
std::vector< float > getPostStepPosition () const
 Get the XYZ post-step position of the hit in the coordinate frame of the sensitive volume [mm].
 
void setPosition (const float x, const float y, const float z)
 Set the XYZ position of the hit [mm].
 
void setPreStepPosition (const float x, const float y, const float z)
 Set the XYZ pre-step position of the hit in the coordinate frame of the sensitive volume [mm].
 
void setPostStepPosition (const float x, const float y, const float z)
 Set the XYZ post-step position of the hit in the coordinate frame of the sensitive volume [mm].
 
void setPathLength (const float length)
 Set the physical path length for the interaction [mm].
 
float getPathLength () const
 Get the physical path length for the interaction [mm].
 
void setPreStepTime (const float time)
 Set global pre-step time of the hit [ns].
 
void setPostStepTime (const float time)
 Set global post-step time of the hit [ns].
 
void setVelocity (float velocity)
 Set the velocity of the track [mm/ns].
 
float getTime () const
 Get the global time of the hit [ns].
 
float getPreStepTime () const
 Get the pre-step time of the hit [ns].
 
float getPostStepTime () const
 Get the post-step time of the hit [ns].
 
float getVelocity () const
 Get the track velocity of the hit [mm/ns].
 
void setTime (const float time)
 Set the time of the hit [ns].
 
unsigned getNumberOfContribs () const
 Get the number of hit contributions.
 
void addContrib (int incidentID, int trackID, int pdgCode, float edep, float time, int originID=-1)
 Add a hit contribution from a SimParticle.
 
Contrib getContrib (int i) const
 Get a hit contribution by index_.
 
int findContribIndex (int trackID, int pdgCode) const
 Find the index of a hit contribution from a SimParticle and PDG code.
 
void updateContrib (int i, float edep, float time)
 Update an existing hit contribution by incrementing its edep and setting the time if the new time is less than the old one.
 
void encodeTracks (std::function< int(int, unsigned int, unsigned int)> encodeFunc, const unsigned int encoding_version, const unsigned int event_index=0)
 Encodes all Track IDs in the SimCalorimeterHit object according to the schema provided in the 'encodeFunc' passed to this method.
 
bool operator< (const SimCalorimeterHit &rhs) const
 Sort by time of hit.
 
std::vector< int > getTrackIds () const
 Get the list of track IDs contributing to the hit.
 
std::vector< int > getIncidentIds () const
 Get the list of incident IDs contributing to the hit.
 
std::vector< int > getPdgIds () const
 Get the list of PDG codes contributing to the hit.
 
std::vector< float > getEdeps () const
 Get the list of energy depositions contributing to the hit.
 
std::vector< float > getTimes () const
 Get the list of times contributing to the hit.
 

Static Public Attributes

static const std::string ECAL_COLLECTION = "EcalSimHits"
 name of the ecal sim collection, should match gdml
 
static const std::string HCAL_COLLECTION = "HcalSimHits"
 name of the hcal sim collection, should match gdml
 

Private Member Functions

 ClassDef (SimCalorimeterHit, 8)
 ROOT class definition.
 

Private Attributes

int id_ {0}
 Member variables used in all calorimeter types.
 
float edep_ {0}
 The energy deposition.
 
float x_ {0}
 The X position.
 
float y_ {0}
 The Y position.
 
float z_ {0}
 The Z position.
 
float time_ {0}
 The global time of the hit.
 
std::vector< int > track_id_contribs_
 The list of track IDs contributing to the hit.
 
std::vector< int > incident_id_contribs_
 The list of incident IDs contributing to the hit.
 
std::vector< int > pdg_code_contribs_
 The list of PDG codes contributing to the hit.
 
std::vector< float > edep_contribs_
 The list of energy depositions contributing to the hit.
 
std::vector< float > time_contribs_
 The list of times contributing to the hit.
 
std::vector< int > origin_contribs_
 The list of origin IDs contributing to the hit.
 
unsigned n_contribs_ {0}
 The number of hit contributions.
 
float path_length_ {-1}
 The true path length [mm].
 
float pre_step_x_ {0}
 The X, Y, and Z positions [mm] before the interaction in the coordinate frame of the sensitive volume.
 
float pre_step_y_ {0}
 
float pre_step_z_ {0}
 
float pre_step_time_ {0}
 The global time before the interaction [ns].
 
float post_step_x_ {0}
 The X, Y, and Z positions [mm] after the interaction in the coordinate frame of the sensitive volume.
 
float post_step_y_ {0}
 
float post_step_z_ {0}
 
float post_step_time_ {0}
 The global time after the interaction [ns].
 
float velocity_ {-1}
 The track velocity [mm/ns].
 

Friends

std::ostream & operator<< (std::ostream &o, const SimCalorimeterHit &d)
 Print out the object.
 
std::ostream & operator<< (std::ostream &o, const SimCalorimeterHit::Contrib &contrib)
 

Detailed Description

Stores simulated calorimeter hit information.

Note
This class represents simulated hit information from a calorimeter detector. It provides access to the cell ID, energy deposition, cell position and time. Additionally, individual depositions or steps from MC particles are tabulated as contributions stored in vectors. Contribution information includes a reference to the relevant SimParticle, the PDG code of the actual particle which deposited energy (may be different from the actual SimParticle), the time of the contribution and the energy deposition.

Definition at line 35 of file SimCalorimeterHit.h.

Member Function Documentation

◆ addContrib()

void ldmx::SimCalorimeterHit::addContrib ( int incidentID,
int trackID,
int pdgCode,
float edep,
float time,
int originID = -1 )

Add a hit contribution from a SimParticle.

Parameters
incidentIDthe Geant4 track ID for the particle's parent incident on the Calorimeter region
trackIDthe Geant4 track ID for the particle
pdgCodeThe PDG code of the actual track.
edepThe energy deposition of the hit [MeV].
timeThe time of the hit [ns].

Definition at line 48 of file SimCalorimeterHit.cxx.

49 {
50 incident_id_contribs_.push_back(incidentID);
51 track_id_contribs_.push_back(trackID);
52 pdg_code_contribs_.push_back(pdgCode);
53 edep_contribs_.push_back(edep);
54 time_contribs_.push_back(time);
55 origin_contribs_.push_back(originID);
56 edep_ += edep;
57 if (time < time_ || time_ == 0) {
58 time_ = time;
59 }
61}
float edep_
The energy deposition.
std::vector< float > time_contribs_
The list of times contributing to the hit.
float time_
The global time of the hit.
std::vector< float > edep_contribs_
The list of energy depositions contributing to the hit.
std::vector< int > track_id_contribs_
The list of track IDs contributing to the hit.
std::vector< int > incident_id_contribs_
The list of incident IDs contributing to the hit.
std::vector< int > pdg_code_contribs_
The list of PDG codes contributing to the hit.
unsigned n_contribs_
The number of hit contributions.
std::vector< int > origin_contribs_
The list of origin IDs contributing to the hit.

References edep_, edep_contribs_, incident_id_contribs_, n_contribs_, origin_contribs_, pdg_code_contribs_, time_, time_contribs_, and track_id_contribs_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ clear()

void ldmx::SimCalorimeterHit::clear ( )

Clear the data in the object.

Definition at line 13 of file SimCalorimeterHit.cxx.

13 {
15 track_id_contribs_.clear();
16 pdg_code_contribs_.clear();
17 edep_contribs_.clear();
18 time_contribs_.clear();
19 origin_contribs_.clear();
20
21 n_contribs_ = 0;
22 id_ = 0;
23 edep_ = 0;
24 x_ = 0;
25 y_ = 0;
26 z_ = 0;
27 time_ = 0;
28}
float z_
The Z position.
float y_
The Y position.
float x_
The X position.
int id_
Member variables used in all calorimeter types.

References edep_, edep_contribs_, id_, incident_id_contribs_, n_contribs_, origin_contribs_, pdg_code_contribs_, time_, time_contribs_, track_id_contribs_, x_, y_, and z_.

◆ encodeTracks()

void ldmx::SimCalorimeterHit::encodeTracks ( std::function< int(int, unsigned int, unsigned int)> encodeFunc,
const unsigned int encoding_version,
const unsigned int event_index = 0 )

Encodes all Track IDs in the SimCalorimeterHit object according to the schema provided in the 'encodeFunc' passed to this method.

Parameters
encodeFuncThe track ID encoding function to be called.
encoding_versionThe version number for the track ID bitwise encoding schema. Possible values range over [0, 15].
event_indexThe sample event index to assign the track ID.

Definition at line 94 of file SimCalorimeterHit.cxx.

96 {
97 for (int i_contrib = 0; i_contrib < this->n_contribs_; i_contrib++) {
98 this->track_id_contribs_[i_contrib] = encodeFunc(
99 this->track_id_contribs_[i_contrib], encoding_version, event_index);
100 this->incident_id_contribs_[i_contrib] = encodeFunc(
101 this->incident_id_contribs_[i_contrib], encoding_version, event_index);
102 this->origin_contribs_[i_contrib] = encodeFunc(
103 this->origin_contribs_[i_contrib], encoding_version, event_index);
104 }
105}

References incident_id_contribs_, n_contribs_, origin_contribs_, and track_id_contribs_.

◆ findContribIndex()

int ldmx::SimCalorimeterHit::findContribIndex ( int trackID,
int pdgCode ) const

Find the index of a hit contribution from a SimParticle and PDG code.

Parameters
trackIDthe track ID of the particle causing the hit
pdgCodeThe PDG code of the contribution.
Returns
The index of the contribution or -1 if none exists.

Definition at line 74 of file SimCalorimeterHit.cxx.

74 {
75 int contrib_index = -1;
76 for (int i_contrib = 0; i_contrib < n_contribs_; i_contrib++) {
77 Contrib contrib = getContrib(i_contrib);
78 if (contrib.track_id_ == trackID && contrib.pdg_code_ == pdgCode) {
79 contrib_index = i_contrib;
80 break;
81 }
82 }
83 return contrib_index;
84}
Contrib getContrib(int i) const
Get a hit contribution by index_.

References getContrib(), n_contribs_, ldmx::SimCalorimeterHit::Contrib::pdg_code_, and ldmx::SimCalorimeterHit::Contrib::track_id_.

◆ getContrib()

SimCalorimeterHit::Contrib ldmx::SimCalorimeterHit::getContrib ( int i) const

Get a hit contribution by index_.

Parameters
iThe index of the hit contribution.
Returns
The hit contribution at the index_.

Definition at line 63 of file SimCalorimeterHit.cxx.

63 {
64 Contrib contrib;
65 contrib.incident_id_ = incident_id_contribs_.at(i);
66 contrib.track_id_ = track_id_contribs_.at(i);
67 contrib.edep_ = edep_contribs_.at(i);
68 contrib.time_ = time_contribs_.at(i);
69 contrib.pdg_code_ = pdg_code_contribs_.at(i);
70 contrib.origin_id_ = origin_contribs_.at(i);
71 return contrib;
72}

References ldmx::SimCalorimeterHit::Contrib::edep_, edep_contribs_, ldmx::SimCalorimeterHit::Contrib::incident_id_, incident_id_contribs_, origin_contribs_, ldmx::SimCalorimeterHit::Contrib::origin_id_, ldmx::SimCalorimeterHit::Contrib::pdg_code_, pdg_code_contribs_, ldmx::SimCalorimeterHit::Contrib::time_, time_contribs_, ldmx::SimCalorimeterHit::Contrib::track_id_, and track_id_contribs_.

Referenced by findContribIndex(), and hcal::HcalDigiProducer::produce().

◆ getEdep()

float ldmx::SimCalorimeterHit::getEdep ( ) const
inline

Get the energy deposition of the hit [MeV].

Returns
The energy deposition of the hit.

Definition at line 119 of file SimCalorimeterHit.h.

119{ return edep_; }

References edep_.

◆ getEdeps()

std::vector< float > ldmx::SimCalorimeterHit::getEdeps ( ) const
inline

Get the list of energy depositions contributing to the hit.

Definition at line 318 of file SimCalorimeterHit.h.

318{ return edep_contribs_; }

References edep_contribs_.

◆ getID()

int ldmx::SimCalorimeterHit::getID ( ) const
inline

Get the detector ID.

Returns
The detector ID.

Definition at line 107 of file SimCalorimeterHit.h.

107{ return id_; }

References id_.

◆ getIncidentIds()

std::vector< int > ldmx::SimCalorimeterHit::getIncidentIds ( ) const
inline

Get the list of incident IDs contributing to the hit.

Definition at line 308 of file SimCalorimeterHit.h.

308{ return incident_id_contribs_; }

References incident_id_contribs_.

◆ getNumberOfContribs()

unsigned ldmx::SimCalorimeterHit::getNumberOfContribs ( ) const
inline

Get the number of hit contributions.

Returns
The number of hit contributions.

Definition at line 244 of file SimCalorimeterHit.h.

244{ return n_contribs_; }

References n_contribs_.

Referenced by hcal::HcalDigiProducer::produce().

◆ getPathLength()

float ldmx::SimCalorimeterHit::getPathLength ( ) const
inline

Get the physical path length for the interaction [mm].

Returns
physical path length

Definition at line 194 of file SimCalorimeterHit.h.

194{ return path_length_; }
float path_length_
The true path length [mm].

References path_length_.

◆ getPdgIds()

std::vector< int > ldmx::SimCalorimeterHit::getPdgIds ( ) const
inline

Get the list of PDG codes contributing to the hit.

Definition at line 313 of file SimCalorimeterHit.h.

313{ return pdg_code_contribs_; }

References pdg_code_contribs_.

◆ getPosition()

std::vector< float > ldmx::SimCalorimeterHit::getPosition ( ) const
inline

Get the XYZ position of the hit [mm].

Returns
The XYZ position of the hit.

Definition at line 131 of file SimCalorimeterHit.h.

131{ return {x_, y_, z_}; }

References x_, y_, and z_.

Referenced by hcal::HcalDigiProducer::produce().

◆ getPostStepPosition()

std::vector< float > ldmx::SimCalorimeterHit::getPostStepPosition ( ) const
inline

Get the XYZ post-step position of the hit in the coordinate frame of the sensitive volume [mm].

Returns
The XYZ position of the hit.

Definition at line 146 of file SimCalorimeterHit.h.

146 {
147 return {post_step_x_, post_step_y_, post_step_z_};
148 }
float post_step_x_
The X, Y, and Z positions [mm] after the interaction in the coordinate frame of the sensitive volume.

References post_step_x_.

◆ getPostStepTime()

float ldmx::SimCalorimeterHit::getPostStepTime ( ) const
inline

Get the post-step time of the hit [ns].

Returns
The global time of the hit after the interaction.

Definition at line 226 of file SimCalorimeterHit.h.

226{ return post_step_time_; }
float post_step_time_
The global time after the interaction [ns].

References post_step_time_.

◆ getPreStepPosition()

std::vector< float > ldmx::SimCalorimeterHit::getPreStepPosition ( ) const
inline

Get the XYZ pre-step position of the hit in the coordinate frame of the sensitive volume [mm].

Returns
The local XYZ position of the hit.

Definition at line 138 of file SimCalorimeterHit.h.

138 {
139 return {pre_step_x_, pre_step_y_, pre_step_z_};
140 }
float pre_step_x_
The X, Y, and Z positions [mm] before the interaction in the coordinate frame of the sensitive volume...

References pre_step_x_.

◆ getPreStepTime()

float ldmx::SimCalorimeterHit::getPreStepTime ( ) const
inline

Get the pre-step time of the hit [ns].

Returns
The global time of the hit before the interaction.

Definition at line 221 of file SimCalorimeterHit.h.

221{ return pre_step_time_; }
float pre_step_time_
The global time before the interaction [ns].

References pre_step_time_.

◆ getTime()

float ldmx::SimCalorimeterHit::getTime ( ) const
inline

Get the global time of the hit [ns].

Returns
The global time of the hit.

Definition at line 216 of file SimCalorimeterHit.h.

216{ return time_; }

References time_.

Referenced by operator<().

◆ getTimes()

std::vector< float > ldmx::SimCalorimeterHit::getTimes ( ) const
inline

Get the list of times contributing to the hit.

Definition at line 323 of file SimCalorimeterHit.h.

323{ return time_contribs_; }

References time_contribs_.

◆ getTrackIds()

std::vector< int > ldmx::SimCalorimeterHit::getTrackIds ( ) const
inline

Get the list of track IDs contributing to the hit.

Definition at line 304 of file SimCalorimeterHit.h.

304{ return track_id_contribs_; }

References track_id_contribs_.

◆ getVelocity()

float ldmx::SimCalorimeterHit::getVelocity ( ) const
inline

Get the track velocity of the hit [mm/ns].

Returns
Thetrack velocity of the hit.

Definition at line 232 of file SimCalorimeterHit.h.

232{ return velocity_; }
float velocity_
The track velocity [mm/ns].

References velocity_.

◆ operator<()

bool ldmx::SimCalorimeterHit::operator< ( const SimCalorimeterHit & rhs) const
inline

Sort by time of hit.

Definition at line 297 of file SimCalorimeterHit.h.

297 {
298 return this->getTime() < rhs.getTime();
299 }
float getTime() const
Get the global time of the hit [ns].

References getTime().

◆ setEdep()

void ldmx::SimCalorimeterHit::setEdep ( const float edep)
inline

Set the energy deposition of the hit [MeV].

Parameters
edepThe energy deposition of the hit.

Definition at line 125 of file SimCalorimeterHit.h.

125{ this->edep_ = edep; }

References edep_.

◆ setID()

void ldmx::SimCalorimeterHit::setID ( const int id)
inline

Set the detector ID.

@id The detector ID.

Definition at line 113 of file SimCalorimeterHit.h.

113{ this->id_ = id; }

References id_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ setPathLength()

void ldmx::SimCalorimeterHit::setPathLength ( const float length)
inline

Set the physical path length for the interaction [mm].

Parameters
lengthThe physical path lenght

Definition at line 189 of file SimCalorimeterHit.h.

189{ path_length_ = length; }

References path_length_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ setPosition()

void ldmx::SimCalorimeterHit::setPosition ( const float x,
const float y,
const float z )
inline

Set the XYZ position of the hit [mm].

Parameters
xThe X position.
yThe Y position.
zThe Z position.

Definition at line 155 of file SimCalorimeterHit.h.

155 {
156 this->x_ = x;
157 this->y_ = y;
158 this->z_ = z;
159 }

References x_, y_, and z_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ setPostStepPosition()

void ldmx::SimCalorimeterHit::setPostStepPosition ( const float x,
const float y,
const float z )
inline

Set the XYZ post-step position of the hit in the coordinate frame of the sensitive volume [mm].

Parameters
xThe X position.
yThe Y position.
zThe Z position.

Definition at line 179 of file SimCalorimeterHit.h.

179 {
180 post_step_x_ = x;
181 post_step_y_ = y;
182 post_step_z_ = z;
183 }

References post_step_x_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ setPostStepTime()

void ldmx::SimCalorimeterHit::setPostStepTime ( const float time)
inline

Set global post-step time of the hit [ns].

Parameters
timeThe time before the step

Definition at line 204 of file SimCalorimeterHit.h.

204{ post_step_time_ = time; }

References post_step_time_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ setPreStepPosition()

void ldmx::SimCalorimeterHit::setPreStepPosition ( const float x,
const float y,
const float z )
inline

Set the XYZ pre-step position of the hit in the coordinate frame of the sensitive volume [mm].

Parameters
xThe X position.
yThe Y position.
zThe Z position.

Definition at line 167 of file SimCalorimeterHit.h.

167 {
168 pre_step_x_ = x;
169 pre_step_y_ = y;
170 pre_step_z_ = z;
171 }

References pre_step_x_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ setPreStepTime()

void ldmx::SimCalorimeterHit::setPreStepTime ( const float time)
inline

Set global pre-step time of the hit [ns].

Parameters
timeThe time before the step

Definition at line 199 of file SimCalorimeterHit.h.

199{ pre_step_time_ = time; }

References pre_step_time_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ setTime()

void ldmx::SimCalorimeterHit::setTime ( const float time)
inline

Set the time of the hit [ns].

Parameters
timeThe time of the hit.

Definition at line 238 of file SimCalorimeterHit.h.

238{ this->time_ = time; }

References time_.

◆ setVelocity()

void ldmx::SimCalorimeterHit::setVelocity ( float velocity)
inline

Set the velocity of the track [mm/ns].

Parameters
velocityThe track velocity

Definition at line 210 of file SimCalorimeterHit.h.

210{ velocity_ = velocity; }

References velocity_.

Referenced by simcore::TrigScintSD::ProcessHits().

◆ updateContrib()

void ldmx::SimCalorimeterHit::updateContrib ( int i,
float edep,
float time )

Update an existing hit contribution by incrementing its edep and setting the time if the new time is less than the old one.

Parameters
iThe index of the contribution.
edepThe additional energy contribution [MeV].
timeThe time of the contribution [ns].

Definition at line 86 of file SimCalorimeterHit.cxx.

86 {
87 this->edep_contribs_[i] += edep;
88 if (time < this->time_contribs_.at(i)) {
89 this->time_contribs_[i] = time;
90 }
91 edep_ += edep;
92}

References edep_, edep_contribs_, and time_contribs_.

Friends And Related Symbol Documentation

◆ operator<< [1/2]

std::ostream & operator<< ( std::ostream & o,
const SimCalorimeterHit & d )
friend

Print out the object.

Definition at line 30 of file SimCalorimeterHit.cxx.

30 {
31 return o << "SimCalorimeterHit { " << "id: " << hit.id_
32 << ", edep: " << hit.edep_
33 << ", "
34 "position: ( "
35 << hit.x_ << ", " << hit.y_ << ", " << hit.z_
36 << " ), num contribs: " << hit.n_contribs_ << " }";
37}

◆ operator<< [2/2]

std::ostream & operator<< ( std::ostream & o,
const SimCalorimeterHit::Contrib & contrib )
friend

Definition at line 39 of file SimCalorimeterHit.cxx.

40 {
41 return o << "Contrib { " << "incident_id: " << contrib.incident_id_
42 << ", track_id: " << contrib.track_id_
43 << ", pdg_code: " << contrib.pdg_code_ << ", edep: " << contrib.edep_
44 << ", time: " << contrib.time_
45 << ", origin_id: " << contrib.origin_id_ << " }";
46}

Member Data Documentation

◆ ECAL_COLLECTION

const std::string ldmx::SimCalorimeterHit::ECAL_COLLECTION = "EcalSimHits"
static

name of the ecal sim collection, should match gdml

Definition at line 38 of file SimCalorimeterHit.h.

◆ edep_

float ldmx::SimCalorimeterHit::edep_ {0}
private

The energy deposition.

Definition at line 337 of file SimCalorimeterHit.h.

337{0};

Referenced by addContrib(), clear(), getEdep(), setEdep(), and updateContrib().

◆ edep_contribs_

std::vector<float> ldmx::SimCalorimeterHit::edep_contribs_
private

The list of energy depositions contributing to the hit.

Definition at line 377 of file SimCalorimeterHit.h.

Referenced by addContrib(), clear(), getContrib(), getEdeps(), and updateContrib().

◆ HCAL_COLLECTION

const std::string ldmx::SimCalorimeterHit::HCAL_COLLECTION = "HcalSimHits"
static

name of the hcal sim collection, should match gdml

Definition at line 41 of file SimCalorimeterHit.h.

◆ id_

int ldmx::SimCalorimeterHit::id_ {0}
private

Member variables used in all calorimeter types.

The detector ID.

Definition at line 332 of file SimCalorimeterHit.h.

332{0};

Referenced by clear(), getID(), and setID().

◆ incident_id_contribs_

std::vector<int> ldmx::SimCalorimeterHit::incident_id_contribs_
private

The list of incident IDs contributing to the hit.

Definition at line 367 of file SimCalorimeterHit.h.

Referenced by addContrib(), clear(), encodeTracks(), getContrib(), and getIncidentIds().

◆ n_contribs_

unsigned ldmx::SimCalorimeterHit::n_contribs_ {0}
private

The number of hit contributions.

Definition at line 392 of file SimCalorimeterHit.h.

392{0};

Referenced by addContrib(), clear(), encodeTracks(), findContribIndex(), and getNumberOfContribs().

◆ origin_contribs_

std::vector<int> ldmx::SimCalorimeterHit::origin_contribs_
private

The list of origin IDs contributing to the hit.

Definition at line 387 of file SimCalorimeterHit.h.

Referenced by addContrib(), clear(), encodeTracks(), and getContrib().

◆ path_length_

float ldmx::SimCalorimeterHit::path_length_ {-1}
private

The true path length [mm].

Can in general differ from the distance between the pre and post step position.

Definition at line 403 of file SimCalorimeterHit.h.

403{-1};

Referenced by getPathLength(), and setPathLength().

◆ pdg_code_contribs_

std::vector<int> ldmx::SimCalorimeterHit::pdg_code_contribs_
private

The list of PDG codes contributing to the hit.

Definition at line 372 of file SimCalorimeterHit.h.

Referenced by addContrib(), clear(), getContrib(), and getPdgIds().

◆ post_step_time_

float ldmx::SimCalorimeterHit::post_step_time_ {0}
private

The global time after the interaction [ns].

Definition at line 426 of file SimCalorimeterHit.h.

426{0};

Referenced by getPostStepTime(), and setPostStepTime().

◆ post_step_x_

float ldmx::SimCalorimeterHit::post_step_x_ {0}
private

The X, Y, and Z positions [mm] after the interaction in the coordinate frame of the sensitive volume.

Definition at line 420 of file SimCalorimeterHit.h.

420{0};

Referenced by getPostStepPosition(), and setPostStepPosition().

◆ post_step_y_

float ldmx::SimCalorimeterHit::post_step_y_ {0}
private

Definition at line 421 of file SimCalorimeterHit.h.

421{0};

◆ post_step_z_

float ldmx::SimCalorimeterHit::post_step_z_ {0}
private

Definition at line 422 of file SimCalorimeterHit.h.

422{0};

◆ pre_step_time_

float ldmx::SimCalorimeterHit::pre_step_time_ {0}
private

The global time before the interaction [ns].

Definition at line 415 of file SimCalorimeterHit.h.

415{0};

Referenced by getPreStepTime(), and setPreStepTime().

◆ pre_step_x_

float ldmx::SimCalorimeterHit::pre_step_x_ {0}
private

The X, Y, and Z positions [mm] before the interaction in the coordinate frame of the sensitive volume.

Definition at line 409 of file SimCalorimeterHit.h.

409{0};

Referenced by getPreStepPosition(), and setPreStepPosition().

◆ pre_step_y_

float ldmx::SimCalorimeterHit::pre_step_y_ {0}
private

Definition at line 410 of file SimCalorimeterHit.h.

410{0};

◆ pre_step_z_

float ldmx::SimCalorimeterHit::pre_step_z_ {0}
private

Definition at line 411 of file SimCalorimeterHit.h.

411{0};

◆ time_

float ldmx::SimCalorimeterHit::time_ {0}
private

The global time of the hit.

Definition at line 357 of file SimCalorimeterHit.h.

357{0};

Referenced by addContrib(), clear(), getTime(), and setTime().

◆ time_contribs_

std::vector<float> ldmx::SimCalorimeterHit::time_contribs_
private

The list of times contributing to the hit.

Definition at line 382 of file SimCalorimeterHit.h.

Referenced by addContrib(), clear(), getContrib(), getTimes(), and updateContrib().

◆ track_id_contribs_

std::vector<int> ldmx::SimCalorimeterHit::track_id_contribs_
private

The list of track IDs contributing to the hit.

Definition at line 362 of file SimCalorimeterHit.h.

Referenced by addContrib(), clear(), encodeTracks(), getContrib(), and getTrackIds().

◆ velocity_

float ldmx::SimCalorimeterHit::velocity_ {-1}
private

The track velocity [mm/ns].

Definition at line 431 of file SimCalorimeterHit.h.

431{-1};

Referenced by getVelocity(), and setVelocity().

◆ x_

float ldmx::SimCalorimeterHit::x_ {0}
private

The X position.

Definition at line 342 of file SimCalorimeterHit.h.

342{0};

Referenced by clear(), getPosition(), and setPosition().

◆ y_

float ldmx::SimCalorimeterHit::y_ {0}
private

The Y position.

Definition at line 347 of file SimCalorimeterHit.h.

347{0};

Referenced by clear(), getPosition(), and setPosition().

◆ z_

float ldmx::SimCalorimeterHit::z_ {0}
private

The Z position.

Definition at line 352 of file SimCalorimeterHit.h.

352{0};

Referenced by clear(), getPosition(), and setPosition().


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