Geant4  10.02.p03
G4DecayPhysics Class Reference

#include <G4DecayPhysics.hh>

Inheritance diagram for G4DecayPhysics:
Collaboration diagram for G4DecayPhysics:

Public Member Functions

 G4DecayPhysics (G4int ver=1)
 
 G4DecayPhysics (const G4String &name, G4int ver=1)
 
virtual ~G4DecayPhysics ()
 
virtual void ConstructParticle ()
 
virtual void ConstructProcess ()
 
virtual G4DecayGetDecayProcess ()
 
- Public Member Functions inherited from G4VPhysicsConstructor
 G4VPhysicsConstructor (const G4String &="")
 
 G4VPhysicsConstructor (const G4String &name, G4int physics_type)
 
virtual ~G4VPhysicsConstructor ()
 
void SetPhysicsName (const G4String &="")
 
const G4StringGetPhysicsName () const
 
void SetPhysicsType (G4int)
 
G4int GetPhysicsType () const
 
void SetVerboseLevel (G4int value)
 
G4int GetVerboseLevel () const
 
G4int GetInstanceID () const
 

Private Attributes

G4int verbose
 

Static Private Attributes

static G4ThreadLocal G4DecayfDecayProcess = 0
 
static G4ThreadLocal G4bool wasActivated = false
 

Additional Inherited Members

- Static Public Member Functions inherited from G4VPhysicsConstructor
static const G4VPCManagerGetSubInstanceManager ()
 
- Protected Member Functions inherited from G4VPhysicsConstructor
G4bool RegisterProcess (G4VProcess *process, G4ParticleDefinition *particle)
 
G4ParticleTable::G4PTblDicIteratorGetParticleIterator () const
 
- Protected Attributes inherited from G4VPhysicsConstructor
G4int verboseLevel
 
G4String namePhysics
 
G4int typePhysics
 
G4ParticleTabletheParticleTable
 
G4int g4vpcInstanceID
 
- Static Protected Attributes inherited from G4VPhysicsConstructor
static G4RUN_DLL G4VPCManager subInstanceManager
 

Detailed Description

Definition at line 49 of file G4DecayPhysics.hh.

Constructor & Destructor Documentation

◆ G4DecayPhysics() [1/2]

G4DecayPhysics::G4DecayPhysics ( G4int  ver = 1)

Definition at line 63 of file G4DecayPhysics.cc.

64  : G4VPhysicsConstructor("Decay"), verbose(ver)
65 {
66 }
G4VPhysicsConstructor(const G4String &="")

◆ G4DecayPhysics() [2/2]

G4DecayPhysics::G4DecayPhysics ( const G4String name,
G4int  ver = 1 
)

Definition at line 68 of file G4DecayPhysics.cc.

69  : G4VPhysicsConstructor(name), verbose(ver)
70 {
71 }
G4VPhysicsConstructor(const G4String &="")

◆ ~G4DecayPhysics()

G4DecayPhysics::~G4DecayPhysics ( )
virtual

Definition at line 73 of file G4DecayPhysics.cc.

74 {
75 }

Member Function Documentation

◆ ConstructParticle()

void G4DecayPhysics::ConstructParticle ( void  )
virtual

Implements G4VPhysicsConstructor.

Definition at line 77 of file G4DecayPhysics.cc.

78 {
79 
80 // G4cout << "G4DecayPhysics::ConstructParticle" << G4endl;
81  G4BosonConstructor pBosonConstructor;
82  pBosonConstructor.ConstructParticle();
83 
84  G4LeptonConstructor pLeptonConstructor;
85  pLeptonConstructor.ConstructParticle();
86 
87  G4MesonConstructor pMesonConstructor;
88  pMesonConstructor.ConstructParticle();
89 
90  G4BaryonConstructor pBaryonConstructor;
91  pBaryonConstructor.ConstructParticle();
92 
93  G4IonConstructor pIonConstructor;
94  pIonConstructor.ConstructParticle();
95 
96  G4ShortLivedConstructor pShortLivedConstructor;
97  pShortLivedConstructor.ConstructParticle();
98 }
static void ConstructParticle()
static void ConstructParticle()
static void ConstructParticle()
static void ConstructParticle()
static void ConstructParticle()
Here is the call graph for this function:

◆ ConstructProcess()

void G4DecayPhysics::ConstructProcess ( void  )
virtual

Implements G4VPhysicsConstructor.

Definition at line 100 of file G4DecayPhysics.cc.

101 {
102  if(wasActivated) { return; }
103  wasActivated = true;
104 
106 
107  // Add Decay Process
108  fDecayProcess = new G4Decay();
109  auto myParticleIterator=GetParticleIterator();
110  myParticleIterator->reset();
111  G4ParticleDefinition* particle=0;
112 
113  while( (*myParticleIterator)() )
114  {
115  particle = myParticleIterator->value();
116  if( fDecayProcess->IsApplicable(*particle) )
117  {
118  if(verbose > 1) {
119  G4cout << "### Decays for " << particle->GetParticleName() << G4endl;
120  }
121  ph->RegisterProcess(fDecayProcess, particle);
122  }
123  }
124 }
virtual G4bool IsApplicable(const G4ParticleDefinition &)
Definition: G4Decay.cc:89
const G4String & GetParticleName() const
static G4ThreadLocal G4Decay * fDecayProcess
G4GLOB_DLL std::ostream G4cout
G4bool RegisterProcess(G4VProcess *process, G4ParticleDefinition *particle)
static G4ThreadLocal G4bool wasActivated
static G4PhysicsListHelper * GetPhysicsListHelper()
#define G4endl
Definition: G4ios.hh:61
G4ParticleTable::G4PTblDicIterator * GetParticleIterator() const
Here is the call graph for this function:

◆ GetDecayProcess()

virtual G4Decay* G4DecayPhysics::GetDecayProcess ( )
inlinevirtual

Definition at line 66 of file G4DecayPhysics.hh.

66 { return fDecayProcess; }
static G4ThreadLocal G4Decay * fDecayProcess

Member Data Documentation

◆ fDecayProcess

G4ThreadLocal G4Decay * G4DecayPhysics::fDecayProcess = 0
staticprivate

Definition at line 69 of file G4DecayPhysics.hh.

◆ verbose

G4int G4DecayPhysics::verbose
private

Definition at line 70 of file G4DecayPhysics.hh.

◆ wasActivated

G4ThreadLocal G4bool G4DecayPhysics::wasActivated = false
staticprivate

Definition at line 71 of file G4DecayPhysics.hh.


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