Geant4 10.7.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 48 of file G4ProcessPlacer.hh.

Member Enumeration Documentation

◆ SecondOrLast

Enumerator
eSecond 
eLast 

Definition at line 71 of file G4ProcessPlacer.hh.

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

Constructor & Destructor Documentation

◆ G4ProcessPlacer()

G4ProcessPlacer::G4ProcessPlacer ( const G4String particlename)
explicit

Definition at line 40 of file G4ProcessPlacer.cc.

41 : fParticleName(particlename)
42{
43}

◆ ~G4ProcessPlacer()

G4ProcessPlacer::~G4ProcessPlacer ( )
virtual

Definition at line 45 of file G4ProcessPlacer.cc.

46{
47}

Member Function Documentation

◆ AddProcessAsLastDoIt()

void G4ProcessPlacer::AddProcessAsLastDoIt ( G4VProcess process)
virtual

Implements G4VProcessPlacer.

Definition at line 149 of file G4ProcessPlacer.cc.

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

Referenced by G4WeightCutOffConfigurator::Configure().

◆ AddProcessAsSecondDoIt()

void G4ProcessPlacer::AddProcessAsSecondDoIt ( G4VProcess process)
virtual

Implements G4VProcessPlacer.

Definition at line 142 of file G4ProcessPlacer.cc.

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

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

◆ RemoveProcess()

void G4ProcessPlacer::RemoveProcess ( G4VProcess process)
virtual

Implements G4VProcessPlacer.

Definition at line 49 of file G4ProcessPlacer.cc.

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

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


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