30#include "G4UnitsTable.hh"
32#include "G4UIcmdWithADoubleAndUnit.hh"
33#include "G4UIcmdWith3VectorAndUnit.hh"
34#include "G4RunManager.hh"
45 fpAbortEventIfELossUpperThan(
61 }
else if (command ==
fpSizeUI.get()) {
69 const G4Track *track = aStep->GetTrack();
70 G4ThreeVector pos = aStep->GetPostStepPoint()->GetPosition();
74 ((
G4Track *) track)->SetTrackStatus(fStopAndKill);
77 if (track->GetTrackID() != 1) {
80 G4double kineticE = aStep->GetPostStepPoint()->GetKineticEnergy();
81 G4double eLoss = aStep->GetPreStepPoint()->GetKineticEnergy()
88 G4RunManager::GetRunManager()->AbortEvent();
91 ((
G4Track *) track)->SetTrackStatus(fStopAndKill);
Definition of the scavenger::PrimaryKiller class.
void SetNewValue(G4UIcommand *command, G4String newValue) override
Method related to G4UImessenger used to control energy cuts through macro file.
PrimaryKiller(const G4String &name, const G4int &depth=0)
G4bool ProcessHits(G4Step *, G4TouchableHistory *) override
std::unique_ptr< G4UIcmdWithADoubleAndUnit > fpELossUI
void Initialize(G4HCofThisEvent *) override
G4ThreeVector fPhantomSize
std::unique_ptr< G4UIcmdWithADoubleAndUnit > fpAbortEventIfELossUpperThan
std::unique_ptr< G4UIcmdWith3VectorAndUnit > fpSizeUI