Geant4-11
Public Member Functions | Protected Attributes | Private Attributes
G4StackChecker Class Reference

#include <G4StackChecker.hh>

Inheritance diagram for G4StackChecker:
G4UserStackingAction

Public Member Functions

virtual G4ClassificationOfNewTrack ClassifyNewTrack (const G4Track *track)
 
 G4StackChecker ()
 
virtual void NewStage ()
 
virtual void PrepareNewEvent ()
 
void SetStackManager (G4StackManager *value)
 
virtual ~G4StackChecker ()
 

Protected Attributes

G4StackManagerstackManager = nullptr
 

Private Attributes

G4ThreeVector nullDirection
 

Detailed Description

Definition at line 43 of file G4StackChecker.hh.

Constructor & Destructor Documentation

◆ G4StackChecker()

G4StackChecker::G4StackChecker ( )

Definition at line 36 of file G4StackChecker.cc.

37 : nullDirection(G4ThreeVector(0.0,0.0,0.0))
38{}
CLHEP::Hep3Vector G4ThreeVector
G4ThreeVector nullDirection

◆ ~G4StackChecker()

G4StackChecker::~G4StackChecker ( )
virtual

Definition at line 40 of file G4StackChecker.cc.

41{}

Member Function Documentation

◆ ClassifyNewTrack()

G4ClassificationOfNewTrack G4StackChecker::ClassifyNewTrack ( const G4Track track)
virtual

Reimplemented from G4UserStackingAction.

Definition at line 44 of file G4StackChecker.cc.

45{
47 G4double e = track->GetKineticEnergy();
48 if ( (!(e < 0.0) && !(e > 0.0) && !(e == 0.0))
50 {
51 result = fKill;
52 G4String nam = track->GetDefinition()->GetParticleName();
53 G4cout << "### G4StackChecker: event# "
54 << (G4EventManager::GetEventManager())->GetConstCurrentEvent()->GetEventID()
55 << " unacceptable " << nam << " is killed in the stack" << G4endl;
56 G4cout << "### " << nam << " have been produced by the process "
57 << track->GetCreatorProcess()->GetProcessName()
58 << " trackID= " << track->GetTrackID()
59 << " parentID= " << track->GetParentID()
60 << G4endl;
61 G4cout << "### E= " << track->GetKineticEnergy()
62 << " position= " << track->GetPosition()
63 << " direction= " << track->GetMomentumDirection()
64 << " time= " << track->GetGlobalTime()
65 << G4endl;
66 }
67 return result;
68}
double G4double
Definition: G4Types.hh:83
#define G4endl
Definition: G4ios.hh:57
G4GLOB_DLL std::ostream G4cout
static G4EventManager * GetEventManager()
const G4String & GetParticleName() const
G4int GetTrackID() const
const G4VProcess * GetCreatorProcess() const
const G4ThreeVector & GetPosition() const
G4double GetGlobalTime() const
G4ParticleDefinition * GetDefinition() const
const G4ThreeVector & GetMomentumDirection() const
G4double GetKineticEnergy() const
G4int GetParentID() const
const G4String & GetProcessName() const
Definition: G4VProcess.hh:382

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(), G4Track::GetTrackID(), and nullDirection.

◆ NewStage()

void G4StackChecker::NewStage ( )
virtual

Reimplemented from G4UserStackingAction.

Definition at line 70 of file G4StackChecker.cc.

71{}

◆ PrepareNewEvent()

void G4StackChecker::PrepareNewEvent ( )
virtual

Reimplemented from G4UserStackingAction.

Definition at line 73 of file G4StackChecker.cc.

74{}

◆ SetStackManager()

void G4UserStackingAction::SetStackManager ( G4StackManager value)
inlineinherited

Definition at line 51 of file G4UserStackingAction.hh.

51{ stackManager=value; }
G4StackManager * stackManager

References G4UserStackingAction::stackManager.

Referenced by G4StackManager::SetUserStackingAction().

Field Documentation

◆ nullDirection

G4ThreeVector G4StackChecker::nullDirection
private

Definition at line 57 of file G4StackChecker.hh.

Referenced by ClassifyNewTrack().

◆ stackManager

G4StackManager* G4UserStackingAction::stackManager = nullptr
protectedinherited

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