Geant4
10.02.p02
|
Singleton class for configuring the INCL++ Geant4 interface. More...
#include <G4INCLXXInterfaceStore.hh>
Public Member Functions | |
G4INCL::INCL * | GetINCLModel () |
Get the cached INCL model engine. More... | |
void | constructINCLXXVersionName () |
const std::string & | getINCLXXVersionName () |
void | SetAccurateProjectile (const G4bool b) |
Setter for accurateProjectile. More... | |
void | SetMaxClusterMass (const G4int aMass) |
Setter for the maximum cluster mass. More... | |
void | SetCascadeMinEnergyPerNucleon (const G4double anEnergy) |
Setter for cascadeMinEnergyPerNucleon. More... | |
void | SetConservationTolerance (const G4double aTolerance) |
Setter for conservationTolerance. More... | |
G4bool | GetAccurateProjectile () const |
Getter for accurateProjectile. More... | |
G4double | GetCascadeMinEnergyPerNucleon () const |
Getter for cascadeMinEnergyPerNucleon. More... | |
G4INCL::Config & | GetINCLConfig () |
Getter for theConfig. More... | |
G4int | GetMaxProjMassINCL () const |
Getter for theMaxProjMassINCL. More... | |
G4double | GetConservationTolerance () const |
Getter for conservationTolerance. More... | |
void | EmitWarning (const G4String &message) |
Emit a warning to G4cout. More... | |
void | EmitBigWarning (const G4String &message) const |
Emit a BIG warning to G4cout. More... | |
G4INCLXXVInterfaceTally * | GetTally () const |
Getter for the interface tally. More... | |
void | SetTally (G4INCLXXVInterfaceTally *const aTally) |
Setter for the interface tally. More... | |
void | SetINCLPhysics (const G4String &option) |
Set the INCL physics. More... | |
void | UseAblaDeExcitation () |
Set ABLA V3 to be the de-excitation model to be used with INCL++. More... | |
Static Public Member Functions | |
static G4INCLXXInterfaceStore * | GetInstance () |
Get the singleton instance. More... | |
static void | DeleteInstance () |
Delete the singleton instance. More... | |
Private Member Functions | |
G4INCLXXInterfaceStore () | |
Private constructor. More... | |
~G4INCLXXInterfaceStore () | |
Private destructor. More... | |
void | DeleteModel () |
Delete the INCL model engine. More... | |
Private Attributes | |
G4INCL::Config | theConfig |
G4bool | accurateProjectile |
const G4int | theMaxProjMassINCL |
G4double | cascadeMinEnergyPerNucleon |
G4double | conservationTolerance |
G4INCLXXInterfaceMessenger * | theINCLXXInterfaceMessenger |
G4INCL::INCL * | theINCLModel |
G4INCLXXVInterfaceTally * | theTally |
G4int | nWarnings |
Static warning counter. More... | |
const G4int | maxWarnings |
Maximum number of warnings. More... | |
std::string | versionName |
Static Private Attributes | |
static G4ThreadLocal G4INCLXXInterfaceStore * | theInstance = NULL |
Singleton class for configuring the INCL++ Geant4 interface.
This class also contains a single cached instance of the INCL model (
Definition at line 64 of file G4INCLXXInterfaceStore.hh.
|
private |
Private constructor.
This class is a singleton. It must be instantiated using the GetInstance static method.
Definition at line 58 of file G4INCLXXInterfaceStore.cc.
References constructINCLXXVersionName(), and theINCLXXInterfaceMessenger.
Referenced by GetInstance().
|
private |
Private destructor.
This class is a singleton. Its instance must be deleted using the DeleteInstance static method.
Definition at line 72 of file G4INCLXXInterfaceStore.cc.
References theINCLModel, and theINCLXXInterfaceMessenger.
void G4INCLXXInterfaceStore::constructINCLXXVersionName | ( | ) |
Definition at line 101 of file G4INCLXXInterfaceStore.cc.
References G4INCL_VERSION_ID, and versionName.
Referenced by G4INCLXXInterfaceStore().
|
static |
Delete the singleton instance.
Definition at line 87 of file G4INCLXXInterfaceStore.cc.
References theInstance.
|
private |
Delete the INCL model engine.
Definition at line 77 of file G4INCLXXInterfaceStore.cc.
References theINCLModel.
Referenced by GetINCLConfig(), and SetMaxClusterMass().
void G4INCLXXInterfaceStore::EmitBigWarning | ( | const G4String & | message | ) | const |
Emit a BIG warning to G4cout.
There is no limit on the number of BIG warnings emitted.
Definition at line 180 of file G4INCLXXInterfaceStore.cc.
References G4cout, and G4endl.
Referenced by G4INCLXXInterface::AccurateProjectile(), G4INCLXXInterface::ApplyYourself(), G4INCLXXInterface::G4INCLXXInterface(), SetAccurateProjectile(), SetCascadeMinEnergyPerNucleon(), SetINCLPhysics(), and SetMaxClusterMass().
void G4INCLXXInterfaceStore::EmitWarning | ( | const G4String & | message | ) |
Emit a warning to G4cout.
The InterfaceStore will not emit more than maxWarnings warnings.
Definition at line 171 of file G4INCLXXInterfaceStore.cc.
References G4cout, G4endl, maxWarnings, and nWarnings.
Referenced by G4INCLXXInterface::ApplyYourself(), and G4INCLXXInterface::G4INCLXXInterface().
G4bool G4INCLXXInterfaceStore::GetAccurateProjectile | ( | ) | const |
Getter for accurateProjectile.
The
Definition at line 155 of file G4INCLXXInterfaceStore.cc.
References accurateProjectile.
Referenced by G4INCLXXInterface::AccurateProjectile().
G4double G4INCLXXInterfaceStore::GetCascadeMinEnergyPerNucleon | ( | ) | const |
Getter for cascadeMinEnergyPerNucleon.
The
Definition at line 157 of file G4INCLXXInterfaceStore.cc.
References cascadeMinEnergyPerNucleon.
Referenced by G4INCLXXInterface::ApplyYourself().
G4double G4INCLXXInterfaceStore::GetConservationTolerance | ( | ) | const |
Getter for conservationTolerance.
Definition at line 164 of file G4INCLXXInterfaceStore.cc.
References conservationTolerance.
G4INCL::Config & G4INCLXXInterfaceStore::GetINCLConfig | ( | ) |
Getter for theConfig.
Definition at line 159 of file G4INCLXXInterfaceStore.cc.
References DeleteModel(), and theConfig.
G4INCL::INCL * G4INCLXXInterfaceStore::GetINCLModel | ( | ) |
Get the cached INCL model engine.
Definition at line 92 of file G4INCLXXInterfaceStore.cc.
References theConfig, and theINCLModel.
Referenced by G4INCLXXInterface::ApplyYourself().
const std::string & G4INCLXXInterfaceStore::getINCLXXVersionName | ( | ) |
Definition at line 107 of file G4INCLXXInterfaceStore.cc.
References versionName.
Referenced by UseAblaDeExcitation().
|
static |
Get the singleton instance.
Definition at line 81 of file G4INCLXXInterfaceStore.cc.
References G4INCLXXInterfaceStore(), and theInstance.
Referenced by G4INCLXXInterface::ApplyYourself(), and UseAblaDeExcitation().
G4int G4INCLXXInterfaceStore::GetMaxProjMassINCL | ( | ) | const |
Getter for theMaxProjMassINCL.
Definition at line 169 of file G4INCLXXInterfaceStore.cc.
References theMaxProjMassINCL.
Referenced by G4INCLXXInterface::AccurateProjectile(), and G4INCLXXInterface::ApplyYourself().
G4INCLXXVInterfaceTally * G4INCLXXInterfaceStore::GetTally | ( | ) | const |
Getter for the interface tally.
Definition at line 217 of file G4INCLXXInterfaceStore.cc.
References theTally.
Referenced by G4INCLXXInterface::ApplyYourself().
void G4INCLXXInterfaceStore::SetAccurateProjectile | ( | const G4bool | b | ) |
Setter for accurateProjectile.
Definition at line 113 of file G4INCLXXInterfaceStore.cc.
References accurateProjectile, EmitBigWarning(), and G4endl.
Referenced by G4INCLXXInterfaceMessenger::SetNewValue().
void G4INCLXXInterfaceStore::SetCascadeMinEnergyPerNucleon | ( | const G4double | anEnergy | ) |
Setter for cascadeMinEnergyPerNucleon.
Definition at line 194 of file G4INCLXXInterfaceStore.cc.
References cascadeMinEnergyPerNucleon, EmitBigWarning(), G4endl, and MeV.
Referenced by G4INCLXXInterfaceMessenger::SetNewValue().
void G4INCLXXInterfaceStore::SetConservationTolerance | ( | const G4double | aTolerance | ) |
Setter for conservationTolerance.
Definition at line 213 of file G4INCLXXInterfaceStore.cc.
References conservationTolerance.
void G4INCLXXInterfaceStore::SetINCLPhysics | ( | const G4String & | option | ) |
Set the INCL physics.
Definition at line 221 of file G4INCLXXInterfaceStore.cc.
References G4INCL::ConstantPotential, EmitBigWarning(), FatalErrorInArgument, G4Exception(), G4INCL::INCL46CrossSections, G4INCL::Config::init(), G4INCL::NeverLocalEnergy, G4INCL::NoClusterAlgorithm, G4INCL::NoCoulomb, G4INCL::Config::setBackToSpectator(), G4INCL::Config::setClusterAlgorithm(), G4INCL::Config::setCoulombType(), G4INCL::Config::setCrossSectionsType(), G4INCL::Config::setLocalEnergyBBType(), G4INCL::Config::setLocalEnergyPiType(), G4INCL::Config::setPionPotential(), G4INCL::Config::setPotentialType(), and theConfig.
Referenced by G4INCLXXInterfaceMessenger::SetNewValue().
void G4INCLXXInterfaceStore::SetMaxClusterMass | ( | const G4int | aMass | ) |
Setter for the maximum cluster mass.
Definition at line 130 of file G4INCLXXInterfaceStore.cc.
References DeleteModel(), EmitBigWarning(), G4endl, G4INCL::Config::getClusterMaxMass(), G4INCL::Config::setClusterMaxMass(), and theConfig.
Referenced by G4INCLXXInterfaceMessenger::SetNewValue().
void G4INCLXXInterfaceStore::SetTally | ( | G4INCLXXVInterfaceTally *const | aTally | ) |
Setter for the interface tally.
Definition at line 219 of file G4INCLXXInterfaceStore.cc.
References theTally.
void G4INCLXXInterfaceStore::UseAblaDeExcitation | ( | ) |
Set ABLA V3 to be the de-excitation model to be used with INCL++.
Definition at line 246 of file G4INCLXXInterfaceStore.cc.
References G4HadronicInteractionRegistry::FindAllModels(), G4HadronicInteractionRegistry::FindModel(), G4cout, G4endl, getINCLXXVersionName(), GetInstance(), G4HadronicInteractionRegistry::Instance(), and G4VIntraNuclearTransportModel::SetDeExcitation().
Referenced by G4INCLXXInterfaceMessenger::SetNewValue().
|
private |
Definition at line 176 of file G4INCLXXInterfaceStore.hh.
Referenced by GetAccurateProjectile(), and SetAccurateProjectile().
|
private |
Definition at line 178 of file G4INCLXXInterfaceStore.hh.
Referenced by GetCascadeMinEnergyPerNucleon(), and SetCascadeMinEnergyPerNucleon().
|
private |
Definition at line 179 of file G4INCLXXInterfaceStore.hh.
Referenced by GetConservationTolerance(), and SetConservationTolerance().
|
private |
Maximum number of warnings.
Definition at line 191 of file G4INCLXXInterfaceStore.hh.
Referenced by EmitWarning().
|
private |
Static warning counter.
Definition at line 188 of file G4INCLXXInterfaceStore.hh.
Referenced by EmitWarning().
|
private |
Definition at line 174 of file G4INCLXXInterfaceStore.hh.
Referenced by GetINCLConfig(), GetINCLModel(), SetINCLPhysics(), and SetMaxClusterMass().
|
private |
Definition at line 183 of file G4INCLXXInterfaceStore.hh.
Referenced by DeleteModel(), GetINCLModel(), and ~G4INCLXXInterfaceStore().
|
private |
Definition at line 181 of file G4INCLXXInterfaceStore.hh.
Referenced by G4INCLXXInterfaceStore(), and ~G4INCLXXInterfaceStore().
|
staticprivate |
Definition at line 172 of file G4INCLXXInterfaceStore.hh.
Referenced by DeleteInstance(), and GetInstance().
|
private |
Definition at line 177 of file G4INCLXXInterfaceStore.hh.
Referenced by GetMaxProjMassINCL().
|
private |
Definition at line 185 of file G4INCLXXInterfaceStore.hh.
Referenced by GetTally(), and SetTally().
|
private |
Definition at line 193 of file G4INCLXXInterfaceStore.hh.
Referenced by constructINCLXXVersionName(), and getINCLXXVersionName().