G4INCLXXInterfaceMessenger Class Reference

#include <G4INCLXXInterfaceMessenger.hh>

Inheritance diagram for G4INCLXXInterfaceMessenger:

G4UImessenger

Public Member Functions

 G4INCLXXInterfaceMessenger (G4INCLXXInterfaceStore *anInterfaceStore)
 ~G4INCLXXInterfaceMessenger ()
void SetNewValue (G4UIcommand *command, G4String newValues)

Detailed Description

Definition at line 56 of file G4INCLXXInterfaceMessenger.hh.


Constructor & Destructor Documentation

G4INCLXXInterfaceMessenger::G4INCLXXInterfaceMessenger ( G4INCLXXInterfaceStore anInterfaceStore  ) 

Definition at line 49 of file G4INCLXXInterfaceMessenger.cc.

References G4UIcmdWithAnInteger::SetDefaultValue(), G4UIcmdWithAString::SetDefaultValue(), G4UIcommand::SetGuidance(), G4UIcmdWithAnInteger::SetParameterName(), G4UIcmdWithAString::SetParameterName(), and G4UIcommand::SetRange().

00049                                                                                                :
00050   theINCLXXInterfaceStore(anInterfaceStore)
00051 {
00052   // Create a directory for the INCL++ commands
00053   theINCLXXDirectory = new G4UIdirectory(theUIDirectory);
00054   theINCLXXDirectory->SetGuidance("Parameters for the INCL++ model");
00055 
00056   // This command controls whether nucleus-nucleus reactions should accurately
00057   // describe the projectile or the target nucleus (default: projectile)
00058   accurateNucleusCmd = new G4UIcmdWithAString((theUIDirectory + "accurateNucleus").data(),this);
00059   accurateNucleusCmd->SetGuidance("Set which nucleus will be accurately described in nucleus-nucleus reactions.");
00060   accurateNucleusCmd->SetGuidance(" projectile: accurate description of projectile-related quantities");
00061   accurateNucleusCmd->SetGuidance(" target: accurate description of target-related quantities");
00062   accurateNucleusCmd->SetGuidance(" Default: projectile");
00063   accurateNucleusCmd->SetParameterName("AccurateNucleus",true);
00064   accurateNucleusCmd->SetDefaultValue("projectile");
00065 
00066   // This command selects the maximum mass number of clusters to be produced in
00067   // the INCL++ cascade
00068   maxClusterMassCmd = new G4UIcmdWithAnInteger((theUIDirectory + "maxClusterMass").data(),this);
00069   maxClusterMassCmd->SetGuidance("Set the maximum cluster mass.");
00070   maxClusterMassCmd->SetGuidance(" The INCL++ cascade stage will produce clusters with mass up to the value of this parameter (included)");
00071   maxClusterMassCmd->SetGuidance(" Allowed range: [2,12]");
00072   maxClusterMassCmd->SetParameterName("MaxClusterMass",true);
00073   maxClusterMassCmd->SetDefaultValue(8);
00074   maxClusterMassCmd->SetRange("MaxClusterMass>=2 && MaxClusterMass<=12");
00075 
00076 }

G4INCLXXInterfaceMessenger::~G4INCLXXInterfaceMessenger (  ) 

Definition at line 78 of file G4INCLXXInterfaceMessenger.cc.

00078                                                         {
00079   delete theINCLXXDirectory;
00080   delete accurateNucleusCmd;
00081   delete maxClusterMassCmd;
00082 }


Member Function Documentation

void G4INCLXXInterfaceMessenger::SetNewValue ( G4UIcommand command,
G4String  newValues 
) [virtual]

Reimplemented from G4UImessenger.

Definition at line 84 of file G4INCLXXInterfaceMessenger.cc.

References G4UIcmdWithAnInteger::GetNewIntValue(), G4INCLXXInterfaceStore::SetAccurateProjectile(), G4INCLXXInterfaceStore::SetMaxClusterMass(), and G4String::toLower().

00084                                                                                      {
00085   if(command==accurateNucleusCmd) {
00086     newValues.toLower();
00087     if(newValues=="projectile") {
00088       theINCLXXInterfaceStore->SetAccurateProjectile(true);
00089     } else if(newValues=="target") {
00090       theINCLXXInterfaceStore->SetAccurateProjectile(false);
00091     }
00092   } else if(command==maxClusterMassCmd) {
00093     const G4int parameter = maxClusterMassCmd->GetNewIntValue(newValues);
00094     theINCLXXInterfaceStore->SetMaxClusterMass(parameter);
00095   }
00096 }


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:52:15 2013 for Geant4 by  doxygen 1.4.7