Geant4  10.00.p02
G4INCLXXInterfaceStore Class Reference

Singleton class for configuring the INCL++ Geant4 interface. More...

#include <G4INCLXXInterfaceStore.hh>

+ Collaboration diagram for G4INCLXXInterfaceStore:

Public Member Functions

G4INCL::INCLGetINCLModel ()
 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::ConfigGetINCLConfig ()
 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...
 

Static Public Member Functions

static G4INCLXXInterfaceStoreGetInstance ()
 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
 
G4INCLXXInterfaceMessengertheINCLXXInterfaceMessenger
 
G4INCL::INCLtheINCLModel
 
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
 Create a new Config object from the current options. More...
 

Detailed Description

Singleton class for configuring the INCL++ Geant4 interface.

This class also contains a single cached instance of the INCL model (

See also
{G4INCL::INCL}).

Definition at line 62 of file G4INCLXXInterfaceStore.hh.

Constructor & Destructor Documentation

G4INCLXXInterfaceStore::G4INCLXXInterfaceStore ( )
private

Private constructor.

This class is a singleton. It must be instantiated using the GetInstance static method.

Definition at line 49 of file G4INCLXXInterfaceStore.cc.

References constructINCLXXVersionName(), and theINCLXXInterfaceMessenger.

Referenced by GetInstance().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4INCLXXInterfaceStore::~G4INCLXXInterfaceStore ( )
private

Private destructor.

This class is a singleton. Its instance must be deleted using the DeleteInstance static method.

Definition at line 62 of file G4INCLXXInterfaceStore.cc.

References theINCLModel, and theINCLXXInterfaceMessenger.

Member Function Documentation

void G4INCLXXInterfaceStore::constructINCLXXVersionName ( )

Definition at line 91 of file G4INCLXXInterfaceStore.cc.

References G4INCL_VERSION_ID, and versionName.

Referenced by G4INCLXXInterfaceStore().

+ Here is the caller graph for this function:

void G4INCLXXInterfaceStore::DeleteInstance ( )
static

Delete the singleton instance.

Definition at line 77 of file G4INCLXXInterfaceStore.cc.

References theInstance.

void G4INCLXXInterfaceStore::DeleteModel ( )
private

Delete the INCL model engine.

Definition at line 67 of file G4INCLXXInterfaceStore.cc.

References theINCLModel.

Referenced by SetMaxClusterMass().

+ Here is the caller graph for this function:

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 167 of file G4INCLXXInterfaceStore.cc.

References G4cout, and G4endl.

Referenced by G4INCLXXInterface::ApplyYourself(), SetAccurateProjectile(), SetCascadeMinEnergyPerNucleon(), and SetMaxClusterMass().

+ Here is the caller graph for this function:

void G4INCLXXInterfaceStore::EmitWarning ( const G4String message)

Emit a warning to G4cout.

The InterfaceStore will not emit more than maxWarnings warnings.

Definition at line 158 of file G4INCLXXInterfaceStore.cc.

References G4cout, G4endl, maxWarnings, and nWarnings.

Referenced by G4INCLXXInterface::AccurateProjectile(), G4INCLXXInterface::ApplyYourself(), and G4INCLXXInterface::G4INCLXXInterface().

+ Here is the caller graph for this function:

G4bool G4INCLXXInterfaceStore::GetAccurateProjectile ( ) const

Getter for accurateProjectile.

The

See also
{G4INCLXXInterfaceMessenger} class provides a UI command to set this parameter.

Definition at line 145 of file G4INCLXXInterfaceStore.cc.

References accurateProjectile.

Referenced by G4INCLXXInterface::AccurateProjectile().

+ Here is the caller graph for this function:

G4double G4INCLXXInterfaceStore::GetCascadeMinEnergyPerNucleon ( ) const

Getter for cascadeMinEnergyPerNucleon.

The

See also
{G4INCLXXInterfaceMessenger} class provides a UI command to set this parameter.

Definition at line 147 of file G4INCLXXInterfaceStore.cc.

References cascadeMinEnergyPerNucleon.

Referenced by G4INCLXXInterface::ApplyYourself().

+ Here is the caller graph for this function:

G4double G4INCLXXInterfaceStore::GetConservationTolerance ( ) const

Getter for conservationTolerance.

Definition at line 151 of file G4INCLXXInterfaceStore.cc.

References conservationTolerance.

G4INCL::Config & G4INCLXXInterfaceStore::GetINCLConfig ( )

Getter for theConfig.

Definition at line 149 of file G4INCLXXInterfaceStore.cc.

References theConfig.

G4INCL::INCL * G4INCLXXInterfaceStore::GetINCLModel ( )

Get the cached INCL model engine.

Definition at line 82 of file G4INCLXXInterfaceStore.cc.

References theConfig, and theINCLModel.

Referenced by G4INCLXXInterface::ApplyYourself().

+ Here is the caller graph for this function:

const std::string & G4INCLXXInterfaceStore::getINCLXXVersionName ( )

Definition at line 97 of file G4INCLXXInterfaceStore.cc.

References versionName.

G4INCLXXInterfaceStore * G4INCLXXInterfaceStore::GetInstance ( void  )
static

Get the singleton instance.

Definition at line 71 of file G4INCLXXInterfaceStore.cc.

References G4INCLXXInterfaceStore(), and theInstance.

Referenced by G4INCLXXInterface::ApplyYourself().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4int G4INCLXXInterfaceStore::GetMaxProjMassINCL ( ) const

Getter for theMaxProjMassINCL.

Definition at line 156 of file G4INCLXXInterfaceStore.cc.

References theMaxProjMassINCL.

Referenced by G4INCLXXInterface::AccurateProjectile(), and G4INCLXXInterface::ApplyYourself().

+ Here is the caller graph for this function:

void G4INCLXXInterfaceStore::SetAccurateProjectile ( const G4bool  b)

Setter for accurateProjectile.

Definition at line 103 of file G4INCLXXInterfaceStore.cc.

References accurateProjectile, EmitBigWarning(), and G4endl.

Referenced by G4INCLXXInterfaceMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4INCLXXInterfaceStore::SetCascadeMinEnergyPerNucleon ( const G4double  anEnergy)

Setter for cascadeMinEnergyPerNucleon.

Definition at line 181 of file G4INCLXXInterfaceStore.cc.

References cascadeMinEnergyPerNucleon, EmitBigWarning(), G4endl, and MeV.

Referenced by G4INCLXXInterfaceMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4INCLXXInterfaceStore::SetConservationTolerance ( const G4double  aTolerance)

Setter for conservationTolerance.

Definition at line 200 of file G4INCLXXInterfaceStore.cc.

References conservationTolerance.

void G4INCLXXInterfaceStore::SetMaxClusterMass ( const G4int  aMass)

Setter for the maximum cluster mass.

Definition at line 120 of file G4INCLXXInterfaceStore.cc.

References DeleteModel(), EmitBigWarning(), G4endl, G4INCL::Config::getClusterMaxMass(), G4INCL::Config::setClusterMaxMass(), and theConfig.

Referenced by G4INCLXXInterfaceMessenger::SetNewValue().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4bool G4INCLXXInterfaceStore::accurateProjectile
private

Definition at line 164 of file G4INCLXXInterfaceStore.hh.

Referenced by GetAccurateProjectile(), and SetAccurateProjectile().

G4double G4INCLXXInterfaceStore::cascadeMinEnergyPerNucleon
private
G4double G4INCLXXInterfaceStore::conservationTolerance
private
const G4int G4INCLXXInterfaceStore::maxWarnings
private

Maximum number of warnings.

Definition at line 177 of file G4INCLXXInterfaceStore.hh.

Referenced by EmitWarning().

G4int G4INCLXXInterfaceStore::nWarnings
private

Static warning counter.

Definition at line 174 of file G4INCLXXInterfaceStore.hh.

Referenced by EmitWarning().

G4INCL::Config G4INCLXXInterfaceStore::theConfig
private

Definition at line 162 of file G4INCLXXInterfaceStore.hh.

Referenced by GetINCLConfig(), GetINCLModel(), and SetMaxClusterMass().

G4INCL::INCL* G4INCLXXInterfaceStore::theINCLModel
private

Definition at line 171 of file G4INCLXXInterfaceStore.hh.

Referenced by DeleteModel(), GetINCLModel(), and ~G4INCLXXInterfaceStore().

G4INCLXXInterfaceMessenger* G4INCLXXInterfaceStore::theINCLXXInterfaceMessenger
private

Definition at line 169 of file G4INCLXXInterfaceStore.hh.

Referenced by G4INCLXXInterfaceStore(), and ~G4INCLXXInterfaceStore().

G4ThreadLocal G4INCLXXInterfaceStore * G4INCLXXInterfaceStore::theInstance = NULL
staticprivate

Create a new Config object from the current options.

Definition at line 160 of file G4INCLXXInterfaceStore.hh.

Referenced by DeleteInstance(), and GetInstance().

const G4int G4INCLXXInterfaceStore::theMaxProjMassINCL
private

Definition at line 165 of file G4INCLXXInterfaceStore.hh.

Referenced by GetMaxProjMassINCL().

std::string G4INCLXXInterfaceStore::versionName
private

Definition at line 179 of file G4INCLXXInterfaceStore.hh.

Referenced by constructINCLXXVersionName(), and getINCLXXVersionName().


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