Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4ProcessPlacer Class Reference

#include <G4ProcessPlacer.hh>

+ Inheritance diagram for G4ProcessPlacer:

Public Types

enum  SecondOrLast { eSecond = 1 , eLast = 0 }
 

Public Member Functions

 G4ProcessPlacer (const G4String &particlename)
 
virtual ~G4ProcessPlacer ()
 
virtual void AddProcessAsLastDoIt (G4VProcess *process)
 
virtual void AddProcessAsSecondDoIt (G4VProcess *process)
 
virtual void RemoveProcess (G4VProcess *process)
 
- Public Member Functions inherited from G4VProcessPlacer
 G4VProcessPlacer ()
 
virtual ~G4VProcessPlacer ()
 
virtual void AddProcessAsLastDoIt (G4VProcess *process)=0
 
virtual void AddProcessAsSecondDoIt (G4VProcess *process)=0
 
virtual void RemoveProcess (G4VProcess *process)=0
 

Detailed Description

Definition at line 49 of file G4ProcessPlacer.hh.

Member Enumeration Documentation

◆ SecondOrLast

Enumerator
eSecond 
eLast 

Definition at line 72 of file G4ProcessPlacer.hh.

73 {
74 eSecond = 1,
75 eLast = 0
76 };

Constructor & Destructor Documentation

◆ G4ProcessPlacer()

G4ProcessPlacer::G4ProcessPlacer ( const G4String particlename)
explicit

Definition at line 41 of file G4ProcessPlacer.cc.

42 : fParticleName(particlename)
43{
44}

◆ ~G4ProcessPlacer()

G4ProcessPlacer::~G4ProcessPlacer ( )
virtual

Definition at line 46 of file G4ProcessPlacer.cc.

47{
48}

Member Function Documentation

◆ AddProcessAsLastDoIt()

void G4ProcessPlacer::AddProcessAsLastDoIt ( G4VProcess process)
virtual

Implements G4VProcessPlacer.

Definition at line 150 of file G4ProcessPlacer.cc.

151{
152 G4cout << "=== G4ProcessPlacer::AddProcessAsLastDoIt: for: "
153 << fParticleName << G4endl;
154 AddProcessAs(process, eLast);
155}
#define G4endl
Definition: G4ios.hh:52
G4DLLIMPORT std::ostream G4cout

Referenced by G4WeightCutOffConfigurator::Configure().

◆ AddProcessAsSecondDoIt()

void G4ProcessPlacer::AddProcessAsSecondDoIt ( G4VProcess process)
virtual

Implements G4VProcessPlacer.

Definition at line 143 of file G4ProcessPlacer.cc.

144{
145 G4cout << "=== G4ProcessPlacer::AddProcessAsSecondDoIt: for: "
146 << fParticleName << G4endl;
147 AddProcessAs(process, eSecond);
148}

Referenced by G4ImportanceConfigurator::Configure(), and G4WeightWindowConfigurator::Configure().

◆ RemoveProcess()

void G4ProcessPlacer::RemoveProcess ( G4VProcess process)
virtual

Implements G4VProcessPlacer.

Definition at line 50 of file G4ProcessPlacer.cc.

51{
52 G4cout << "=== G4ProcessPlacer::RemoveProcess: for: " << fParticleName
53 << G4endl;
54 G4cout << " ProcessName: " << process->GetProcessName()
55 << ", will be removed!" << G4endl;
56
57 G4cout << " The initial AlongStep Vectors: " << G4endl;
58 PrintAlongStepGPILVec();
59 PrintAlongStepDoItVec();
60
61 G4cout << " The initial PostStep Vectors: " << G4endl;
62 PrintPostStepGPILVec();
63 PrintPostStepDoItVec();
64
65 GetProcessManager()->RemoveProcess(process);
66
67 G4cout << " The final AlongStep Vectors: " << G4endl;
68 PrintAlongStepGPILVec();
69 PrintAlongStepDoItVec();
70
71 G4cout << " The final PostStep Vectors: " << G4endl;
72 PrintPostStepGPILVec();
73 PrintPostStepDoItVec();
74
75 G4cout << "================================================" << G4endl;
76
77}
G4VProcess * RemoveProcess(G4VProcess *aProcess)
const G4String & GetProcessName() const
Definition: G4VProcess.hh:379

Referenced by G4ImportanceConfigurator::~G4ImportanceConfigurator(), G4WeightCutOffConfigurator::~G4WeightCutOffConfigurator(), and G4WeightWindowConfigurator::~G4WeightWindowConfigurator().


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