Geant4 10.7.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4EmMessenger Class Reference

#include <G4EmMessenger.hh>

+ Inheritance diagram for G4EmMessenger:

Public Member Functions

 G4EmMessenger (G4EmExtraPhysics *af)
 
virtual ~G4EmMessenger ()
 
void SetNewValue (G4UIcommand *aComm, G4String aS)
 
- Public Member Functions inherited from G4UImessenger
 G4UImessenger ()
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
virtual G4String GetCurrentValue (G4UIcommand *command)
 
virtual void SetNewValue (G4UIcommand *command, G4String newValue)
 
G4bool operator== (const G4UImessenger &messenger) const
 
G4bool operator!= (const G4UImessenger &messenger) const
 
G4bool CommandsShouldBeInMaster () const
 

Additional Inherited Members

- Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
 
G4String DtoS (G4double a)
 
G4String BtoS (G4bool b)
 
G4int StoI (G4String s)
 
G4long StoL (G4String s)
 
G4double StoD (G4String s)
 
G4bool StoB (G4String s)
 
void AddUIcommand (G4UIcommand *newCommand)
 
void CreateDirectory (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
template<typename T >
T * CreateCommand (const G4String &cname, const G4String &dsc)
 
- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir = nullptr
 
G4String baseDirName = ""
 
G4bool commandsShouldBeInMaster = false
 

Detailed Description

Definition at line 55 of file G4EmMessenger.hh.

Constructor & Destructor Documentation

◆ G4EmMessenger()

G4EmMessenger::G4EmMessenger ( G4EmExtraPhysics af)

Definition at line 51 of file G4EmMessenger.cc.

52{
53 theB = ab;
54 aDir1 = new G4UIdirectory("/physics_lists/");
55 aDir1->SetGuidance("commands related to the physics simulation engine.");
56
57 // general stuff.
58 aDir2 = new G4UIdirectory("/physics_lists/em/");
59 aDir2->SetGuidance("tailoring the processes");
60
61 // command for synchrotron radiation.
62 theSynch = new G4UIcmdWithABool("/physics_lists/em/SyncRadiation",this);
63 theSynch->SetGuidance("Switching on/off synchrotron radiation.");
65
66 // command for synchrotron radiation.
67 theSynchAll = new G4UIcmdWithABool("/physics_lists/em/SyncRadiationAll",this);
68 theSynchAll->SetGuidance("Switching on/off synchrotron radiation for all charged.");
70
71 // command for gamma nuclear physics.
72 theGN = new G4UIcmdWithABool("/physics_lists/em/GammaNuclear",this);
73 theGN->SetGuidance("Switching on gamma nuclear physics.");
75
76 // command for gamma nuclear physics.
77 theXS = new G4UIcmdWithABool("/physics_lists/em/UseGammaNuclearXS",this);
78 theXS->SetGuidance("Use XS gamma nuclear cross section.");
80
81 // command for lend gamma nuclear physics.
82 theGLENDN = new G4UIcmdWithABool("/physics_lists/em/LENDGammaNuclear",this);
83 theGLENDN->SetGuidance("Switching on LEND gamma nuclear physics.");
85
86 theEN = new G4UIcmdWithABool("/physics_lists/em/ElectroNuclear",this);
87 theEN->SetGuidance("Switching on e+- nuclear physics.");
89
90 // command for muon nuclear physics.
91 theMUN = new G4UIcmdWithABool("/physics_lists/em/MuonNuclear",this);
92 theMUN->SetGuidance("Switching on muon nuclear physics.");
94
95 theGMM = new G4UIcmdWithABool("/physics_lists/em/GammaToMuons",this);
96 theGMM->SetGuidance("Switching on gamma conversion to muon pair.");
98
99 thePMM = new G4UIcmdWithABool("/physics_lists/em/PositronToMuons",this);
100 thePMM->SetGuidance("Switching on positron conversion to muon pair.");
102
103 thePH = new G4UIcmdWithABool("/physics_lists/em/PositronToHadrons",this);
104 thePH->SetGuidance("Switching on positron conversion to hadrons.");
106
107 theNu = new G4UIcmdWithABool("/physics_lists/em/NeutrinoActivation",this);
108 theNu->SetGuidance("Activation of neutrino processes");
110
111 theNuETX = new G4UIcmdWithABool("/physics_lists/em/NuETotXscActivation",this);
112 theNuETX->SetGuidance("Activation of neutrino processes");
114
115 theGMM1 = new G4UIcmdWithADouble("/physics_lists/em/GammaToMuonsFactor",this);
116 theGMM1->SetGuidance("Factor for gamma conversion to muon pair.");
118
119 thePMM1 = new G4UIcmdWithADouble("/physics_lists/em/PositronToMuonsFactor",this);
120 thePMM1->SetGuidance("Factor for positron conversion to muon pair.");
122
123 thePH1 = new G4UIcmdWithADouble("/physics_lists/em/PositronToHadronsFactor",this);
124 thePH1->SetGuidance("Factor for positron conversion to hadrons.");
126
127 theNuEleCcBF = new G4UIcmdWithADouble("/physics_lists/em/NuEleCcBias",this);
128 theNuEleCcBF->SetGuidance("Neutrino-electron cc-current bias factor");
129 theNuEleCcBF->AvailableForStates(G4State_PreInit);
130
131 theNuEleNcBF = new G4UIcmdWithADouble("/physics_lists/em/NuEleNcBias",this);
132 theNuEleNcBF->SetGuidance("Neutrino-electron nc-current bias factor");
133 theNuEleNcBF->AvailableForStates(G4State_PreInit);
134
135 theNuNucleusBF = new G4UIcmdWithADouble("/physics_lists/em/NuNucleusBias",this);
136 theNuNucleusBF->SetGuidance("Neutrino-nucleus bias factor");
137 theNuNucleusBF->AvailableForStates(G4State_PreInit);
138
139 theGNlowe = new G4UIcmdWithADoubleAndUnit("/physics_lists/em/GammaNuclearLEModelLimit",this);
140 theGNlowe->SetGuidance("Upper energy limit for low-energy model");
141 theGNlowe->SetParameterName("emin",true);
142 theGNlowe->SetUnitCategory("Energy");
144
145 theNuDN = new G4UIcmdWithAString("/physics_lists/em/NuDetectorName",this);
146 theNuDN->SetGuidance("Set neutrino detector name");
148}
@ G4State_PreInit
void SetUnitCategory(const char *unitCategory)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetGuidance(const char *aGuidance)
Definition: G4UIcommand.hh:156
void AvailableForStates(G4ApplicationState s1)
Definition: G4UIcommand.cc:273

◆ ~G4EmMessenger()

G4EmMessenger::~G4EmMessenger ( )
virtual

Definition at line 150 of file G4EmMessenger.cc.

151{
152 delete theSynch;
153 delete theSynchAll;
154 delete theGN;
155 delete theGLENDN;
156 delete theEN;
157 delete theMUN;
158 delete theGMM;
159 delete thePMM;
160 delete thePH;
161 delete theNu;
162 delete theNuETX;
163
164 delete theGMM1;
165 delete thePMM1;
166 delete thePH1;
167 delete theNuEleCcBF;
168 delete theNuEleNcBF;
169 delete theNuNucleusBF;
170 delete theNuDN;
171 delete theGNlowe;
172 delete theXS;
173
174 delete aDir1;
175 delete aDir2;
176}

Member Function Documentation

◆ SetNewValue()

void G4EmMessenger::SetNewValue ( G4UIcommand aComm,
G4String  aS 
)
virtual

Reimplemented from G4UImessenger.

Definition at line 178 of file G4EmMessenger.cc.

179{
180 if(aComm==theSynch) theB->Synch(theSynch->GetNewBoolValue(aS));
181 if(aComm==theSynchAll) theB->SynchAll(theSynchAll->GetNewBoolValue(aS));
182 if(aComm==theGN) theB->GammaNuclear(theGN->GetNewBoolValue(aS));
183 if(aComm==theGLENDN) theB->LENDGammaNuclear(theGLENDN->GetNewBoolValue(aS));
184 if(aComm==theEN) theB->ElectroNuclear(theEN->GetNewBoolValue(aS));
185 if(aComm==theMUN) theB->MuonNuclear(theMUN->GetNewBoolValue(aS));
186 if(aComm==theGMM) theB->GammaToMuMu(theGMM->GetNewBoolValue(aS));
187 if(aComm==thePMM) theB->PositronToMuMu(thePMM->GetNewBoolValue(aS));
188 if(aComm==thePH) theB->PositronToHadrons(thePH->GetNewBoolValue(aS));
189 if(aComm==theNu) theB->NeutrinoActivated(theNu->GetNewBoolValue(aS));
190 if(aComm==theNuETX) theB->NuETotXscActivated(theNuETX->GetNewBoolValue(aS));
191 if(aComm==theXS) theB->SetUseGammaNuclearXS(theXS->GetNewBoolValue(aS));
192
193 if(aComm==theGMM1) theB->GammaToMuMuFactor(theGMM1->GetNewDoubleValue(aS));
194 if(aComm==thePMM1) theB->PositronToMuMuFactor(thePMM1->GetNewDoubleValue(aS));
195 if(aComm==thePH1) theB->PositronToHadronsFactor(thePH1->GetNewDoubleValue(aS));
196
197 if(aComm==theNuEleCcBF) theB->SetNuEleCcBias(theNuEleCcBF->GetNewDoubleValue(aS));
198 if(aComm==theNuEleNcBF) theB->SetNuEleNcBias(theNuEleNcBF->GetNewDoubleValue(aS));
199 if(aComm==theNuNucleusBF) theB->SetNuNucleusBias(theNuNucleusBF->GetNewDoubleValue(aS));
200 if(aComm==theGNlowe) theB->GammaNuclearLEModelLimit(theGNlowe->GetNewDoubleValue(aS));
201
202 if(aComm==theNuDN) theB->SetNuDetectorName(aS);
203}
void SetNuNucleusBias(G4double bf)
void Synch(G4bool val)
void SynchAll(G4bool val)
void NuETotXscActivated(G4bool val)
void NeutrinoActivated(G4bool val)
void ElectroNuclear(G4bool val)
void LENDGammaNuclear(G4bool val)
void SetUseGammaNuclearXS(G4bool val)
void GammaToMuMuFactor(G4double val)
void SetNuEleNcBias(G4double bf)
void PositronToHadronsFactor(G4double val)
void GammaToMuMu(G4bool val)
void GammaNuclearLEModelLimit(G4double val)
void SetNuEleCcBias(G4double bf)
void PositronToHadrons(G4bool val)
void SetNuDetectorName(const G4String &dn)
void PositronToMuMu(G4bool val)
void GammaNuclear(G4bool val)
void MuonNuclear(G4bool val)
void PositronToMuMuFactor(G4double val)
static G4bool GetNewBoolValue(const char *paramString)
static G4double GetNewDoubleValue(const char *paramString)
static G4double GetNewDoubleValue(const char *paramString)

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