Public Member Functions | Private Attributes | List of all members
EDepSim::PhysicsListMessenger Class Reference

#include <EDepSimPhysicsListMessenger.hh>

Inheritance diagram for EDepSim::PhysicsListMessenger:

Public Member Functions

 PhysicsListMessenger (EDepSim::PhysicsList *)
 
virtual ~PhysicsListMessenger ()
 
virtual void SetNewValue (G4UIcommand *, G4String)
 

Private Attributes

EDepSim::PhysicsListfPhysicsList
 
G4UIdirectory * fDirectory
 
G4UIdirectory * fDecayDirectory
 
G4UIcmdWithADoubleAndUnit * fGammaCutCMD
 
G4UIcmdWithADoubleAndUnit * fElectCutCMD
 
G4UIcmdWithADoubleAndUnit * fPosCutCMD
 
G4UIcmdWithADoubleAndUnit * fAllCutCMD
 
G4UIcmdWithABool * fIonizationModelCMD
 

Detailed Description

Definition at line 17 of file EDepSimPhysicsListMessenger.hh.

Constructor & Destructor Documentation

EDepSim::PhysicsListMessenger::PhysicsListMessenger ( EDepSim::PhysicsList pPhys)

Definition at line 16 of file EDepSimPhysicsListMessenger.cc.

17 : fPhysicsList(pPhys) {
18  fDirectory = new G4UIdirectory("/edep/phys/");
19  fDirectory->SetGuidance("Control the physics lists");
20 
21  fGammaCutCMD = new G4UIcmdWithADoubleAndUnit("/edep/phys/gammaCut",this);
22  fGammaCutCMD->SetGuidance("Set gamma cut");
23  fGammaCutCMD->SetParameterName("Gcut",false);
24  fGammaCutCMD->SetUnitCategory("Length");
25  fGammaCutCMD->SetRange("Gcut>0.0");
26  fGammaCutCMD->SetDefaultUnit("mm");
27  fGammaCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
28 
29  fElectCutCMD = new G4UIcmdWithADoubleAndUnit("/edep/phys/electronCut",
30  this);
31  fElectCutCMD->SetGuidance("Set electron cut");
32  fElectCutCMD->SetParameterName("Ecut",false);
33  fElectCutCMD->SetUnitCategory("Length");
34  fElectCutCMD->SetRange("Ecut>0.0");
35  fElectCutCMD->SetDefaultUnit("mm");
36  fElectCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
37 
38  fPosCutCMD = new G4UIcmdWithADoubleAndUnit("/edep/phys/positronCut",
39  this);
40  fPosCutCMD->SetGuidance("Set positron cut");
41  fPosCutCMD->SetParameterName("Pcut",false);
42  fPosCutCMD->SetUnitCategory("Length");
43  fPosCutCMD->SetRange("Pcut>0.0");
44  fPosCutCMD->SetDefaultUnit("mm");
45  fPosCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
46 
47  fAllCutCMD = new G4UIcmdWithADoubleAndUnit("/edep/phys/allCuts",this);
48  fAllCutCMD->SetGuidance("Set cut for all");
49  fAllCutCMD->SetParameterName("cut",false);
50  fAllCutCMD->SetUnitCategory("Length");
51  fAllCutCMD->SetRange("cut>0.0");
52  fAllCutCMD->SetDefaultUnit("mm");
53  fAllCutCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
54 
55  fIonizationModelCMD = new G4UIcmdWithABool("/edep/phys/ionizationModel",
56  this);
57  fIonizationModelCMD->SetGuidance("Set ionization model in the LAr");
58  fIonizationModelCMD->SetParameterName("fraction",false);
59  fIonizationModelCMD->AvailableForStates(G4State_PreInit,G4State_Idle);
60 }
G4UIcmdWithADoubleAndUnit * fGammaCutCMD
G4UIcmdWithADoubleAndUnit * fElectCutCMD
G4UIcmdWithADoubleAndUnit * fAllCutCMD
G4UIcmdWithADoubleAndUnit * fPosCutCMD
EDepSim::PhysicsListMessenger::~PhysicsListMessenger ( )
virtual

Definition at line 62 of file EDepSimPhysicsListMessenger.cc.

62  {
63  delete fGammaCutCMD;
64  delete fElectCutCMD;
65  delete fPosCutCMD;
66  delete fAllCutCMD;
67  delete fIonizationModelCMD;
68 }
G4UIcmdWithADoubleAndUnit * fGammaCutCMD
G4UIcmdWithADoubleAndUnit * fElectCutCMD
G4UIcmdWithADoubleAndUnit * fAllCutCMD
G4UIcmdWithADoubleAndUnit * fPosCutCMD

Member Function Documentation

void EDepSim::PhysicsListMessenger::SetNewValue ( G4UIcommand *  command,
G4String  newValue 
)
virtual

Definition at line 70 of file EDepSimPhysicsListMessenger.cc.

71  {
72  if (command == fGammaCutCMD) {
74  ->GetNewDoubleValue(newValue));
75  }
76  else if (command == fElectCutCMD) {
78  ->GetNewDoubleValue(newValue));
79  }
80  else if (command == fPosCutCMD) {
82  ->GetNewDoubleValue(newValue));
83  }
84  else if (command == fAllCutCMD) {
85  G4double cut = fAllCutCMD->GetNewDoubleValue(newValue);
89  }
90  else if (command == fIonizationModelCMD) {
91  G4double cut = fIonizationModelCMD->GetNewBoolValue(newValue);
93  }
94 }
G4UIcmdWithADoubleAndUnit * fGammaCutCMD
void SetCutForGamma(G4double)
Set the range cut for photons.
int command
G4UIcmdWithADoubleAndUnit * fElectCutCMD
void SetCutForPositron(G4double)
Set the range cut for positrons.
void SetCutForElectron(G4double)
Set the range cut for electrons.
G4UIcmdWithADoubleAndUnit * fAllCutCMD
G4UIcmdWithADoubleAndUnit * fPosCutCMD

Member Data Documentation

G4UIcmdWithADoubleAndUnit* EDepSim::PhysicsListMessenger::fAllCutCMD
private

Definition at line 36 of file EDepSimPhysicsListMessenger.hh.

G4UIdirectory* EDepSim::PhysicsListMessenger::fDecayDirectory
private

Definition at line 31 of file EDepSimPhysicsListMessenger.hh.

G4UIdirectory* EDepSim::PhysicsListMessenger::fDirectory
private

Definition at line 30 of file EDepSimPhysicsListMessenger.hh.

G4UIcmdWithADoubleAndUnit* EDepSim::PhysicsListMessenger::fElectCutCMD
private

Definition at line 34 of file EDepSimPhysicsListMessenger.hh.

G4UIcmdWithADoubleAndUnit* EDepSim::PhysicsListMessenger::fGammaCutCMD
private

Definition at line 33 of file EDepSimPhysicsListMessenger.hh.

G4UIcmdWithABool* EDepSim::PhysicsListMessenger::fIonizationModelCMD
private

Definition at line 37 of file EDepSimPhysicsListMessenger.hh.

EDepSim::PhysicsList* EDepSim::PhysicsListMessenger::fPhysicsList
private

Definition at line 28 of file EDepSimPhysicsListMessenger.hh.

G4UIcmdWithADoubleAndUnit* EDepSim::PhysicsListMessenger::fPosCutCMD
private

Definition at line 35 of file EDepSimPhysicsListMessenger.hh.


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