34 #define INCLXX_IN_GEANT4_MODE 1
51 accurateProjectile(true),
52 theMaxProjMassINCL(18),
53 cascadeMinEnergyPerNucleon(1.*
MeV),
54 conservationTolerance(5*
MeV),
95 const size_t lastDash = versionID.find_last_of(
"-");
96 versionName =
"INCL++ " + versionID.substr(0,lastDash);
108 std::stringstream ss;
109 ss <<
"Switching from "
110 << (
accurateProjectile ?
"\"accurate projectile\" mode to \"accurate target\"" :
"\"accurate target\" mode to \"accurate projectile\"")
113 <<
"Do this ONLY if you fully understand what it does!";
124 if(theMaxClusterMass!=aMass) {
126 std::stringstream ss;
127 ss <<
"Changing maximum cluster mass from "
133 <<
"Do this ONLY if you fully understand what this setting does!";
167 G4cout <<
"[INCL++] INCL++ has already emitted " <<
maxWarnings <<
" warnings and will emit no more." <<
G4endl;
175 <<
"================================================================================"
177 <<
" INCL++ WARNING "
181 <<
"================================================================================"
189 std::stringstream ss;
190 ss <<
"Changing minimim cascade energy from "
196 <<
"Do this ONLY if you fully understand what this setting does!";
G4INCL::INCL * theINCLModel
const G4int maxWarnings
Maximum number of warnings.
The INCL configuration object.
void SetConservationTolerance(const G4double aTolerance)
Setter for conservationTolerance.
G4double cascadeMinEnergyPerNucleon
G4int GetMaxProjMassINCL() const
Getter for theMaxProjMassINCL.
G4double GetCascadeMinEnergyPerNucleon() const
Getter for cascadeMinEnergyPerNucleon.
#define G4INCL_VERSION_ID
void DeleteModel()
Delete the INCL model engine.
const std::string & getINCLXXVersionName()
G4int getClusterMaxMass() const
Get the maximum mass for production of clusters.
void EmitBigWarning(const G4String &message) const
Emit a BIG warning to G4cout.
void SetAccurateProjectile(const G4bool b)
Setter for accurateProjectile.
static G4INCLXXInterfaceStore * GetInstance()
Get the singleton instance.
Singleton class for configuring the INCL++ Geant4 interface.
G4GLOB_DLL std::ostream G4cout
G4INCL::INCL * GetINCLModel()
Get the cached INCL model engine.
G4INCLXXVInterfaceTally * theTally
void SetCascadeMinEnergyPerNucleon(const G4double anEnergy)
Setter for cascadeMinEnergyPerNucleon.
G4INCLXXInterfaceStore()
Private constructor.
void SetTally(G4INCLXXVInterfaceTally *const aTally)
Setter for the interface tally.
G4double conservationTolerance
G4int nWarnings
Static warning counter.
const G4int theMaxProjMassINCL
Messenger class for the Geant4 INCL++ interface.
G4bool GetAccurateProjectile() const
Getter for accurateProjectile.
G4double GetConservationTolerance() const
Getter for conservationTolerance.
void constructINCLXXVersionName()
void setClusterMaxMass(const G4int m)
Set the maximum mass for production of clusters.
void EmitWarning(const G4String &message)
Emit a warning to G4cout.
G4INCLXXInterfaceMessenger * theINCLXXInterfaceMessenger
void SetMaxClusterMass(const G4int aMass)
Setter for the maximum cluster mass.
static G4ThreadLocal G4INCLXXInterfaceStore * theInstance
Create a new Config object from the current options.
G4INCL::Config & GetINCLConfig()
Getter for theConfig.
G4INCLXXVInterfaceTally * GetTally() const
Getter for the interface tally.
static void DeleteInstance()
Delete the singleton instance.
~G4INCLXXInterfaceStore()
Private destructor.
G4bool accurateProjectile