Public Types | Public Member Functions | Public Attributes | Friends | List of all members
TG4TrajectoryPoint Class Reference

#include <TG4Trajectory.h>

Inheritance diagram for TG4TrajectoryPoint:

Public Types

enum  G4ProcessType {
  kProcessNotDefined = 0, kProcessTransportation = 1, kProcessElectromagetic = 2, kProcessOptical = 3,
  kProcessHadronic = 4, kProcessPhotoLeptonHadron = 5, kProcessDecay = 6, kProcessGeneral = 7,
  kProcessParameterization = 8, kProcessUserDefined = 9
}
 
enum  G4ProcessSubtype {
  kSubtypeEMCoulombScattering = 1, kSubtypeEMIonization = 2, kSubtypeEMBremsstrahlung = 3, kSubtypeEMPairProdByCharged = 4,
  kSubtypeEMNuclearStopping = 8, kSubtypeEMMultipleScattering = 10, kSubtypeEMPhotoelectric = 12, kSubtypeEMComptonScattering = 13,
  kSubtypeEMGammaConversion = 14, kSubtypeHadronElastic = 111, kSubtypeHadronInelastic = 121, kSubtypeHadronCapture = 131,
  kSubtypeHadronChargeExchange = 161, kSubtypeGeneralStepLimit = 401
}
 

Public Member Functions

 TG4TrajectoryPoint ()
 
virtual ~TG4TrajectoryPoint ()
 
const TLorentzVector & GetPosition () const
 The position of this trajectory point. More...
 
const TVector3 & GetMomentum () const
 The momentum of the particle at this trajectory point. More...
 
int GetProcess () const
 
int GetSubprocess () const
 

Public Attributes

TLorentzVector Position
 The position of this trajectory point. More...
 
TVector3 Momentum
 The momentum of the particle at this trajectory point. More...
 
Int_t Process
 
Int_t Subprocess
 

Friends

class EDepSim::PersistencyManager
 

Detailed Description

A class to save a G4 trajectory point into a root output file without linking to geant. The trajectory point is saved in a TG4Trajectory as a way to record the path of a particle through the detector. This is the truth information about the particles which were tracked, but is not a good record of the energy deposition. Use the TG4HitSegment objects for a record of the energy deposition.

Definition at line 94 of file TG4Trajectory.h.

Member Enumeration Documentation

Several important process sub-types as defined by geant4. These are copied so that reading the files does not directly depend on having geant4 installed. Check the geant4 documentation for the documentation, but most of the names are fairly self explanatory. The definitions are mostly found in the geant4 include files named G4HadronicProcessType.hh and G4EmProcessSubType.hh

Enumerator
kSubtypeEMCoulombScattering 
kSubtypeEMIonization 
kSubtypeEMBremsstrahlung 
kSubtypeEMPairProdByCharged 
kSubtypeEMNuclearStopping 
kSubtypeEMMultipleScattering 
kSubtypeEMPhotoelectric 
kSubtypeEMComptonScattering 
kSubtypeEMGammaConversion 
kSubtypeHadronElastic 
kSubtypeHadronInelastic 
kSubtypeHadronCapture 
kSubtypeHadronChargeExchange 
kSubtypeGeneralStepLimit 

Definition at line 127 of file TG4Trajectory.h.

127  {
128  // EM subtypes for charged particles.
134 
135  // EM subtypes for photons
140 
141  // Hadronic subtypes
142  kSubtypeHadronElastic = 111,
144  kSubtypeHadronCapture = 131,
146 
147  // General subtypes
149  };

Process types copied from the G4 definitions so that this can be compiled without having geant4 installed. Check the exact definitions are in the geant4 documentation, but the (important) names are pretty self explanatory. The definitions can be found in the geant4 include file named G4ProcessType.hh.

Enumerator
kProcessNotDefined 
kProcessTransportation 
kProcessElectromagetic 
kProcessOptical 
kProcessHadronic 
kProcessPhotoLeptonHadron 
kProcessDecay 
kProcessGeneral 
kProcessParameterization 
kProcessUserDefined 

Definition at line 108 of file TG4Trajectory.h.

Constructor & Destructor Documentation

TG4TrajectoryPoint::TG4TrajectoryPoint ( )
inline

Definition at line 97 of file TG4Trajectory.h.

98  : Position(0,0,0,0), Momentum(0,0,0),
99  Process(0), Subprocess(0) {}
TVector3 Momentum
The momentum of the particle at this trajectory point.
TLorentzVector Position
The position of this trajectory point.
TG4TrajectoryPoint::~TG4TrajectoryPoint ( )
virtual

Definition at line 10 of file TG4Trajectory.cxx.

10 {}

Member Function Documentation

const TVector3& TG4TrajectoryPoint::GetMomentum ( ) const
inline

The momentum of the particle at this trajectory point.

Definition at line 155 of file TG4Trajectory.h.

155 {return Momentum;}
TVector3 Momentum
The momentum of the particle at this trajectory point.
const TLorentzVector& TG4TrajectoryPoint::GetPosition ( ) const
inline

The position of this trajectory point.

Definition at line 152 of file TG4Trajectory.h.

152 {return Position;}
TLorentzVector Position
The position of this trajectory point.
int TG4TrajectoryPoint::GetProcess ( ) const
inline

The interaction process type associated with this trajectory point. The possible values are defined in the G4ProcessType enum.

Definition at line 159 of file TG4Trajectory.h.

159 {return Process;}
int TG4TrajectoryPoint::GetSubprocess ( ) const
inline

The interaction process type associated with this trajectory point. The possible values are defined in the G4ProcessSubtype enum.

Definition at line 163 of file TG4Trajectory.h.

163 {return Subprocess;}

Friends And Related Function Documentation

friend class EDepSim::PersistencyManager
friend

Definition at line 95 of file TG4Trajectory.h.

Member Data Documentation

TVector3 TG4TrajectoryPoint::Momentum

The momentum of the particle at this trajectory point.

Definition at line 178 of file TG4Trajectory.h.

TLorentzVector TG4TrajectoryPoint::Position

The position of this trajectory point.

Definition at line 175 of file TG4Trajectory.h.

Int_t TG4TrajectoryPoint::Process

The interaction process type associated with this trajectory point. The possible values are defined in the G4ProcessType enum.

Definition at line 182 of file TG4Trajectory.h.

Int_t TG4TrajectoryPoint::Subprocess

The interaction process type associated with this trajectory point. The possible values are defined in the G4ProcessSubtype enum.

Definition at line 186 of file TG4Trajectory.h.


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