9#ifndef EXTENERGYLOSS_H_
10#define EXTENERGYLOSS_H_
13#include <G4VContinuousProcess.hh>
15class G4ParticleDefinition;
25 namespace Simulation {
27 class EnergyLossForExtrapolator;
37 ExtEnergyLoss(
const G4String& processName =
"ExtEnergyLoss", G4ProcessType aType = fElectromagnetic);
49 G4VParticleChange*
AlongStepDoIt(
const G4Track&,
const G4Step&);
71 return ((aParticle.GetPDGCharge() != 0) && (aParticle.GetParticleName().compare(0, 4,
"g4e_") == 0));
Define physics process to calculate energy loss without fluctuations.
G4double GetContinuousStepLimit(const G4Track &, G4double, G4double, G4double &)
Gets step limit for the particle being swum.
G4bool IsApplicable(const G4ParticleDefinition &)
Reports if this process is applicable to the particle being swum.
EnergyLossForExtrapolator * m_energyLossForExtrapolator
Pointer to the geant4e-specific energy-loss and mult-scat class.
G4double GetStepLimit()
Gets the step limit for this process.
G4double m_StepLimit
Step limit for this process (fraction of KE that could be lost in one step)
G4VParticleChange * AlongStepDoIt(const G4Track &, const G4Step &)
Apply energy loss process along the step.
void SetStepLimit(G4double)
Sets the step limit for this process.
virtual ~ExtEnergyLoss()
destructor
Abstract base class for different kinds of events.