|
SLIC
6.1.1
Simulation for the Linear Collider (SLIC) - Geant4 simulation application
|
Container for all information from G4Track that may be persisted to MCParticle output collection. More...
#include <TrackSummary.hh>
Public Member Functions | |
| TrackSummary (const G4Track *track, G4bool toBeSaved, G4bool backScattering=false) | |
| virtual | ~TrackSummary () |
| void | buildMCParticle () |
| TrackSummary * | findParent () const |
| G4bool | getBackScattering () const |
| G4double | getCharge () const |
| G4ThreeVector | getEndPoint () const |
| G4double | getEnergy () const |
| G4int | getHepEvtStatus () const |
| G4double | getMass () const |
| MCParticleImpl * | getMCParticle () |
| G4ThreeVector | getMomentum () const |
| TrackSummary * | getParent () const |
| G4int | getParentID () const |
| G4int | getPDG () const |
| G4int | getSimulatorStatus () const |
| G4bool | getToBeSaved () const |
| G4int | getTrackID () const |
| G4double | getTrackLength () const |
| const G4ThreeVector & | getVertex () const |
| void | operator delete (void *) |
| void * | operator new (size_t) |
| void | setBackScattering () |
| void | setHasTrackerHit () |
| void | setMCParticle (MCParticleImpl *mcp) |
| void | setParentToBeSaved () |
| void | setToBeSaved () |
| void | update (const G4Track *track) |
Private Attributes | |
| G4bool | _backScattering |
| G4double | _charge |
| G4ThreeVector | _endPoint |
| G4double | _energy |
| G4double | _globalTime |
| G4bool | _hasTrackerHit |
| G4int | _hepEvtStatus |
| G4double | _mass |
| MCParticleImpl * | _mcparticle |
| G4bool | _mcParticleIsUpToDate |
| G4ThreeVector | _momentum |
| G4ThreeVector | _momentumAtEndpoint |
| TrackSummary * | _parent |
| G4int | _parentTrackID |
| G4int | _PDG |
| std::bitset< 32 > | _simstatus |
| G4bool | _toBeSaved |
| G4int | _trackID |
| G4double | _trackLength |
| G4ThreeVector | _vertex |
Static Private Attributes | |
| static TrackManager * | m_trackManager = TrackManager::instance() |
Container for all information from G4Track that may be persisted to MCParticle output collection.
Definition at line 33 of file TrackSummary.hh.
| TrackSummary | ( | const G4Track * | track, |
| G4bool | toBeSaved, | ||
| G4bool | backScattering = false |
||
| ) |
Class constructor.
Definition at line 25 of file TrackSummary.cc.
References TrackSummary::_charge, TrackSummary::_energy, TrackSummary::_globalTime, TrackSummary::_mass, TrackSummary::_momentum, TrackSummary::_parentTrackID, TrackSummary::_PDG, and TrackSummary::_trackID.
|
inlinevirtual |
Class destructor.
Definition at line 45 of file TrackSummary.hh.
| void buildMCParticle | ( | ) |
Build the MCParticle for this TrackSummary.
Definition at line 184 of file TrackSummary.cc.
References TrackSummary::_globalTime, TrackSummary::_mass, TrackSummary::_mcparticle, TrackSummary::_mcParticleIsUpToDate, TrackSummary::_momentumAtEndpoint, TrackSummary::_simstatus, TrackSummary::getCharge(), TrackSummary::getEndPoint(), TrackSummary::getHepEvtStatus(), TrackSummary::getMomentum(), TrackSummary::getPDG(), TrackSummary::getSimulatorStatus(), and TrackSummary::getVertex().
Referenced by TrackManager::saveTrackSummaries(), and TrackSummary::setParentToBeSaved().
| TrackSummary * findParent | ( | ) | const |
Find the parent particle.
Definition at line 174 of file TrackSummary.cc.
References TrackSummary::_parentTrackID, TrackManager::findTrackSummary(), and TrackSummary::m_trackManager.
Referenced by TrackManager::findFirstSavedAncestor(), TrackSummary::setParentToBeSaved(), and TrackSummary::update().
|
inline |
Return the back scatter status of this particle.
Definition at line 188 of file TrackSummary.hh.
References TrackSummary::_backScattering.
Referenced by TrackingAction::PreUserTrackingAction(), and TrackSummary::update().
|
inline |
Get the charge.
Definition at line 68 of file TrackSummary.hh.
References TrackSummary::_charge.
Referenced by TrackSummary::buildMCParticle().
|
inline |
Get the endpoint of the particle.
Definition at line 76 of file TrackSummary.hh.
References TrackSummary::_endPoint.
Referenced by TrackSummary::buildMCParticle(), and TrackSummary::update().
|
inline |
Get the total energy including momentum and mass.
Definition at line 84 of file TrackSummary.hh.
References TrackSummary::_mass, and TrackSummary::_momentum.
|
inline |
Get the HEPEVT or "generator" status of this particle, which is zero if this particle was generated in the simulation as a secondary.
Definition at line 101 of file TrackSummary.hh.
References TrackSummary::_hepEvtStatus.
Referenced by TrackSummary::buildMCParticle().
|
inline |
Get the mass in GeV.
Definition at line 92 of file TrackSummary.hh.
References TrackSummary::_mass.
|
inline |
Get the MCParticle of this particle.
Definition at line 208 of file TrackSummary.hh.
References TrackSummary::_mcparticle.
Referenced by TrackManager::findFirstSavedAncestor(), TrackManager::saveTrackSummaries(), and TrackSummary::setParentToBeSaved().
|
inline |
Get the momentum (px, py, pz).
Definition at line 117 of file TrackSummary.hh.
References TrackSummary::_momentum.
Referenced by TrackSummary::buildMCParticle().
|
inline |
Get the parent particle.
Definition at line 125 of file TrackSummary.hh.
References TrackSummary::_parent.
|
inline |
Get the parent particle's track ID.
Definition at line 157 of file TrackSummary.hh.
References TrackSummary::_parentTrackID.
Referenced by TrackSummary::setParentToBeSaved().
|
inline |
Get the PDG ID.
Definition at line 133 of file TrackSummary.hh.
References TrackSummary::_PDG.
Referenced by TrackSummary::buildMCParticle().
|
inline |
Get the simulator status, which is zero if this is a generator particle.
Definition at line 109 of file TrackSummary.hh.
References TrackSummary::_simstatus.
Referenced by TrackSummary::buildMCParticle().
|
inline |
Return true if this particle will be saved to the output collection.
Definition at line 173 of file TrackSummary.hh.
References TrackSummary::_toBeSaved.
Referenced by TrackManager::findFirstSavedAncestor(), and TrackManager::saveTrackSummaries().
|
inline |
Get the track ID.
Definition at line 149 of file TrackSummary.hh.
References TrackSummary::_trackID.
Referenced by TrackManager::findFirstSavedAncestor(), TrackManager::registerTrackSummary(), TrackManager::saveTrackSummaries(), and TrackSummary::setParentToBeSaved().
|
inline |
Get the track length in mm.
Definition at line 165 of file TrackSummary.hh.
References TrackSummary::_trackLength.
|
inline |
Get the vertex (x, y, z) in mm.
Definition at line 141 of file TrackSummary.hh.
References TrackSummary::_vertex.
Referenced by TrackSummary::buildMCParticle(), and TrackSummary::update().
|
inline |
Delete operator.
Definition at line 278 of file TrackSummary.hh.
References slic::TrackSummaryAllocator.
|
inline |
New operator.
Definition at line 272 of file TrackSummary.hh.
References slic::TrackSummaryAllocator.
|
inline |
Set back scatter status to true.
Definition at line 195 of file TrackSummary.hh.
References TrackSummary::_backScattering.
Referenced by SteppingAction::UserSteppingAction().
|
inline |
Set hasTrackerHit status to true.
Definition at line 223 of file TrackSummary.hh.
References TrackSummary::_hasTrackerHit.
Referenced by UserTrackInformation::setHasTrackerHit().
|
inline |
Set the MCParticle.
| [in] | mcp | The MCParticle. |
Definition at line 216 of file TrackSummary.hh.
References TrackSummary::_mcparticle.
| void setParentToBeSaved | ( | ) |
Set toBeSaved flag on this particle's parent.
Definition at line 132 of file TrackSummary.cc.
References TrackSummary::_mcparticle, TrackSummary::_mcParticleIsUpToDate, TrackSummary::_toBeSaved, TrackSummary::buildMCParticle(), TrackSummary::findParent(), TrackSummary::getMCParticle(), TrackSummary::getParentID(), TrackSummary::getTrackID(), and TrackSummary::setParentToBeSaved().
Referenced by TrackSummary::setParentToBeSaved().
|
inline |
Set that this particle will be saved.
Definition at line 180 of file TrackSummary.hh.
References TrackSummary::_toBeSaved.
| void update | ( | const G4Track * | track | ) |
Update this object from a G4Track.
| [in] | track | The G4Track with update information. |
Definition at line 44 of file TrackSummary.cc.
References TrackSummary::_endPoint, TrackSummary::_hepEvtStatus, TrackSummary::_momentumAtEndpoint, TrackSummary::_parentTrackID, TrackSummary::_simstatus, TrackSummary::_trackLength, TrackSummary::_vertex, TrackSummary::findParent(), TrackSummary::getBackScattering(), TrackSummary::getEndPoint(), TrackUtil::getRegionInformation(), and TrackSummary::getVertex().
Referenced by TrackingAction::PostUserTrackingAction(), and SteppingAction::UserSteppingAction().
|
private |
Definition at line 257 of file TrackSummary.hh.
Referenced by TrackSummary::getBackScattering(), and TrackSummary::setBackScattering().
|
private |
Definition at line 242 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary(), and TrackSummary::getCharge().
|
private |
Definition at line 243 of file TrackSummary.hh.
Referenced by TrackSummary::getEndPoint(), and TrackSummary::update().
|
private |
Definition at line 244 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary().
|
private |
Definition at line 253 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary(), and TrackSummary::buildMCParticle().
|
private |
Definition at line 265 of file TrackSummary.hh.
Referenced by TrackSummary::setHasTrackerHit().
|
private |
Definition at line 246 of file TrackSummary.hh.
Referenced by TrackSummary::getHepEvtStatus(), and TrackSummary::update().
|
private |
Definition at line 245 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary(), TrackSummary::buildMCParticle(), TrackSummary::getEnergy(), and TrackSummary::getMass().
|
private |
Definition at line 262 of file TrackSummary.hh.
Referenced by TrackSummary::buildMCParticle(), TrackSummary::getMCParticle(), TrackSummary::setMCParticle(), and TrackSummary::setParentToBeSaved().
|
private |
Definition at line 263 of file TrackSummary.hh.
Referenced by TrackSummary::buildMCParticle(), and TrackSummary::setParentToBeSaved().
|
private |
Definition at line 248 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary(), TrackSummary::getEnergy(), and TrackSummary::getMomentum().
|
private |
Definition at line 249 of file TrackSummary.hh.
Referenced by TrackSummary::buildMCParticle(), and TrackSummary::update().
|
private |
Definition at line 250 of file TrackSummary.hh.
Referenced by TrackSummary::getParent().
|
private |
Definition at line 259 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary(), TrackSummary::findParent(), TrackSummary::getParentID(), and TrackSummary::update().
|
private |
Definition at line 251 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary(), and TrackSummary::getPDG().
|
private |
Definition at line 247 of file TrackSummary.hh.
Referenced by TrackSummary::buildMCParticle(), TrackSummary::getSimulatorStatus(), and TrackSummary::update().
|
private |
Definition at line 255 of file TrackSummary.hh.
Referenced by TrackSummary::getToBeSaved(), TrackSummary::setParentToBeSaved(), and TrackSummary::setToBeSaved().
|
private |
Definition at line 258 of file TrackSummary.hh.
Referenced by TrackSummary::TrackSummary(), and TrackSummary::getTrackID().
|
private |
Definition at line 260 of file TrackSummary.hh.
Referenced by TrackSummary::getTrackLength(), and TrackSummary::update().
|
private |
Definition at line 252 of file TrackSummary.hh.
Referenced by TrackSummary::getVertex(), and TrackSummary::update().
|
staticprivate |
Definition at line 267 of file TrackSummary.hh.
Referenced by TrackSummary::findParent().