#include <G4StackChecker.hh>
Inheritance diagram for G4StackChecker:
Public Member Functions | |
G4StackChecker () | |
virtual | ~G4StackChecker () |
virtual G4ClassificationOfNewTrack | ClassifyNewTrack (const G4Track *track) |
virtual void | NewStage () |
virtual void | PrepareNewEvent () |
Definition at line 44 of file G4StackChecker.hh.
G4StackChecker::G4StackChecker | ( | ) |
Definition at line 36 of file G4StackChecker.cc.
00036 : 00037 nullDirection(G4ThreeVector(0.0,0.0,0.0)) 00038 {}
G4StackChecker::~G4StackChecker | ( | ) | [virtual] |
G4ClassificationOfNewTrack G4StackChecker::ClassifyNewTrack | ( | const G4Track * | track | ) | [virtual] |
Reimplemented from G4UserStackingAction.
Definition at line 44 of file G4StackChecker.cc.
References fKill, fUrgent, G4cout, G4endl, G4Track::GetCreatorProcess(), G4Track::GetDefinition(), G4EventManager::GetEventManager(), G4Track::GetGlobalTime(), G4Track::GetKineticEnergy(), G4Track::GetMomentumDirection(), G4Track::GetParentID(), G4ParticleDefinition::GetParticleName(), G4Track::GetPosition(), G4VProcess::GetProcessName(), and G4Track::GetTrackID().
00045 { 00046 G4ClassificationOfNewTrack result = fUrgent; 00047 G4double e = track->GetKineticEnergy(); 00048 if ( (!(e < 0.0) && !(e > 0.0) && !(e == 0.0)) || 00049 track->GetMomentumDirection() == nullDirection) 00050 { 00051 result = fKill; 00052 G4String nam = track->GetDefinition()->GetParticleName(); 00053 G4cout << "### G4StackChecker: event# " 00054 << (G4EventManager::GetEventManager())->GetConstCurrentEvent()->GetEventID() 00055 << " unacceptable " << nam << " is killed in the stack" << G4endl; 00056 G4cout << "### " << nam << " have been produced by the process " 00057 << track->GetCreatorProcess()->GetProcessName() 00058 << " trackID= " << track->GetTrackID() 00059 << " parentID= " << track->GetParentID() 00060 << G4endl; 00061 G4cout << "### E= " << track->GetKineticEnergy() 00062 << " position= " << track->GetPosition() 00063 << " direction= " << track->GetMomentumDirection() 00064 << " time= " << track->GetGlobalTime() 00065 << G4endl; 00066 } 00067 return result; 00068 }
virtual void G4StackChecker::NewStage | ( | ) | [inline, virtual] |
virtual void G4StackChecker::PrepareNewEvent | ( | ) | [inline, virtual] |