Import Geant4 10.5.0 source tree
This commit is contained in:
@@ -27,7 +27,6 @@
|
||||
/// \brief Implementation of the DetectorMessenger class
|
||||
//
|
||||
//
|
||||
// $Id: DetectorMessenger.cc 98241 2016-07-04 16:56:59Z gcosmo $
|
||||
//
|
||||
//
|
||||
|
||||
@@ -48,7 +47,6 @@
|
||||
DetectorMessenger::DetectorMessenger( DetectorConstruction* Det)
|
||||
: G4UImessenger(),
|
||||
fDetector(Det),
|
||||
fN03Dir(0),
|
||||
fDetDir(0),
|
||||
fAbsMaterCmd(0),
|
||||
fGapMaterCmd(0),
|
||||
@@ -57,45 +55,42 @@ DetectorMessenger::DetectorMessenger( DetectorConstruction* Det)
|
||||
fSizeYZCmd(0),
|
||||
fNbLayersCmd(0)
|
||||
{
|
||||
fN03Dir = new G4UIdirectory("/N03/");
|
||||
fN03Dir->SetGuidance("UI commands of this example");
|
||||
|
||||
G4bool broadcast = false;
|
||||
fDetDir = new G4UIdirectory("/N03/det/",broadcast);
|
||||
fDetDir->SetGuidance("detector control");
|
||||
fDetDir = new G4UIdirectory("/det/",broadcast);
|
||||
fDetDir->SetGuidance("Detector control");
|
||||
|
||||
fAbsMaterCmd = new G4UIcmdWithAString("/N03/det/setAbsMat",this);
|
||||
fAbsMaterCmd = new G4UIcmdWithAString("/det/setAbsMat",this);
|
||||
fAbsMaterCmd->SetGuidance("Select Material of the Absorber.");
|
||||
fAbsMaterCmd->SetParameterName("choice",false);
|
||||
fAbsMaterCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
|
||||
|
||||
fGapMaterCmd = new G4UIcmdWithAString("/N03/det/setGapMat",this);
|
||||
fGapMaterCmd = new G4UIcmdWithAString("/det/setGapMat",this);
|
||||
fGapMaterCmd->SetGuidance("Select Material of the Gap.");
|
||||
fGapMaterCmd->SetParameterName("choice",false);
|
||||
fGapMaterCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
|
||||
|
||||
fAbsThickCmd = new G4UIcmdWithADoubleAndUnit("/N03/det/setAbsThick",this);
|
||||
fAbsThickCmd = new G4UIcmdWithADoubleAndUnit("/det/setAbsThick",this);
|
||||
fAbsThickCmd->SetGuidance("Set Thickness of the Absorber");
|
||||
fAbsThickCmd->SetParameterName("Size",false);
|
||||
fAbsThickCmd->SetRange("Size>=0.");
|
||||
fAbsThickCmd->SetUnitCategory("Length");
|
||||
fAbsThickCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
|
||||
|
||||
fGapThickCmd = new G4UIcmdWithADoubleAndUnit("/N03/det/setGapThick",this);
|
||||
fGapThickCmd = new G4UIcmdWithADoubleAndUnit("/det/setGapThick",this);
|
||||
fGapThickCmd->SetGuidance("Set Thickness of the Gap");
|
||||
fGapThickCmd->SetParameterName("Size",false);
|
||||
fGapThickCmd->SetRange("Size>=0.");
|
||||
fGapThickCmd->SetUnitCategory("Length");
|
||||
fGapThickCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
|
||||
|
||||
fSizeYZCmd = new G4UIcmdWithADoubleAndUnit("/N03/det/setSizeYZ",this);
|
||||
fSizeYZCmd = new G4UIcmdWithADoubleAndUnit("/det/setSizeYZ",this);
|
||||
fSizeYZCmd->SetGuidance("Set tranverse size of the calorimeter");
|
||||
fSizeYZCmd->SetParameterName("Size",false);
|
||||
fSizeYZCmd->SetRange("Size>0.");
|
||||
fSizeYZCmd->SetUnitCategory("Length");
|
||||
fSizeYZCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
|
||||
|
||||
fNbLayersCmd = new G4UIcmdWithAnInteger("/N03/det/setNbOfLayers",this);
|
||||
fNbLayersCmd = new G4UIcmdWithAnInteger("/det/setNbOfLayers",this);
|
||||
fNbLayersCmd->SetGuidance("Set number of layers.");
|
||||
fNbLayersCmd->SetParameterName("NbLayers",false);
|
||||
fNbLayersCmd->SetRange("NbLayers>0 && NbLayers<500");
|
||||
@@ -112,31 +107,31 @@ DetectorMessenger::~DetectorMessenger()
|
||||
delete fAbsThickCmd; delete fGapThickCmd;
|
||||
delete fSizeYZCmd;
|
||||
delete fDetDir;
|
||||
delete fN03Dir;
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
void DetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue)
|
||||
{
|
||||
if( command == fAbsMaterCmd )
|
||||
{ fDetector->SetAbsorberMaterial(newValue);}
|
||||
|
||||
if( command == fGapMaterCmd )
|
||||
{ fDetector->SetGapMaterial(newValue);}
|
||||
|
||||
if( command == fAbsThickCmd )
|
||||
{ fDetector->SetAbsorberThickness(fAbsThickCmd
|
||||
->GetNewDoubleValue(newValue));}
|
||||
|
||||
if( command == fGapThickCmd )
|
||||
{ fDetector->SetGapThickness(fGapThickCmd->GetNewDoubleValue(newValue));}
|
||||
|
||||
if( command == fSizeYZCmd )
|
||||
{ fDetector->SetCalorSizeYZ(fSizeYZCmd->GetNewDoubleValue(newValue));}
|
||||
|
||||
if( command == fNbLayersCmd )
|
||||
{ fDetector->SetNbOfLayers(fNbLayersCmd->GetNewIntValue(newValue));}
|
||||
if( command == fAbsMaterCmd ) {
|
||||
fDetector->SetAbsorberMaterial(newValue);
|
||||
}
|
||||
else if( command == fGapMaterCmd ) {
|
||||
fDetector->SetGapMaterial(newValue);
|
||||
}
|
||||
else if( command == fAbsThickCmd ) {
|
||||
fDetector
|
||||
->SetAbsorberThickness(fAbsThickCmd->GetNewDoubleValue(newValue));
|
||||
}
|
||||
else if( command == fGapThickCmd ) {
|
||||
fDetector->SetGapThickness(fGapThickCmd->GetNewDoubleValue(newValue));
|
||||
}
|
||||
else if( command == fSizeYZCmd ) {
|
||||
fDetector->SetCalorSizeYZ(fSizeYZCmd->GetNewDoubleValue(newValue));
|
||||
}
|
||||
else if( command == fNbLayersCmd ) {
|
||||
fDetector->SetNbOfLayers(fNbLayersCmd->GetNewIntValue(newValue));
|
||||
}
|
||||
}
|
||||
|
||||
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
||||
|
||||
Reference in New Issue
Block a user