00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033 #define INCLXX_IN_GEANT4_MODE 1
00034
00035 #include "globals.hh"
00036
00044 #include "G4INCLXXInterfaceMessenger.hh"
00045
00046 G4INCLXXInterfaceStore *G4INCLXXInterfaceStore::theInstance = NULL;
00047
00048 G4INCLXXInterfaceStore::G4INCLXXInterfaceStore() :
00049 dumpInput(false),
00050 accurateProjectile(true),
00051 theMaxClusterMassDefault(8),
00052 theMaxClusterMass(theMaxClusterMassDefault),
00053 theMaxProjMassINCL(18),
00054 theINCLModel(NULL),
00055 nWarnings(0),
00056 maxWarnings(50)
00057 {
00058 theINCLXXInterfaceMessenger = new G4INCLXXInterfaceMessenger(this);
00059 }
00060
00061 G4INCLXXInterfaceStore::~G4INCLXXInterfaceStore() {
00062 delete theINCLXXInterfaceMessenger;
00063 delete theINCLModel;
00064 }
00065
00066 void G4INCLXXInterfaceStore::EmitWarning(const G4String &message) {
00067 if(++nWarnings<=maxWarnings) {
00068 G4cout << "[INCL++] Warning: " << message << G4endl;
00069 if(nWarnings==maxWarnings) {
00070 G4cout << "[INCL++] INCL++ has already emitted " << maxWarnings << " warnings and will emit no more." << G4endl;
00071 }
00072 }
00073 }
00074
00075 void G4INCLXXInterfaceStore::EmitBigWarning(const G4String &message) const {
00076 G4cout
00077 << G4endl
00078 << "================================================================================"
00079 << G4endl
00080 << " INCL++ WARNING "
00081 << G4endl
00082 << message
00083 << G4endl
00084 << "================================================================================"
00085 << G4endl
00086 << G4endl;
00087 }
00088