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

#include <GFlashShowerModelMessenger.hh>

+ Inheritance diagram for GFlashShowerModelMessenger:

Public Member Functions

 GFlashShowerModelMessenger (GFlashShowerModel *myModel)
 
 ~GFlashShowerModelMessenger ()
 
void SetNewValue (G4UIcommand *command, G4String newValues)
 
G4String GetCurrentValue (G4UIcommand *command)
 
- Public Member Functions inherited from G4UImessenger
 G4UImessenger ()=default
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
G4bool CommandsShouldBeInMaster () const
 

Additional Inherited Members

- Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
 
G4String LtoS (G4long l)
 
G4String DtoS (G4double a)
 
G4String BtoS (G4bool b)
 
G4int StoI (const G4String &s)
 
G4long StoL (const G4String &s)
 
G4double StoD (const 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 GFlashShowerModelMessenger.hh.

Constructor & Destructor Documentation

◆ GFlashShowerModelMessenger()

GFlashShowerModelMessenger::GFlashShowerModelMessenger ( GFlashShowerModel * myModel)

Definition at line 52 of file GFlashShowerModelMessenger.cc.

54{
55 myParaDir = new G4UIdirectory("/GFlash/");
56 myParaDir->SetGuidance("Parametrisation control.");
57 myModel= aModel;
58
59 FlagCmd = new G4UIcmdWithAnInteger("/GFlash/flag",this);
60 FlagCmd->SetGuidance("Defines if GFlash is activated");
61 FlagCmd->SetParameterName("flag",false,false);
62
63 ContCmd = new G4UIcmdWithAnInteger("/GFlash/containment ",this);
64 ContCmd->SetGuidance("Defines if Containment is checked");
65 ContCmd->SetParameterName("flag",false,false);
66
67 StepInX0Cmd = new G4UIcmdWithADouble("/GFlash/stepXo",this);
68 StepInX0Cmd->SetGuidance("Defines step lenghts");
69 StepInX0Cmd->SetParameterName("flag",false,false);
70
71 EminCmd = new G4UIcmdWithADoubleAndUnit("/GFlash/Emin",this);
72 EminCmd->SetGuidance("Set minimum kinetic energy to trigger parametrisation");
73 EminCmd->SetParameterName("Emin",false,false);
74 EminCmd->SetDefaultUnit("GeV");
75 EminCmd->SetUnitCategory("Energy");
77
78 EmaxCmd = new G4UIcmdWithADoubleAndUnit("/GFlash/Emax",this);
79 EmaxCmd->SetGuidance("Set maximum kinetic energy to trigger parametrisation");
80 EmaxCmd->SetParameterName("Emax",false,false);
81 EmaxCmd->SetDefaultUnit("GeV");
82 EmaxCmd->SetUnitCategory("Energy");
84
85 EkillCmd = new G4UIcmdWithADoubleAndUnit("/GFlash/Ekill",this);
86 EkillCmd->SetGuidance("Set maximum kinetic energy for electrons to be killed");
87 EkillCmd->SetParameterName("Ekill",false,false);
88 EkillCmd->SetDefaultUnit("GeV");
89 EkillCmd->SetUnitCategory("Energy");
91}
@ G4State_Idle
@ G4State_PreInit
void SetUnitCategory(const char *unitCategory)
void SetDefaultUnit(const char *defUnit)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetGuidance(const char *aGuidance)
void AvailableForStates(G4ApplicationState s1)

◆ ~GFlashShowerModelMessenger()

GFlashShowerModelMessenger::~GFlashShowerModelMessenger ( )

Definition at line 94 of file GFlashShowerModelMessenger.cc.

95{
96 delete ContCmd;
97 delete FlagCmd;
98 delete StepInX0Cmd;
99 delete EminCmd;
100 delete EmaxCmd;
101 delete EkillCmd;
102}

Member Function Documentation

◆ GetCurrentValue()

G4String GFlashShowerModelMessenger::GetCurrentValue ( G4UIcommand * command)
virtual

Reimplemented from G4UImessenger.

Definition at line 143 of file GFlashShowerModelMessenger.cc.

144{
145 G4String returnValue(1,'\0');
146 std::ostringstream os;
147
148 if( command == FlagCmd ) {
149 os << "/GFlash/flag " << myModel->GetFlagParamType() << '\0';
150 returnValue = G4String(os.str());
151 }
152
153 else if( command == EkillCmd ) {
154 os << "/GFlash/Ekill "
156 << " GeV" << '\0';
157 returnValue = G4String(os.str());
158 }
159
160 else if( command == EminCmd ) {
161 os << "/GFlash/Emin "
163 << " GeV" << '\0';
164 returnValue = G4String(os.str());
165 }
166
167 else if( command == EmaxCmd ) {
168 os << "/GFlash/Emax "
170 << " GeV" << '\0';
171 returnValue = G4String(os.str());
172 }
173
174 return returnValue;
175}
static G4Electron * ElectronDefinition()
Definition G4Electron.cc:86
G4double GetMinEneToParametrise(G4ParticleDefinition &particleType)
G4double GetMaxEneToParametrise(G4ParticleDefinition &particleType)
G4double GetEneToKill(G4ParticleDefinition &particleType)
GFlashParticleBounds * PBound

Referenced by SetNewValue().

◆ SetNewValue()

void GFlashShowerModelMessenger::SetNewValue ( G4UIcommand * command,
G4String newValues )
virtual

Reimplemented from G4UImessenger.

Definition at line 105 of file GFlashShowerModelMessenger.cc.

107{
108
109 if( command == FlagCmd ) {
110 myModel->SetFlagParamType(FlagCmd->GetNewIntValue(newValues));
111 this->GetCurrentValue(command);
112 }
113 if( command == ContCmd ) {
114 myModel->SetFlagParticleContainment(ContCmd->GetNewIntValue(newValues));
115 this->GetCurrentValue(command);
116 }
117 if( command == StepInX0Cmd ) {
118 myModel->SetStepInX0(StepInX0Cmd->GetNewDoubleValue(newValues));
119 this->GetCurrentValue(command);
120 }
121
122 else if( command == EminCmd ) {
124 EminCmd->GetNewDoubleValue(newValues));
125 this->GetCurrentValue(command);
126 }
127
128 else if( command == EmaxCmd ) {
130 EmaxCmd->GetNewDoubleValue(newValues));
131 this->GetCurrentValue(command);
132 }
133
134 else if( command == EkillCmd ) {
136 EkillCmd->GetNewDoubleValue(newValues));
137 this->GetCurrentValue(command);
138 }
139
140}
static G4double GetNewDoubleValue(const char *paramString)
static G4double GetNewDoubleValue(const char *paramString)
static G4int GetNewIntValue(const char *paramString)
void SetMaxEneToParametrise(G4ParticleDefinition &particleType, G4double enemax)
void SetEneToKill(G4ParticleDefinition &particleType, G4double enekill)
void SetMinEneToParametrise(G4ParticleDefinition &particleType, G4double enemin)
G4String GetCurrentValue(G4UIcommand *command)
void SetStepInX0(G4double Lenght)
void SetFlagParamType(G4int I)
void SetFlagParticleContainment(G4int I)

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