Import Geant4 10.0.0 source tree

This commit is contained in:
Gabriele Cosmo
2016-06-10 11:51:14 +02:00
parent e2d2f9810a
commit 286caacf06
12421 changed files with 730077 additions and 502383 deletions
@@ -26,7 +26,7 @@
/// \file electromagnetic/TestEm11/src/DetectorMessenger.cc
/// \brief Implementation of the DetectorMessenger class
//
// $Id$
// $Id: DetectorMessenger.cc 77288 2013-11-22 10:52:58Z gcosmo $
//
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -46,7 +46,13 @@
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
DetectorMessenger::DetectorMessenger(DetectorConstruction * Det)
:fDetector(Det)
:G4UImessenger(),fDetector(Det),
fTestemDir(0),
fDetDir(0),
fNbAbsorCmd(0),
fAbsorCmd(0),
fNdivCmd(0),
fSizeYZCmd(0)
{
fTestemDir = new G4UIdirectory("/testem/");
fTestemDir->SetGuidance(" detector control.");
@@ -59,6 +65,7 @@ DetectorMessenger::DetectorMessenger(DetectorConstruction * Det)
fNbAbsorCmd->SetParameterName("NbAbsor",false);
fNbAbsorCmd->SetRange("NbAbsor>0");
fNbAbsorCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
fNbAbsorCmd->SetToBeBroadcasted(false);
fAbsorCmd = new G4UIcommand("/testem/det/setAbsor",this);
fAbsorCmd->SetGuidance("Set the absor nb, the material, the thickness.");
@@ -87,6 +94,7 @@ DetectorMessenger::DetectorMessenger(DetectorConstruction * Det)
fAbsorCmd->SetParameter(unitPrm);
//
fAbsorCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
fAbsorCmd->SetToBeBroadcasted(false);
fNdivCmd = new G4UIcommand("/testem/det/nDivAbsor",this);
fNdivCmd->SetGuidance("Divide the absor nb : number of divisions");
@@ -104,6 +112,7 @@ DetectorMessenger::DetectorMessenger(DetectorConstruction * Det)
fNdivCmd->SetParameter(NdivPrm);
//
fNdivCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
fNdivCmd->SetToBeBroadcasted(false);
fSizeYZCmd = new G4UIcmdWithADoubleAndUnit("/testem/det/setSizeYZ",this);
fSizeYZCmd->SetGuidance("Set sizeYZ of the absorber");
@@ -111,19 +120,8 @@ DetectorMessenger::DetectorMessenger(DetectorConstruction * Det)
fSizeYZCmd->SetRange("SizeYZ>0.");
fSizeYZCmd->SetUnitCategory("Length");
fSizeYZCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
fSizeYZCmd->SetToBeBroadcasted(false);
fMagFieldCmd = new G4UIcmdWithADoubleAndUnit("/testem/det/setField",this);
fMagFieldCmd->SetGuidance("Define magnetic field.");
fMagFieldCmd->SetGuidance("Magnetic field will be in Z direction.");
fMagFieldCmd->SetParameterName("Bz",false);
fMagFieldCmd->SetUnitCategory("Magnetic flux density");
fMagFieldCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
fUpdateCmd = new G4UIcmdWithoutParameter("/testem/det/update",this);
fUpdateCmd->SetGuidance("Update calorimeter geometry.");
fUpdateCmd->SetGuidance("This command MUST be applied before \"beamOn\" ");
fUpdateCmd->SetGuidance("if you changed geometrical value(s).");
fUpdateCmd->AvailableForStates(G4State_Idle);
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
@@ -133,9 +131,7 @@ DetectorMessenger::~DetectorMessenger()
delete fNbAbsorCmd;
delete fAbsorCmd;
delete fNdivCmd;
delete fSizeYZCmd;
delete fMagFieldCmd;
delete fUpdateCmd;
delete fSizeYZCmd;
delete fDetDir;
delete fTestemDir;
}
@@ -169,12 +165,7 @@ void DetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue)
if( command == fSizeYZCmd )
{ fDetector->SetAbsorSizeYZ(fSizeYZCmd->GetNewDoubleValue(newValue));}
if( command == fMagFieldCmd )
{ fDetector->SetMagField(fMagFieldCmd->GetNewDoubleValue(newValue));}
if( command == fUpdateCmd )
{ fDetector->UpdateGeometry();}
}
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......