Geant4  10.02.p03
G4ScoreQuantityMessenger Class Reference

#include <G4ScoreQuantityMessenger.hh>

Inheritance diagram for G4ScoreQuantityMessenger:
Collaboration diagram for G4ScoreQuantityMessenger:

Public Member Functions

 G4ScoreQuantityMessenger (G4ScoringManager *SManager)
 
 ~G4ScoreQuantityMessenger ()
 
void SetNewValue (G4UIcommand *command, G4String newValues)
 
G4String GetCurrentValue (G4UIcommand *)
 
- Public Member Functions inherited from G4UImessenger
 G4UImessenger ()
 
 G4UImessenger (const G4String &path, const G4String &dsc, G4bool commandsToBeBroadcasted=true)
 
virtual ~G4UImessenger ()
 
G4bool operator== (const G4UImessenger &messenger) const
 
G4bool CommandsShouldBeInMaster () const
 

Protected Member Functions

void FillTokenVec (G4String newValues, G4TokenVec &token)
 
void FParticleCommand (G4VScoringMesh *mesh, G4TokenVec &token)
 
void FParticleWithEnergyCommand (G4VScoringMesh *mesh, G4TokenVec &token)
 
G4bool CheckMeshPS (G4VScoringMesh *mesh, G4String &psname)
 
- Protected Member Functions inherited from G4UImessenger
G4String ItoS (G4int i)
 
G4String DtoS (G4double a)
 
G4String BtoS (G4bool b)
 
G4int StoI (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)
 

Private Member Functions

void QuantityCommands ()
 
void FilterCommands ()
 

Private Attributes

G4ScoringManagerfSMan
 
G4UIdirectoryquantityDir
 
G4UIcmdWithAStringqTouchCmd
 
G4UIcmdWithoutParameterqGetUnitCmd
 
G4UIcmdWithAStringqSetUnitCmd
 
G4UIcommandqCellChgCmd
 
G4UIcommandqCellFluxCmd
 
G4UIcommandqPassCellFluxCmd
 
G4UIcommandqeDepCmd
 
G4UIcommandqdoseDepCmd
 
G4UIcommandqnOfStepCmd
 
G4UIcommandqnOfSecondaryCmd
 
G4UIcommandqTrackLengthCmd
 
G4UIcommandqPassCellCurrCmd
 
G4UIcommandqPassTrackLengthCmd
 
G4UIcommandqFlatSurfCurrCmd
 
G4UIcommandqFlatSurfFluxCmd
 
G4UIcommandqNofCollisionCmd
 
G4UIcommandqPopulationCmd
 
G4UIcommandqTrackCountCmd
 
G4UIcommandqTerminationCmd
 
G4UIcommandqMinKinEAtGeneCmd
 
G4UIcommandqStepCheckerCmd
 
G4UIdirectoryfilterDir
 
G4UIcmdWithAStringfchargedCmd
 
G4UIcmdWithAStringfneutralCmd
 
G4UIcommandfkinECmd
 
G4UIcommandfparticleCmd
 
G4UIcommandfparticleKinECmd
 

Additional Inherited Members

- Protected Attributes inherited from G4UImessenger
G4UIdirectorybaseDir
 
G4String baseDirName
 
G4bool commandsShouldBeInMaster
 

Detailed Description

Definition at line 59 of file G4ScoreQuantityMessenger.hh.

Constructor & Destructor Documentation

◆ G4ScoreQuantityMessenger()

G4ScoreQuantityMessenger::G4ScoreQuantityMessenger ( G4ScoringManager SManager)

Definition at line 91 of file G4ScoreQuantityMessenger.cc.

Here is the call graph for this function:

◆ ~G4ScoreQuantityMessenger()

G4ScoreQuantityMessenger::~G4ScoreQuantityMessenger ( )

Definition at line 174 of file G4ScoreQuantityMessenger.cc.

175 {
176  delete quantityDir;
177  delete qTouchCmd;
178  delete qGetUnitCmd;
179  delete qSetUnitCmd;
180 
181  //
182  delete qCellChgCmd;
183  delete qCellFluxCmd;
184  delete qPassCellFluxCmd;
185  delete qeDepCmd;
186  delete qdoseDepCmd;
187  delete qnOfStepCmd;
188  delete qnOfSecondaryCmd;
189  //
190  delete qTrackLengthCmd;
191  delete qPassCellCurrCmd;
192  delete qPassTrackLengthCmd;
193  delete qFlatSurfCurrCmd;
194  delete qFlatSurfFluxCmd;
195 // delete qSphereSurfCurrCmd;
196 // delete qSphereSurfFluxCmd;
197 // delete qCylSurfCurrCmd;
198 // delete qCylSurfFluxCmd;
199  delete qNofCollisionCmd;
200  delete qPopulationCmd;
201  delete qTrackCountCmd;
202  delete qTerminationCmd;
203  delete qMinKinEAtGeneCmd;
204  //
205  delete qStepCheckerCmd;
206  //
207  delete filterDir;
208  delete fchargedCmd;
209  delete fneutralCmd;
210  delete fkinECmd;
211  delete fparticleCmd;
212  delete fparticleKinECmd;
213 }
G4UIcmdWithoutParameter * qGetUnitCmd

Member Function Documentation

◆ CheckMeshPS()

G4bool G4ScoreQuantityMessenger::CheckMeshPS ( G4VScoringMesh mesh,
G4String psname 
)
protected

Definition at line 539 of file G4ScoreQuantityMessenger.cc.

539  {
540  if(!mesh->FindPrimitiveScorer(psname)) {
541  return true;
542  } else {
543  G4cout << "WARNING[" << qTouchCmd->GetCommandPath()
544  << "] : Quantity name, \"" << psname << "\", is already existing." << G4endl;
546  return false;
547  }
548 }
G4bool FindPrimitiveScorer(const G4String &psname)
void SetNullToCurrentPrimitiveScorer()
G4GLOB_DLL std::ostream G4cout
const G4String & GetCommandPath() const
Definition: G4UIcommand.hh:139
#define G4endl
Definition: G4ios.hh:61
Here is the call graph for this function:
Here is the caller graph for this function:

◆ FillTokenVec()

void G4ScoreQuantityMessenger::FillTokenVec ( G4String  newValues,
G4TokenVec token 
)
protected

Definition at line 501 of file G4ScoreQuantityMessenger.cc.

501  {
502 
503  G4Tokenizer next(newValues);
504  G4String val;
505  while ( !(val = next()).isNull() ) { // Loop checking 12.18.2015 M.Asai
506  token.push_back(val);
507  }
508 }
Here is the caller graph for this function:

◆ FilterCommands()

void G4ScoreQuantityMessenger::FilterCommands ( )
private

Definition at line 98 of file G4ScoreQuantityMessenger.cc.

99 {
100  G4UIparameter* param;
101 
102  //
103  // Filter commands
104  filterDir = new G4UIdirectory("/score/filter/");
105  filterDir->SetGuidance(" Scoring filter commands.");
106  //
107  fchargedCmd = new G4UIcmdWithAString("/score/filter/charged",this);
108  fchargedCmd->SetGuidance("Charged particle filter.");
109  fchargedCmd->SetParameterName("fname",false);
110  //
111  fneutralCmd = new G4UIcmdWithAString("/score/filter/neutral",this);
112  fneutralCmd->SetGuidance("Neutral particle filter.");
113  fneutralCmd->SetParameterName("fname",false);
114  //
115  fkinECmd = new G4UIcommand("/score/filter/kineticEnergy",this);
116  fkinECmd->SetGuidance("Kinetic energy filter.");
117  fkinECmd->SetGuidance("[usage] /score/filter/kineticEnergy fname Elow Ehigh unit");
118  fkinECmd->SetGuidance(" fname :(String) Filter Name ");
119  fkinECmd->SetGuidance(" Elow :(Double) Lower edge of kinetic energy");
120  fkinECmd->SetGuidance(" Ehigh :(Double) Higher edge of kinetic energy");
121  fkinECmd->SetGuidance(" unit :(String) unit of given kinetic energy");
122  param = new G4UIparameter("fname",'s',false);
123  fkinECmd->SetParameter(param);
124  param = new G4UIparameter("elow",'d',true);
125  param->SetDefaultValue("0.0");
126  fkinECmd->SetParameter(param);
127  param = new G4UIparameter("ehigh",'d',true);
128  fkinECmd->SetParameter(param);
130  param->SetDefaultValue(smax);
131  param = new G4UIparameter("unit",'s',true);
132  param->SetDefaultValue("keV");
133  fkinECmd->SetParameter(param);
134  //
135  fparticleCmd = new G4UIcommand("/score/filter/particle",this);
136  fparticleCmd->SetGuidance("Particle filter.");
137  fparticleCmd->SetGuidance("[usage] /score/filter/particle fname p0 .. pn");
138  fparticleCmd->SetGuidance(" fname :(String) Filter Name ");
139  fparticleCmd->SetGuidance(" p0 .. pn :(String) particle names");
140  param = new G4UIparameter("fname",'s',false);
141  fparticleCmd->SetParameter(param);
142  param = new G4UIparameter("particlelist",'s',false);
143  param->SetDefaultValue("");
144  fparticleCmd->SetParameter(param);
145  //
146  //
147  //
148  fparticleKinECmd = new G4UIcommand("/score/filter/particleWithKineticEnergy",this);
149  fparticleKinECmd->SetGuidance("Particle with kinetic energy filter.");
150  fparticleKinECmd->SetGuidance("[usage] /score/filter/particleWithKineticEnergy fname Elow Ehigh unit p0 .. pn");
151  fparticleKinECmd->SetGuidance(" fname :(String) Filter Name ");
152  fparticleKinECmd->SetGuidance(" Elow :(Double) Lower edge of kinetic energy");
153  fparticleKinECmd->SetGuidance(" Ehigh :(Double) Higher edge of kinetic energy");
154  fparticleKinECmd->SetGuidance(" unit :(String) unit of given kinetic energy");
155  fparticleKinECmd->SetGuidance(" p0 .. pn :(String) particle names");
156  param = new G4UIparameter("fname",'s',false);
158  param = new G4UIparameter("elow",'d',false);
159  param->SetDefaultValue("0.0");
161  param = new G4UIparameter("ehigh",'d',true);
162  param->SetDefaultValue(smax);
164  param = new G4UIparameter("unit",'s',true);
165  param->SetDefaultValue("keV");
167  param = new G4UIparameter("particlelist",'s',false);
168  param->SetDefaultValue("");
170  //
171  //
172 }
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetParameter(G4UIparameter *const newParameter)
Definition: G4UIcommand.hh:152
void SetDefaultValue(const char *theDefaultValue)
const G4int smax
void SetGuidance(const char *aGuidance)
Definition: G4UIcommand.hh:161
G4String DtoS(G4double a)
#define DBL_MAX
Definition: templates.hh:83
Here is the call graph for this function:
Here is the caller graph for this function:

◆ FParticleCommand()

void G4ScoreQuantityMessenger::FParticleCommand ( G4VScoringMesh mesh,
G4TokenVec token 
)
protected

Definition at line 511 of file G4ScoreQuantityMessenger.cc.

511  {
512  //
513  // Filter name
514  G4String name = token[0];
515  //
516  // particle list
517  std::vector<G4String> pnames;
518  for ( G4int i = 1; i<(G4int)token.size(); i++){
519  pnames.push_back(token[i]);
520  }
521  //
522  // Attach Filter
523  mesh->SetFilter(new G4SDParticleFilter(name,pnames));
524 }
G4String name
Definition: TRTMaterials.hh:40
void SetFilter(G4VSDFilter *filter)
int G4int
Definition: G4Types.hh:78
Here is the call graph for this function:
Here is the caller graph for this function:

◆ FParticleWithEnergyCommand()

void G4ScoreQuantityMessenger::FParticleWithEnergyCommand ( G4VScoringMesh mesh,
G4TokenVec token 
)
protected

Definition at line 526 of file G4ScoreQuantityMessenger.cc.

526  {
527  G4String& name = token[0];
528  G4double elow = StoD(token[1]);
529  G4double ehigh= StoD(token[2]);
530  G4double unitVal = G4UnitDefinition::GetValueOf(token[3]);
532  new G4SDParticleWithEnergyFilter(name,elow*unitVal,ehigh*unitVal);
533  for ( G4int i = 4; i < (G4int)token.size(); i++){
534  filter->add(token[i]);
535  }
536  mesh->SetFilter(filter);
537 }
G4String name
Definition: TRTMaterials.hh:40
void SetFilter(G4VSDFilter *filter)
int G4int
Definition: G4Types.hh:78
static G4double GetValueOf(const G4String &)
G4double StoD(G4String s)
double G4double
Definition: G4Types.hh:76
void add(const G4String &particleName)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetCurrentValue()

G4String G4ScoreQuantityMessenger::GetCurrentValue ( G4UIcommand )
virtual

Reimplemented from G4UImessenger.

Definition at line 494 of file G4ScoreQuantityMessenger.cc.

495 {
496  G4String val;
497 
498  return val;
499 }

◆ QuantityCommands()

void G4ScoreQuantityMessenger::QuantityCommands ( )
private

Definition at line 83 of file G4ScoreQuantityMessengerQCmd.cc.

84 {
85  G4UIparameter* param;
86 
87  //
88  // Quantity commands
89  quantityDir = new G4UIdirectory("/score/quantity/");
90  quantityDir->SetGuidance("Scoring quantity of the mesh.");
91  //
92  qTouchCmd= new G4UIcmdWithAString("/score/quantity/touch",this);
93  qTouchCmd->SetGuidance("Assign previously defined quantity to the current quantity.");
94  qTouchCmd->SetParameterName("qname",false);
95  //
96  qGetUnitCmd = new G4UIcmdWithoutParameter("/score/quantity/get/unit",this);
97  qGetUnitCmd->SetGuidance("Print output unit of the current quantity.");
98  //
99  qSetUnitCmd = new G4UIcmdWithAString("/score/quantity/set/unit",this);
100  qSetUnitCmd->SetGuidance("Set output unit of the current quantity.");
101  qSetUnitCmd->SetParameterName("unit",false);
102 
103  // Primitive Scorers
104  qeDepCmd = new G4UIcommand("/score/quantity/energyDeposit",this);
105  qeDepCmd->SetGuidance("Energy deposit scorer.");
106  qeDepCmd->
107  SetGuidance("[usage] /score/quantiy/energyDeposit qname unit");
108  qeDepCmd->SetGuidance(" qname :(String) scorer name");
109  qeDepCmd->SetGuidance(" unit :(String) unit");
110  param = new G4UIparameter("qname",'s',false);
111  qeDepCmd->SetParameter(param);
112  param = new G4UIparameter("unit",'s',true);
113  param->SetDefaultValue("MeV");
114  qeDepCmd->SetParameter(param);
115  //
116  qCellChgCmd = new G4UIcommand("/score/quantity/cellCharge",this);
117  qCellChgCmd->SetGuidance("Cell charge scorer.");
118  qCellChgCmd->
119  SetGuidance("[usage] /score/quantiy/cellCharge qname unit");
120  qCellChgCmd->SetGuidance(" qname :(String) scorer name");
121  qCellChgCmd->SetGuidance(" unit :(String) unit");
122  param = new G4UIparameter("qname",'s',false);
123  qCellChgCmd->SetParameter(param);
124  param = new G4UIparameter("unit",'s',true);
125  param->SetDefaultValue("e+");
126  qCellChgCmd->SetParameter(param);
127  //
128  qCellFluxCmd = new G4UIcommand("/score/quantity/cellFlux",this);
129  qCellFluxCmd->SetGuidance("Cell flux scorer.");
130  qCellFluxCmd->
131  SetGuidance("[usage] /score/quantiy/cellFlux qname unit");
132  qCellFluxCmd->SetGuidance(" qname :(String) scorer name");
133  qCellFluxCmd->SetGuidance(" unit :(String) unit");
134  param = new G4UIparameter("qname",'s',false);
135  qCellFluxCmd->SetParameter(param);
136  param = new G4UIparameter("unit",'s',true);
137  param->SetDefaultValue("percm2");
138  qCellFluxCmd->SetParameter(param);
139  //
140  qPassCellFluxCmd = new G4UIcommand("/score/quantity/passageCellFlux",this);
141  qPassCellFluxCmd->SetGuidance("Passage cell flux scorer");
143  SetGuidance("[usage] /score/quantiy/passageCellFlux qname unit");
144  qPassCellFluxCmd->SetGuidance(" qname :(String) scorer name");
145  qPassCellFluxCmd->SetGuidance(" unit :(String) unit");
146  param = new G4UIparameter("qname",'s',false);
148  param = new G4UIparameter("unit",'s',true);
149  param->SetDefaultValue("percm2");
151  //
152  qdoseDepCmd = new G4UIcommand("/score/quantity/doseDeposit",this);
153  qdoseDepCmd->SetGuidance("Dose deposit scorer.");
154  qdoseDepCmd->
155  SetGuidance("[usage] /score/quantiy/doseDeposit qname unit");
156  qdoseDepCmd->SetGuidance(" qname :(String) scorer name");
157  qdoseDepCmd->SetGuidance(" unit :(String) unit");
158  param = new G4UIparameter("qname",'s',false);
159  qdoseDepCmd->SetParameter(param);
160  param = new G4UIparameter("unit",'s',true);
161  param->SetDefaultValue("Gy");
162  qdoseDepCmd->SetParameter(param);
163  //
164  qnOfStepCmd = new G4UIcommand("/score/quantity/nOfStep",this);
165  qnOfStepCmd->SetGuidance("Number of step scorer.");
166  qnOfStepCmd->
167  SetGuidance("[usage] /score/quantiy/nOfStep qname");
168  qnOfStepCmd->
169  SetGuidance("[usage] /score/quantiy/nOfStep qname bflag");
170  qnOfStepCmd->SetGuidance(" qname :(String) scorer name");
171  qnOfStepCmd->SetGuidance(" bflag :(Bool) Skip zero step ");
172  qnOfStepCmd->SetGuidance(" at geometry boundary if true");
173  param = new G4UIparameter("qname",'s',false);
174  qnOfStepCmd->SetParameter(param);
175  param = new G4UIparameter("bflag",'b',true);
176  param->SetDefaultValue("false");
177  qnOfStepCmd->SetParameter(param);
178  //
179  qnOfSecondaryCmd = new G4UIcommand("/score/quantity/nOfSecondary",this);
180  qnOfSecondaryCmd->SetGuidance("Number of secondary scorer.");
182  SetGuidance("[usage] /score/quantiy/nOfSecondary qname");
183  qnOfSecondaryCmd->SetGuidance(" qname :(String) scorer name");
184  param = new G4UIparameter("qname",'s',false);
186  //
187  qTrackLengthCmd = new G4UIcommand("/score/quantity/trackLength",this);
188  qTrackLengthCmd->SetGuidance("Track length scorer.");
190  SetGuidance("[usage] /score/quantiy/trackLength qname wflag kflag vflag unit");
191  qTrackLengthCmd->SetGuidance(" qname :(String) scorer name");
192  qTrackLengthCmd->SetGuidance(" wflag :(Bool) weighted");
193  qTrackLengthCmd->SetGuidance(" kflag :(Bool) multiply kinetic energy");
194  qTrackLengthCmd->SetGuidance(" vflag :(Bool) divide by velocity");
195  qTrackLengthCmd->SetGuidance(" unit :(String) unit");
196  param = new G4UIparameter("qname",'s',false);
198  param = new G4UIparameter("wflag",'b',true);
199  param->SetDefaultValue("false");
201  param = new G4UIparameter("kflag",'b',true);
202  param->SetDefaultValue("false");
204  param = new G4UIparameter("vflag",'b',true);
205  param->SetDefaultValue("false");
207  param = new G4UIparameter("unit",'s',true);
208  param->SetDefaultValue("mm");
210  //
211  qPassCellCurrCmd = new G4UIcommand("/score/quantity/passageCellCurrent",this);
212  qPassCellCurrCmd->SetGuidance("Passage cell current scorer.");
214  SetGuidance("[usage] /score/quantiy/passageCellCurrent qname wflag");
215  qPassCellCurrCmd->SetGuidance(" qname :(String) scorer name");
216  qPassCellCurrCmd->SetGuidance(" wflag :(Bool) weighted");
217  param = new G4UIparameter("qname",'s',false);
219  param = new G4UIparameter("wflag",'b',true);
220  param->SetDefaultValue("true");
222  //
223  qPassTrackLengthCmd = new G4UIcommand("/score/quantity/passageTrackLength",this);
224  qPassTrackLengthCmd->SetGuidance("Passage track length scorer.");
226  SetGuidance("[usage] /score/quantiy/passageTrackLength qname wflag unit");
227  qPassTrackLengthCmd->SetGuidance(" qname :(String) scorer name");
228  qPassTrackLengthCmd->SetGuidance(" wflag :(Bool) weighted");
229  qPassTrackLengthCmd->SetGuidance(" unit :(Bool) unit");
230  param = new G4UIparameter("qname",'s',false);
232  param = new G4UIparameter("wflag",'b',true);
233  param->SetDefaultValue("true");
235  param = new G4UIparameter("unit",'s',true);
236  param->SetDefaultValue("mm");
238  //
239  qFlatSurfCurrCmd = new G4UIcommand("/score/quantity/flatSurfaceCurrent",this);
240  qFlatSurfCurrCmd->SetGuidance("Flat surface current Scorer.");
242  SetGuidance("[usage] /score/quantiy/flatSurfaceCurrent qname dflag wflag aflag unit");
243  qFlatSurfCurrCmd->SetGuidance(" qname :(String) scorer name");
244  qFlatSurfCurrCmd->SetGuidance(" dflag :(Int) direction flag");
245  qFlatSurfCurrCmd->SetGuidance(" : 0 = Both In and Out");
246  qFlatSurfCurrCmd->SetGuidance(" : 1 = In only");
247  qFlatSurfCurrCmd->SetGuidance(" : 2 = Out only");
248  qFlatSurfCurrCmd->SetGuidance(" wflag :(Bool) weighted");
249  qFlatSurfCurrCmd->SetGuidance(" aflag :(Bool) divide by area");
250  qFlatSurfCurrCmd->SetGuidance(" unit :(Bool) unit");
251  param = new G4UIparameter("qname",'s',false);
253  param = new G4UIparameter("dflag",'i',true);
254  param->SetDefaultValue("0");
256  param = new G4UIparameter("wflag",'b',true);
257  param->SetDefaultValue("true");
259  param = new G4UIparameter("aflag",'b',true);
260  param->SetDefaultValue("true");
262  param = new G4UIparameter("unit",'s',true);
263  param->SetDefaultValue("percm2");
265  //
266  qFlatSurfFluxCmd = new G4UIcommand("/score/quantity/flatSurfaceFlux",this);
267  qFlatSurfFluxCmd->SetGuidance("Flat surface flux scorer.");
269  SetGuidance("[usage] /score/quantiy/flatSurfaceFlux qname dflag unit");
270  qFlatSurfFluxCmd->SetGuidance(" qname :(String) scorer name");
271  qFlatSurfFluxCmd->SetGuidance(" dflag :(Int) direction flag");
272  qFlatSurfFluxCmd->SetGuidance(" : 0 = Both In and Out");
273  qFlatSurfFluxCmd->SetGuidance(" : 1 = In only");
274  qFlatSurfFluxCmd->SetGuidance(" : 2 = Out only");
275  qFlatSurfFluxCmd->SetGuidance(" wflag :(Bool) weighted");
276  qFlatSurfFluxCmd->SetGuidance(" aflag :(Bool) divide by area");
277  qFlatSurfFluxCmd->SetGuidance(" unit :(String) unit");
278  param = new G4UIparameter("qname",'s',false);
280  param = new G4UIparameter("dflag",'i',true);
281  param->SetDefaultValue("0");
283  param = new G4UIparameter("wflag",'b',true);
284  param->SetDefaultValue("true");
286  param = new G4UIparameter("aflag",'b',true);
287  param->SetDefaultValue("true");
289  param = new G4UIparameter("unit",'s',true);
290  param->SetDefaultValue("percm2");
292  //
293 // qSphereSurfCurrCmd = new G4UIcommand("/score/quantity/sphereSurfaceCurrent",this);
294 // qSphereSurfCurrCmd->SetGuidance("Sphere surface current Scorer.");
295 // qSphereSurfCurrCmd->
296 // SetGuidance("[usage] /score/quantiy/sphereSurfaceCurrent qname dflag wflag aflag unit");
297 // qSphereSurfCurrCmd->SetGuidance(" qname :(String) scorer name");
298 // qSphereSurfCurrCmd->SetGuidance(" dflag :(Int) direction flag");
299 // qSphereSurfCurrCmd->SetGuidance(" : 0 = Both In and Out");
300 // qSphereSurfCurrCmd->SetGuidance(" : 1 = In only");
301 // qSphereSurfCurrCmd->SetGuidance(" : 2 = Out only");
302 // qSphereSurfCurrCmd->SetGuidance(" wflag :(Bool) Weighted");
303 // qSphereSurfCurrCmd->SetGuidance(" aflag :(Bool) DivideByArea");
304 // qSphereSurfCurrCmd->SetGuidance(" unit :(String) unit");
305 // param = new G4UIparameter("qname",'s',false);
306 // qSphereSurfCurrCmd->SetParameter(param);
307 // param = new G4UIparameter("dflag",'i',true);
308 // param->SetDefaultValue("0");
309 // qSphereSurfCurrCmd->SetParameter(param);
310 // param = new G4UIparameter("wflag",'b',true);
311 // param->SetDefaultValue("true");
312 // qSphereSurfCurrCmd->SetParameter(param);
313 // param = new G4UIparameter("aflag",'b',true);
314 // param->SetDefaultValue("true");
315 // qSphereSurfCurrCmd->SetParameter(param);
316 // param = new G4UIparameter("unit",'s',true);
317 // param->SetDefaultValue("percm2");
318 // qSphereSurfCurrCmd->SetParameter(param);
319 
320  //
321 // qSphereSurfFluxCmd = new G4UIcommand("/score/quantity/sphereSurfaceFlux",this);
322 // qSphereSurfFluxCmd->SetGuidance("Sphere surface Flux Scorer.");
323 // qSphereSurfFluxCmd->
324 // SetGuidance("[usage] /score/quantiy/sphereSurfaceFlux qname dflag unit");
325 // qSphereSurfFluxCmd->SetGuidance(" qname :(String) scorer name");
326 // qSphereSurfFluxCmd->SetGuidance(" dflag :(Int) direction flag");
327 // qSphereSurfFluxCmd->SetGuidance(" : 0 = Both In and Out");
328 // qSphereSurfFluxCmd->SetGuidance(" : 1 = In only");
329 // qSphereSurfFluxCmd->SetGuidance(" : 2 = Out only");
330 // qSphereSurfFluxCmd->SetGuidance(" wflag :(Bool) weighted");
331 // qSphereSurfFluxCmd->SetGuidance(" aflag :(Bool) divide by area");
332 // qSphereSurfFluxCmd->SetGuidance(" unit :(String) unit");
333 // param = new G4UIparameter("qname",'s',false);
334 // qSphereSurfFluxCmd->SetParameter(param);
335 // param = new G4UIparameter("dflag",'i',true);
336 // param->SetDefaultValue("0");
337 // qSphereSurfFluxCmd->SetParameter(param);
338 // param = new G4UIparameter("wflag",'b',true);
339 // param->SetDefaultValue("true");
340 // qSphereSurfFluxCmd->SetParameter(param);
341 // param = new G4UIparameter("aflag",'b',true);
342 // param->SetDefaultValue("true");
343 // qSphereSurfFluxCmd->SetParameter(param);
344 // param = new G4UIparameter("unit",'s',true);
345 // param->SetDefaultValue("percm2");
346 // qSphereSurfFluxCmd->SetParameter(param);
347 
348  //
349 // qCylSurfCurrCmd = new G4UIcommand("/score/quantity/cylinderSurfaceCurrent",this);
350 // qCylSurfCurrCmd->SetGuidance("Cylinder surface current Scorer.");
351 // qCylSurfCurrCmd->
352 // SetGuidance("[usage] /score/quantiy/cylinderSurfaceCurrent qname dflag wflag aflag unit");
353 // qCylSurfCurrCmd->SetGuidance(" qname :(String) scorer name");
354 // qCylSurfCurrCmd->SetGuidance(" dflag :(Int) direction flag");
355 // qCylSurfCurrCmd->SetGuidance(" : 0 = Both In and Out");
356 // qCylSurfCurrCmd->SetGuidance(" : 1 = In only");
357 // qCylSurfCurrCmd->SetGuidance(" : 2 = Out only");
358 // qCylSurfCurrCmd->SetGuidance(" wflag :(Bool) Weighted");
359 // qCylSurfCurrCmd->SetGuidance(" aflag :(Bool) DivideByArea");
360 // qCylSurfCurrCmd->SetGuidance(" unit :(String) unit");
361 // param = new G4UIparameter("qname",'s',false);
362 // qCylSurfCurrCmd->SetParameter(param);
363 // param = new G4UIparameter("dflag",'i',true);
364 // param->SetDefaultValue("0");
365 // qCylSurfCurrCmd->SetParameter(param);
366 // param = new G4UIparameter("wflag",'b',true);
367 // param->SetDefaultValue("true");
368 // qCylSurfCurrCmd->SetParameter(param);
369 // param = new G4UIparameter("aflag",'b',true);
370 // param->SetDefaultValue("true");
371 // qCylSurfCurrCmd->SetParameter(param);
372 // param = new G4UIparameter("unit",'s',true);
373 // param->SetDefaultValue("percm2");
374 // qCylSurfCurrCmd->SetParameter(param);
375 //
376 // qCylSurfFluxCmd = new G4UIcommand("/score/quantity/cylinderSurfaceFlux",this);
377 // qCylSurfFluxCmd->SetGuidance("Cylinder surface Flux Scorer.");
378 // qCylSurfFluxCmd->
379 // SetGuidance("[usage] /score/quantiy/cylinderSurfaceFlux qname dflag unit");
380 // qCylSurfFluxCmd->SetGuidance(" qname :(String) scorer name");
381 // qCylSurfFluxCmd->SetGuidance(" dflag :(Int) direction flag");
382 // qCylSurfFluxCmd->SetGuidance(" : 0 = Both In and Out");
383 // qCylSurfFluxCmd->SetGuidance(" : 1 = In only");
384 // qCylSurfFluxCmd->SetGuidance(" : 2 = Out only");
385 // qCylSurfFluxCmd->SetGuidance(" wflag :(Bool) weighted");
386 // qCylSurfFluxCmd->SetGuidance(" aflag :(Bool) divide by area");
387 // qCylSurfFluxCmd->SetGuidance(" unit :(String) unit");
388 // param = new G4UIparameter("qname",'s',false);
389 // qCylSurfFluxCmd->SetParameter(param);
390 // param = new G4UIparameter("dflag",'i',true);
391 // param->SetDefaultValue("0");
392 // qCylSurfFluxCmd->SetParameter(param);
393 // param = new G4UIparameter("wflag",'b',true);
394 // param->SetDefaultValue("true");
395 // qCylSurfFluxCmd->SetParameter(param);
396 // param = new G4UIparameter("aflag",'b',true);
397 // param->SetDefaultValue("true");
398 // qCylSurfFluxCmd->SetParameter(param);
399 // param = new G4UIparameter("unit",'s',true);
400 // param->SetDefaultValue("percm2");
401 // qCylSurfFluxCmd->SetParameter(param);
402 //
403  //
404  qNofCollisionCmd = new G4UIcommand("/score/quantity/nOfCollision",this);
405  qNofCollisionCmd->SetGuidance("Number of collision scorer.");
407  SetGuidance("[usage] /score/quantiy/nOfCollision qname wflag");
408  qNofCollisionCmd->SetGuidance(" qname :(String) scorer name");
409  param = new G4UIparameter("qname",'s',false);
411  param = new G4UIparameter("wflag",'b',true);
412  param->SetDefaultValue("false");
414  //
415  qPopulationCmd = new G4UIcommand("/score/quantity/population",this);
416  qPopulationCmd->SetGuidance("Population scorer.");
418  SetGuidance("[usage] /score/quantiy/population qname wflag");
419  qPopulationCmd->SetGuidance(" qname :(String) scorer name");
420  qPopulationCmd->SetGuidance(" wflag :(Bool) weighted");
421  param = new G4UIparameter("qname",'s',false);
423  param = new G4UIparameter("wflag",'b',true);
424  param->SetDefaultValue("false");
426 
427  //
428  qTrackCountCmd = new G4UIcommand("/score/quantity/nOfTrack",this);
429  qTrackCountCmd->SetGuidance("Number of track scorer.");
431  SetGuidance("[usage] /score/quantiy/nOfTrack qname dflag wflag");
432  qTrackCountCmd->SetGuidance(" qname :(String) scorer name");
433  qTrackCountCmd->SetGuidance(" dflag :(Int) direction");
434  qTrackCountCmd->SetGuidance(" : 0 = Both In and Out");
435  qTrackCountCmd->SetGuidance(" : 1 = In only");
436  qTrackCountCmd->SetGuidance(" : 2 = Out only");
437  qTrackCountCmd->SetGuidance(" wflag :(Bool) weighted");
438  param = new G4UIparameter("qname",'s',false);
440  param = new G4UIparameter("dflag",'i',true);
441  param->SetDefaultValue("0");
443  param = new G4UIparameter("wflag",'b',true);
444  param->SetDefaultValue("false");
446 
447  //
448  qTerminationCmd = new G4UIcommand("/score/quantity/nOfTerminatedTrack",this);
449  qTerminationCmd->SetGuidance("Number of terminated tracks scorer.");
451  SetGuidance("[usage] /score/quantiy/nOfTerminatedTrack qname wflag");
452  qTerminationCmd->SetGuidance(" qname :(String) scorer name");
453  qTerminationCmd->SetGuidance(" wflag :(Bool) weighted");
454  param = new G4UIparameter("qname",'s',false);
456  param = new G4UIparameter("wflag",'b',true);
457  param->SetDefaultValue("false");
459 
460  //
461  qMinKinEAtGeneCmd = new G4UIcommand("/score/quantity/minKinEAtGeneration",this);
462  qMinKinEAtGeneCmd->SetGuidance("Min Kinetic Energy at Generation");
464  SetGuidance("[usage] /score/quantiy/minKinEAtGeneration qname unit");
465  qMinKinEAtGeneCmd->SetGuidance(" qname :(String) scorer name");
466  qMinKinEAtGeneCmd->SetGuidance(" unit :(String) unit name");
467  param = new G4UIparameter("qname",'s',false);
469  param = new G4UIparameter("unit",'s',true);
470  param->SetDefaultValue("MeV");
472  //
473  qStepCheckerCmd = new G4UIcommand("/score/quantity/stepChecker",this);
474  qStepCheckerCmd->SetGuidance("Display a comment when this PS is invoked");
476  SetGuidance("[usage] /score/quantiy/stepChecker qname");
477  qStepCheckerCmd->SetGuidance(" qname :(String) scorer name");
478  param = new G4UIparameter("qname",'s',false);
480 
481 }
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetParameter(G4UIparameter *const newParameter)
Definition: G4UIcommand.hh:152
void SetDefaultValue(const char *theDefaultValue)
G4UIcmdWithoutParameter * qGetUnitCmd
void SetGuidance(const char *aGuidance)
Definition: G4UIcommand.hh:161
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetNewValue()

void G4ScoreQuantityMessenger::SetNewValue ( G4UIcommand command,
G4String  newValues 
)
virtual

Reimplemented from G4UImessenger.

Definition at line 215 of file G4ScoreQuantityMessenger.cc.

216 {
217  //
218  // Get Current Mesh
219  //
221  if(!mesh)
222  {
223  G4cerr << "ERROR : No mesh is currently open. Open/create a mesh first. Command ignored." << G4endl;
224  return;
225  }
226  // Tokens
227  G4TokenVec token;
228  FillTokenVec(newVal,token);
229  //
230  // Commands for Current Mesh
231  if(command==qTouchCmd) {
232  mesh->SetCurrentPrimitiveScorer(newVal);
233  } else if(command == qGetUnitCmd ){
234  G4cout << "Unit: "<< mesh->GetCurrentPSUnit() <<G4endl;
235  } else if(command == qSetUnitCmd ){
236  mesh->SetCurrentPSUnit(newVal);
237  } else if(command== qCellChgCmd) {
238  if ( CheckMeshPS(mesh,token[0]) ){
239  G4PSCellCharge3D* ps = new G4PSCellCharge3D(token[0]);
240  ps->SetUnit(token[1]);
241  mesh->SetPrimitiveScorer(ps);
242  }
243  } else if(command== qCellFluxCmd) {
244  if ( CheckMeshPS(mesh,token[0]) ){
245  if( mesh->GetShape()==boxMesh ) {
246  G4PSCellFlux3D* ps = new G4PSCellFlux3D(token[0]);
247  ps->SetUnit(token[1]);
248  mesh->SetPrimitiveScorer(ps);
249  } else if( mesh->GetShape()==cylinderMesh ) {
251  new G4PSCellFluxForCylinder3D(token[0]);
252  ps->SetUnit(token[1]);
253  G4ThreeVector msize = mesh->GetSize(); // gevin in R Z N/A
254  ps->SetCylinderSize(msize[0],msize[1]); // given in dr dz
255  G4int nSeg[3];
256  mesh->GetNumberOfSegments(nSeg);
257  ps->SetNumberOfSegments(nSeg);
258  mesh->SetPrimitiveScorer(ps);
259  }
260  }
261  } else if(command== qPassCellFluxCmd) {
262  if ( CheckMeshPS(mesh,token[0]) ){
263  if( mesh->GetShape()==boxMesh ) {
264  G4PSPassageCellFlux3D* ps = new G4PSPassageCellFlux3D(token[0]);
265  ps->SetUnit(token[1]);
266  mesh->SetPrimitiveScorer(ps);
267  } else if( mesh->GetShape()==cylinderMesh ) {
269  new G4PSPassageCellFluxForCylinder3D(token[0]);
270  ps->SetUnit(token[1]);
271  G4ThreeVector msize = mesh->GetSize(); // gevin in R Z N/A
272  ps->SetCylinderSize(msize[0],msize[1]); // given in dr dz
273  G4int nSeg[3];
274  mesh->GetNumberOfSegments(nSeg);
275  ps->SetNumberOfSegments(nSeg);
276  mesh->SetPrimitiveScorer(ps);
277  }
278  }
279  } else if(command==qeDepCmd) {
280  if ( CheckMeshPS(mesh,token[0]) ){
281  G4PSEnergyDeposit3D* ps =new G4PSEnergyDeposit3D(token[0]);
282  ps->SetUnit(token[1]);
283  mesh->SetPrimitiveScorer(ps);
284  }
285  } else if(command== qdoseDepCmd) {
286  if ( CheckMeshPS(mesh,token[0]) ){
287  if( mesh->GetShape()==boxMesh ) {
288  G4PSDoseDeposit3D* ps = new G4PSDoseDeposit3D(token[0]);
289  ps->SetUnit(token[1]);
290  mesh->SetPrimitiveScorer(ps);
291  } else if( mesh->GetShape()==cylinderMesh ) {
293  new G4PSDoseDepositForCylinder3D(token[0]);
294  ps->SetUnit(token[1]);
295  G4ThreeVector msize = mesh->GetSize(); // gevin in R Z N/A
296  ps->SetCylinderSize(msize[0],msize[1]); // given in dr dz
297  G4int nSeg[3];
298  mesh->GetNumberOfSegments(nSeg);
299  ps->SetNumberOfSegments(nSeg);
300  mesh->SetPrimitiveScorer(ps);
301  }
302  }
303  } else if(command== qnOfStepCmd) {
304  if ( CheckMeshPS(mesh,token[0]) ){
305  G4PSNofStep3D* ps = new G4PSNofStep3D(token[0]);
306  ps->SetBoundaryFlag(StoB(token[1]));
307  mesh->SetPrimitiveScorer(ps);
308  }
309  } else if(command== qnOfSecondaryCmd) {
310  if ( CheckMeshPS(mesh,token[0]) ){
311  G4PSNofSecondary3D* ps =new G4PSNofSecondary3D(token[0]);
312  mesh->SetPrimitiveScorer(ps);
313  }
314  } else if(command== qTrackLengthCmd) {
315  if ( CheckMeshPS(mesh,token[0]) ){
316  G4PSTrackLength3D* ps = new G4PSTrackLength3D(token[0]);
317  ps->Weighted(StoB(token[1]));
318  ps->MultiplyKineticEnergy(StoB(token[2]));
319  ps->DivideByVelocity(StoB(token[3]));
320  ps->SetUnit(token[4]);
321  mesh->SetPrimitiveScorer(ps);
322  }
323  } else if(command== qPassCellCurrCmd){
324  if( CheckMeshPS(mesh,token[0]) ) {
326  ps->Weighted(StoB(token[1]));
327  mesh->SetPrimitiveScorer(ps);
328  }
329  } else if(command== qPassTrackLengthCmd){
330  if( CheckMeshPS(mesh,token[0]) ) {
332  ps->Weighted(StoB(token[1]));
333  ps->SetUnit(token[2]);
334  mesh->SetPrimitiveScorer(ps);
335  }
336  } else if(command== qFlatSurfCurrCmd){
337  if( CheckMeshPS(mesh,token[0])) {
339  new G4PSFlatSurfaceCurrent3D(token[0],StoI(token[1]));
340  ps->Weighted(StoB(token[2]));
341  ps->DivideByArea(StoB(token[3]));
342  if ( StoB(token[3]) ){
343  ps->SetUnit(token[4]);
344  }else{
345  ps->SetUnit("");
346  }
347  mesh->SetPrimitiveScorer(ps);
348  }
349  } else if(command== qFlatSurfFluxCmd){
350  if( CheckMeshPS(mesh, token[0] )) {
351  G4PSFlatSurfaceFlux3D* ps = new G4PSFlatSurfaceFlux3D(token[0],StoI(token[1]));
352  ps->Weighted(StoB(token[2]));
353  ps->DivideByArea(StoB(token[3]));
354  if ( StoB(token[3]) ){
355  ps->SetUnit(token[4]);
356  }else{
357  ps->SetUnit("");
358  }
359  mesh->SetPrimitiveScorer(ps);
360  }
361 // } else if(command== qSphereSurfCurrCmd){
362 // if( CheckMeshPS(mesh, token[0] )) {
363 // G4PSSphereSurfaceCurrent3D* ps =
364 // new G4PSSphereSurfaceCurrent3D(token[0],StoI(token[1]));
365 // ps->Weighted(StoB(token[2]));
366 // ps->DivideByArea(StoB(token[3]));
367 // if ( StoB(token[3]) ){
368 // ps->SetUnit(token[4]);
369 // }else{
370 // ps->SetUnit("");
371 // }
372 // mesh->SetPrimitiveScorer(ps);
373 // }
374 // } else if(command== qSphereSurfFluxCmd){
375 // if( CheckMeshPS(mesh,token[0])) {
376 // G4PSSphereSurfaceFlux3D* ps = new G4PSSphereSurfaceFlux3D(token[0], StoI(token[1]));
377 // ps->Weighted(StoB(token[2]));
378 // ps->DivideByArea(StoB(token[3]));
379 // if ( StoB(token[3]) ){
380 // ps->SetUnit(token[4]);
381 // }else{
382 // ps->SetUnit("");
383 // }
384 // mesh->SetPrimitiveScorer(ps);
385 // }
386 // } else if(command== qCylSurfCurrCmd){
387 // if( CheckMeshPS(mesh, token[0] ) ) {
388 // G4PSCylinderSurfaceCurrent3D* ps =
389 // new G4PSCylinderSurfaceCurrent3D(token[0],StoI(token[1]));
390 // ps->Weighted(StoB(token[2]));
391 // ps->DivideByArea(StoB(token[3]));
392 // if ( StoB(token[3]) ){
393 // ps->SetUnit(token[4]);
394 // }else{
395 // ps->SetUnit("");
396 // }
397 // ps->SetUnit(token[4]);
398 // mesh->SetPrimitiveScorer(ps);
399 // }
400 // } else if(command== qCylSurfFluxCmd){
401 // if( CheckMeshPS(mesh, token[0] ) {
402 // G4PSCylinerSurfaceFlux3D* ps =new G4PSCylinderSurfaceFlux3D(token[0], StoI(token[1]));
403 // ps->Weighted(StoB(token[2]));
404 // ps->DivideByArea(StoB(token[3]));
405 // if ( StoB(token[3]) ){
406 // ps->SetUnit(token[4]);
407 // }else{
408 // ps->SetUnit("");
409 // }
410 // mesh->SetPrimitiveScorer(ps);
411 // }
412  } else if(command== qNofCollisionCmd){
413  if( CheckMeshPS(mesh,token[0])) {
414  G4PSNofCollision3D* ps =new G4PSNofCollision3D(token[0]);
415  ps->Weighted(StoB(token[1]));
416  mesh->SetPrimitiveScorer(ps);
417  }
418  } else if(command== qPopulationCmd){
419  if( CheckMeshPS(mesh,token[0]) ) {
420  G4PSPopulation3D* ps =new G4PSPopulation3D(token[0]);
421  ps->Weighted(StoB(token[1]));
422  mesh->SetPrimitiveScorer(ps);
423  }
424  } else if(command== qTrackCountCmd){
425  if( CheckMeshPS(mesh,token[0])) {
426  G4PSTrackCounter3D* ps =new G4PSTrackCounter3D(token[0],StoI(token[1]));
427  ps->Weighted(StoB(token[2]));
428  mesh->SetPrimitiveScorer(ps);
429  }
430  } else if(command== qTerminationCmd){
431  if( CheckMeshPS(mesh,token[0])) {
432  G4PSTermination3D* ps =new G4PSTermination3D(token[0]);
433  ps->Weighted(StoB(token[1]));
434  mesh->SetPrimitiveScorer(ps);
435  }
436 
437  } else if(command== qMinKinEAtGeneCmd){
438  if( CheckMeshPS(mesh,token[0]) ){
440  ps->SetUnit(token[1]);
441  mesh->SetPrimitiveScorer(ps);
442  }
443  } else if(command== qStepCheckerCmd){
444  if( CheckMeshPS(mesh,token[0]) ){
445  G4PSStepChecker3D* ps =new G4PSStepChecker3D(token[0]);
446  mesh->SetPrimitiveScorer(ps);
447  }
448 
449  //
450  // Filters
451  //
452  }else if(command== fchargedCmd){
453  if(!mesh->IsCurrentPrimitiveScorerNull()) {
454  mesh->SetFilter(new G4SDChargedFilter(token[0]));
455  } else {
456  G4cout << "WARNING[" << fchargedCmd->GetCommandPath()
457  << "] : Current quantity is not set. Set or touch a quantity first." << G4endl;
458  }
459  }else if(command== fneutralCmd){
460  if(!mesh->IsCurrentPrimitiveScorerNull()) {
461  mesh->SetFilter(new G4SDNeutralFilter(token[0]));
462  } else {
463  G4cout << "WARNING[" << fneutralCmd->GetCommandPath()
464  << "] : Current quantity is not set. Set or touch a quantity first." << G4endl;
465  }
466  }else if(command== fkinECmd){
467  if(!mesh->IsCurrentPrimitiveScorerNull()) {
468  G4String& name = token[0];
469  G4double elow = StoD(token[1]);
470  G4double ehigh = StoD(token[2]);
471  G4double unitVal = G4UnitDefinition::GetValueOf(token[3]);
472  mesh->SetFilter(new G4SDKineticEnergyFilter(name,elow*unitVal,ehigh*unitVal));
473  } else {
474  G4cout << "WARNING[" << fkinECmd->GetCommandPath()
475  << "] : Current quantity is not set. Set or touch a quantity first." << G4endl;
476  }
477  }else if(command== fparticleKinECmd){
478  if(!mesh->IsCurrentPrimitiveScorerNull()) {
479  FParticleWithEnergyCommand(mesh,token);
480  } else {
481  G4cout << "WARNING[" << fparticleKinECmd->GetCommandPath()
482  << "] : Current quantity is not set. Set or touch a quantity first." << G4endl;
483  }
484  } else if(command==fparticleCmd) {
485  if(!mesh->IsCurrentPrimitiveScorerNull()) {
486  FParticleCommand(mesh,token);
487  } else {
488  G4cout << "WARNING[" << fparticleCmd->GetCommandPath()
489  << "] : Current quantity is not set. Set or touch a quantity first." << G4endl;
490  }
491  }
492 }
G4ThreeVector GetSize() const
void GetNumberOfSegments(G4int nSegment[3])
void FParticleCommand(G4VScoringMesh *mesh, G4TokenVec &token)
G4VScoringMesh * GetCurrentMesh() const
void SetCylinderSize(G4double dr, G4double dz)
std::vector< G4String > G4TokenVec
void SetPrimitiveScorer(G4VPrimitiveScorer *ps)
void SetCurrentPrimitiveScorer(const G4String &name)
virtual void SetUnit(const G4String &unit)
G4String name
Definition: TRTMaterials.hh:40
void FillTokenVec(G4String newValues, G4TokenVec &token)
void SetCylinderSize(G4double dr, G4double dz)
void SetBoundaryFlag(G4bool flg=true)
Definition: G4PSNofStep.hh:70
void SetFilter(G4VSDFilter *filter)
int G4int
Definition: G4Types.hh:78
void DivideByArea(G4bool flg=true)
virtual void SetUnit(const G4String &unit)
void Weighted(G4bool flg=true)
void Weighted(G4bool flg=true)
G4bool StoB(G4String s)
G4UIcmdWithoutParameter * qGetUnitCmd
G4bool IsCurrentPrimitiveScorerNull()
virtual void SetUnit(const G4String &unit)
void SetCylinderSize(G4double dr, G4double dz)
static G4double GetValueOf(const G4String &)
void Weighted(G4bool flg=true)
G4GLOB_DLL std::ostream G4cout
void Weighted(G4bool flg=true)
virtual void SetUnit(const G4String &unit)
G4bool CheckMeshPS(G4VScoringMesh *mesh, G4String &psname)
void SetCurrentPSUnit(const G4String &unit)
virtual void SetUnit(const G4String &unit)
G4int StoI(G4String s)
void Weighted(G4bool flg=true)
void DivideByArea(G4bool flg=true)
G4double StoD(G4String s)
const G4String & GetCommandPath() const
Definition: G4UIcommand.hh:139
void FParticleWithEnergyCommand(G4VScoringMesh *mesh, G4TokenVec &token)
void MultiplyKineticEnergy(G4bool flg=true)
void Weighted(G4bool flg=true)
void Weighted(G4bool flg=true)
#define G4endl
Definition: G4ios.hh:61
G4String GetCurrentPSUnit()
virtual void SetUnit(const G4String &unit)
virtual void SetUnit(const G4String &unit)
double G4double
Definition: G4Types.hh:76
virtual void SetUnit(const G4String &unit)
virtual void SetUnit(const G4String &unit)
void Weighted(G4bool flg=true)
void Weighted(G4bool flg=true)
MeshShape GetShape() const
void DivideByVelocity(G4bool flg=true)
virtual void SetUnit(const G4String &unit)
G4GLOB_DLL std::ostream G4cerr
Here is the call graph for this function:

Member Data Documentation

◆ fchargedCmd

G4UIcmdWithAString* G4ScoreQuantityMessenger::fchargedCmd
private

Definition at line 121 of file G4ScoreQuantityMessenger.hh.

◆ filterDir

G4UIdirectory* G4ScoreQuantityMessenger::filterDir
private

Definition at line 120 of file G4ScoreQuantityMessenger.hh.

◆ fkinECmd

G4UIcommand* G4ScoreQuantityMessenger::fkinECmd
private

Definition at line 123 of file G4ScoreQuantityMessenger.hh.

◆ fneutralCmd

G4UIcmdWithAString* G4ScoreQuantityMessenger::fneutralCmd
private

Definition at line 122 of file G4ScoreQuantityMessenger.hh.

◆ fparticleCmd

G4UIcommand* G4ScoreQuantityMessenger::fparticleCmd
private

Definition at line 124 of file G4ScoreQuantityMessenger.hh.

◆ fparticleKinECmd

G4UIcommand* G4ScoreQuantityMessenger::fparticleKinECmd
private

Definition at line 125 of file G4ScoreQuantityMessenger.hh.

◆ fSMan

G4ScoringManager* G4ScoreQuantityMessenger::fSMan
private

Definition at line 85 of file G4ScoreQuantityMessenger.hh.

◆ qCellChgCmd

G4UIcommand* G4ScoreQuantityMessenger::qCellChgCmd
private

Definition at line 93 of file G4ScoreQuantityMessenger.hh.

◆ qCellFluxCmd

G4UIcommand* G4ScoreQuantityMessenger::qCellFluxCmd
private

Definition at line 94 of file G4ScoreQuantityMessenger.hh.

◆ qdoseDepCmd

G4UIcommand* G4ScoreQuantityMessenger::qdoseDepCmd
private

Definition at line 97 of file G4ScoreQuantityMessenger.hh.

◆ qeDepCmd

G4UIcommand* G4ScoreQuantityMessenger::qeDepCmd
private

Definition at line 96 of file G4ScoreQuantityMessenger.hh.

◆ qFlatSurfCurrCmd

G4UIcommand* G4ScoreQuantityMessenger::qFlatSurfCurrCmd
private

Definition at line 104 of file G4ScoreQuantityMessenger.hh.

◆ qFlatSurfFluxCmd

G4UIcommand* G4ScoreQuantityMessenger::qFlatSurfFluxCmd
private

Definition at line 105 of file G4ScoreQuantityMessenger.hh.

◆ qGetUnitCmd

G4UIcmdWithoutParameter* G4ScoreQuantityMessenger::qGetUnitCmd
private

Definition at line 90 of file G4ScoreQuantityMessenger.hh.

◆ qMinKinEAtGeneCmd

G4UIcommand* G4ScoreQuantityMessenger::qMinKinEAtGeneCmd
private

Definition at line 114 of file G4ScoreQuantityMessenger.hh.

◆ qNofCollisionCmd

G4UIcommand* G4ScoreQuantityMessenger::qNofCollisionCmd
private

Definition at line 110 of file G4ScoreQuantityMessenger.hh.

◆ qnOfSecondaryCmd

G4UIcommand* G4ScoreQuantityMessenger::qnOfSecondaryCmd
private

Definition at line 99 of file G4ScoreQuantityMessenger.hh.

◆ qnOfStepCmd

G4UIcommand* G4ScoreQuantityMessenger::qnOfStepCmd
private

Definition at line 98 of file G4ScoreQuantityMessenger.hh.

◆ qPassCellCurrCmd

G4UIcommand* G4ScoreQuantityMessenger::qPassCellCurrCmd
private

Definition at line 102 of file G4ScoreQuantityMessenger.hh.

◆ qPassCellFluxCmd

G4UIcommand* G4ScoreQuantityMessenger::qPassCellFluxCmd
private

Definition at line 95 of file G4ScoreQuantityMessenger.hh.

◆ qPassTrackLengthCmd

G4UIcommand* G4ScoreQuantityMessenger::qPassTrackLengthCmd
private

Definition at line 103 of file G4ScoreQuantityMessenger.hh.

◆ qPopulationCmd

G4UIcommand* G4ScoreQuantityMessenger::qPopulationCmd
private

Definition at line 111 of file G4ScoreQuantityMessenger.hh.

◆ qSetUnitCmd

G4UIcmdWithAString* G4ScoreQuantityMessenger::qSetUnitCmd
private

Definition at line 91 of file G4ScoreQuantityMessenger.hh.

◆ qStepCheckerCmd

G4UIcommand* G4ScoreQuantityMessenger::qStepCheckerCmd
private

Definition at line 116 of file G4ScoreQuantityMessenger.hh.

◆ qTerminationCmd

G4UIcommand* G4ScoreQuantityMessenger::qTerminationCmd
private

Definition at line 113 of file G4ScoreQuantityMessenger.hh.

◆ qTouchCmd

G4UIcmdWithAString* G4ScoreQuantityMessenger::qTouchCmd
private

Definition at line 89 of file G4ScoreQuantityMessenger.hh.

◆ qTrackCountCmd

G4UIcommand* G4ScoreQuantityMessenger::qTrackCountCmd
private

Definition at line 112 of file G4ScoreQuantityMessenger.hh.

◆ qTrackLengthCmd

G4UIcommand* G4ScoreQuantityMessenger::qTrackLengthCmd
private

Definition at line 101 of file G4ScoreQuantityMessenger.hh.

◆ quantityDir

G4UIdirectory* G4ScoreQuantityMessenger::quantityDir
private

Definition at line 88 of file G4ScoreQuantityMessenger.hh.


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