Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
G4ScoreQuantityMessengerQCmd.cc
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27// $Id$
28//
29// ---------------------------------------------------------------------
30// Modifications
31// 08-Oct-2010 T.Aso remove unit of G4PSPassageCellCurrent.
32// 01-Jun-2012 T.Aso Support weighted/dividedByArea options
33// in flatCurrent and flatFulx commands.
34// ---------------------------------------------------------------------
35
37#include "G4ScoringManager.hh"
38#include "G4VScoringMesh.hh"
39
40#include "G4PSCellCharge3D.hh"
41#include "G4PSCellFlux3D.hh"
44#include "G4PSDoseDeposit3D.hh"
45#include "G4PSNofStep3D.hh"
46#include "G4PSNofSecondary3D.hh"
47//
48#include "G4PSTrackLength3D.hh"
57#include "G4PSNofCollision3D.hh"
58#include "G4PSPopulation3D.hh"
59#include "G4PSTrackCounter3D.hh"
60#include "G4PSTermination3D.hh"
61
62#include "G4SDChargedFilter.hh"
63#include "G4SDNeutralFilter.hh"
65#include "G4SDParticleFilter.hh"
67
68#include "G4UIdirectory.hh"
71#include "G4UIcmdWithAString.hh"
72#include "G4UIcmdWithABool.hh"
75#include "G4UIcommand.hh"
76#include "G4Tokenizer.hh"
77#include "G4UnitsTable.hh"
78
79void G4ScoreQuantityMessenger::QuantityCommands()
80{
81 G4UIparameter* param;
82
83 //
84 // Quantity commands
85 quantityDir = new G4UIdirectory("/score/quantity/");
86 quantityDir->SetGuidance("Scoring quantity of the mesh.");
87 //
88 qTouchCmd= new G4UIcmdWithAString("/score/quantity/touch",this);
89 qTouchCmd->SetGuidance("Assign previously defined quantity to the current quantity.");
90 qTouchCmd->SetParameterName("qname",false);
91 //
92 qGetUnitCmd = new G4UIcmdWithoutParameter("/score/quantity/get/unit",this);
93 qGetUnitCmd->SetGuidance("Print output unit of the current quantity.");
94 //
95 qSetUnitCmd = new G4UIcmdWithAString("/score/quantity/set/unit",this);
96 qSetUnitCmd->SetGuidance("Set output unit of the current quantity.");
97 qSetUnitCmd->SetParameterName("unit",false);
98
99 // Primitive Scorers
100 qeDepCmd = new G4UIcommand("/score/quantity/energyDeposit",this);
101 qeDepCmd->SetGuidance("Energy deposit scorer.");
102 qeDepCmd->
103 SetGuidance("[usage] /score/quantiy/energyDeposit qname unit");
104 qeDepCmd->SetGuidance(" qname :(String) scorer name");
105 qeDepCmd->SetGuidance(" unit :(String) unit");
106 param = new G4UIparameter("qname",'s',false);
107 qeDepCmd->SetParameter(param);
108 param = new G4UIparameter("unit",'s',true);
109 param->SetDefaultValue("MeV");
110 qeDepCmd->SetParameter(param);
111 //
112 qCellChgCmd = new G4UIcommand("/score/quantity/cellCharge",this);
113 qCellChgCmd->SetGuidance("Cell charge scorer.");
114 qCellChgCmd->
115 SetGuidance("[usage] /score/quantiy/cellCharge qname unit");
116 qCellChgCmd->SetGuidance(" qname :(String) scorer name");
117 qCellChgCmd->SetGuidance(" unit :(String) unit");
118 param = new G4UIparameter("qname",'s',false);
119 qCellChgCmd->SetParameter(param);
120 param = new G4UIparameter("unit",'s',true);
121 param->SetDefaultValue("e+");
122 qCellChgCmd->SetParameter(param);
123 //
124 qCellFluxCmd = new G4UIcommand("/score/quantity/cellFlux",this);
125 qCellFluxCmd->SetGuidance("Cell flux scorer.");
126 qCellFluxCmd->
127 SetGuidance("[usage] /score/quantiy/cellFlux qname unit");
128 qCellFluxCmd->SetGuidance(" qname :(String) scorer name");
129 qCellFluxCmd->SetGuidance(" unit :(String) unit");
130 param = new G4UIparameter("qname",'s',false);
131 qCellFluxCmd->SetParameter(param);
132 param = new G4UIparameter("unit",'s',true);
133 param->SetDefaultValue("percm2");
134 qCellFluxCmd->SetParameter(param);
135 //
136 qPassCellFluxCmd = new G4UIcommand("/score/quantity/passageCellFlux",this);
137 qPassCellFluxCmd->SetGuidance("Passage cell flux scorer");
138 qPassCellFluxCmd->
139 SetGuidance("[usage] /score/quantiy/passageCellFlux qname unit");
140 qPassCellFluxCmd->SetGuidance(" qname :(String) scorer name");
141 qPassCellFluxCmd->SetGuidance(" unit :(String) unit");
142 param = new G4UIparameter("qname",'s',false);
143 qPassCellFluxCmd->SetParameter(param);
144 param = new G4UIparameter("unit",'s',true);
145 param->SetDefaultValue("percm2");
146 qPassCellFluxCmd->SetParameter(param);
147 //
148 qdoseDepCmd = new G4UIcommand("/score/quantity/doseDeposit",this);
149 qdoseDepCmd->SetGuidance("Dose deposit scorer.");
150 qdoseDepCmd->
151 SetGuidance("[usage] /score/quantiy/doseDeposit qname unit");
152 qdoseDepCmd->SetGuidance(" qname :(String) scorer name");
153 qdoseDepCmd->SetGuidance(" unit :(String) unit");
154 param = new G4UIparameter("qname",'s',false);
155 qdoseDepCmd->SetParameter(param);
156 param = new G4UIparameter("unit",'s',true);
157 param->SetDefaultValue("Gy");
158 qdoseDepCmd->SetParameter(param);
159 //
160 qnOfStepCmd = new G4UIcommand("/score/quantity/nOfStep",this);
161 qnOfStepCmd->SetGuidance("Number of step scorer.");
162 qnOfStepCmd->
163 SetGuidance("[usage] /score/quantiy/nOfStep qname");
164 qnOfStepCmd->SetGuidance(" qname :(String) scorer name");
165 param = new G4UIparameter("qname",'s',false);
166 qnOfStepCmd->SetParameter(param);
167 //
168 qnOfSecondaryCmd = new G4UIcommand("/score/quantity/nOfSecondary",this);
169 qnOfSecondaryCmd->SetGuidance("Number of secondary scorer.");
170 qnOfSecondaryCmd->
171 SetGuidance("[usage] /score/quantiy/nOfSecondary qname");
172 qnOfSecondaryCmd->SetGuidance(" qname :(String) scorer name");
173 param = new G4UIparameter("qname",'s',false);
174 qnOfSecondaryCmd->SetParameter(param);
175 //
176 qTrackLengthCmd = new G4UIcommand("/score/quantity/trackLength",this);
177 qTrackLengthCmd->SetGuidance("Track length scorer.");
178 qTrackLengthCmd->
179 SetGuidance("[usage] /score/quantiy/trackLength qname wflag kflag vflag unit");
180 qTrackLengthCmd->SetGuidance(" qname :(String) scorer name");
181 qTrackLengthCmd->SetGuidance(" wflag :(Bool) weighted");
182 qTrackLengthCmd->SetGuidance(" kflag :(Bool) multiply kinetic energy");
183 qTrackLengthCmd->SetGuidance(" vflag :(Bool) divide by velocity");
184 qTrackLengthCmd->SetGuidance(" unit :(String) unit");
185 param = new G4UIparameter("qname",'s',false);
186 qTrackLengthCmd->SetParameter(param);
187 param = new G4UIparameter("wflag",'b',true);
188 param->SetDefaultValue("false");
189 qTrackLengthCmd->SetParameter(param);
190 param = new G4UIparameter("kflag",'b',true);
191 param->SetDefaultValue("false");
192 qTrackLengthCmd->SetParameter(param);
193 param = new G4UIparameter("vflag",'b',true);
194 param->SetDefaultValue("false");
195 qTrackLengthCmd->SetParameter(param);
196 param = new G4UIparameter("unit",'s',true);
197 param->SetDefaultValue("mm");
198 qTrackLengthCmd->SetParameter(param);
199 //
200 qPassCellCurrCmd = new G4UIcommand("/score/quantity/passageCellCurrent",this);
201 qPassCellCurrCmd->SetGuidance("Passage cell current scorer.");
202 qPassCellCurrCmd->
203 SetGuidance("[usage] /score/quantiy/passageCellCurrent qname wflag");
204 //SetGuidance("[usage] /score/quantiy/passageCellCurrent qname wflag unit");
205 qPassCellCurrCmd->SetGuidance(" qname :(String) scorer name");
206 qPassCellCurrCmd->SetGuidance(" wflag :(Bool) weighted");
207 //qPassCellCurrCmd->SetGuidance(" unit :(Bool) unit");
208 param = new G4UIparameter("qname",'s',false);
209 qPassCellCurrCmd->SetParameter(param);
210 param = new G4UIparameter("wflag",'b',true);
211 param->SetDefaultValue("true");
212 qPassCellCurrCmd->SetParameter(param);
213 //param = new G4UIparameter("unit",'s',true);
214 //param->SetDefaultValue("parcm2");
215 //qPassCellCurrCmd->SetParameter(param);
216 //
217 qPassTrackLengthCmd = new G4UIcommand("/score/quantity/passageTrackLength",this);
218 qPassTrackLengthCmd->SetGuidance("Passage track length scorer.");
219 qPassTrackLengthCmd->
220 SetGuidance("[usage] /score/quantiy/passageTrackLength qname wflag unit");
221 qPassTrackLengthCmd->SetGuidance(" qname :(String) scorer name");
222 qPassTrackLengthCmd->SetGuidance(" wflag :(Bool) weighted");
223 qPassTrackLengthCmd->SetGuidance(" unit :(Bool) unit");
224 param = new G4UIparameter("qname",'s',false);
225 qPassTrackLengthCmd->SetParameter(param);
226 param = new G4UIparameter("wflag",'b',true);
227 param->SetDefaultValue("true");
228 qPassTrackLengthCmd->SetParameter(param);
229 param = new G4UIparameter("unit",'s',true);
230 param->SetDefaultValue("mm");
231 qPassTrackLengthCmd->SetParameter(param);
232 //
233 qFlatSurfCurrCmd = new G4UIcommand("/score/quantity/flatSurfaceCurrent",this);
234 qFlatSurfCurrCmd->SetGuidance("Flat surface current Scorer.");
235 qFlatSurfCurrCmd->
236 SetGuidance("[usage] /score/quantiy/flatSurfaceCurrent qname dflag wflag aflag unit");
237 qFlatSurfCurrCmd->SetGuidance(" qname :(String) scorer name");
238 qFlatSurfCurrCmd->SetGuidance(" dflag :(Int) direction flag");
239 qFlatSurfCurrCmd->SetGuidance(" : 0 = Both In and Out");
240 qFlatSurfCurrCmd->SetGuidance(" : 1 = In only");
241 qFlatSurfCurrCmd->SetGuidance(" : 2 = Out only");
242 qFlatSurfCurrCmd->SetGuidance(" wflag :(Bool) weighted");
243 qFlatSurfCurrCmd->SetGuidance(" aflag :(Bool) divide by area");
244 qFlatSurfCurrCmd->SetGuidance(" unit :(Bool) unit");
245 param = new G4UIparameter("qname",'s',false);
246 qFlatSurfCurrCmd->SetParameter(param);
247 param = new G4UIparameter("dflag",'i',true);
248 param->SetDefaultValue("0");
249 qFlatSurfCurrCmd->SetParameter(param);
250 param = new G4UIparameter("wflag",'b',true);
251 param->SetDefaultValue("true");
252 qFlatSurfCurrCmd->SetParameter(param);
253 param = new G4UIparameter("aflag",'b',true);
254 param->SetDefaultValue("true");
255 qFlatSurfCurrCmd->SetParameter(param);
256 param = new G4UIparameter("unit",'s',true);
257 param->SetDefaultValue("percm2");
258 qFlatSurfCurrCmd->SetParameter(param);
259 //
260 qFlatSurfFluxCmd = new G4UIcommand("/score/quantity/flatSurfaceFlux",this);
261 qFlatSurfFluxCmd->SetGuidance("Flat surface flux scorer.");
262 qFlatSurfFluxCmd->
263 SetGuidance("[usage] /score/quantiy/flatSurfaceFlux qname dflag unit");
264 qFlatSurfFluxCmd->SetGuidance(" qname :(String) scorer name");
265 qFlatSurfFluxCmd->SetGuidance(" dflag :(Int) direction flag");
266 qFlatSurfFluxCmd->SetGuidance(" : 0 = Both In and Out");
267 qFlatSurfFluxCmd->SetGuidance(" : 1 = In only");
268 qFlatSurfFluxCmd->SetGuidance(" : 2 = Out only");
269 qFlatSurfFluxCmd->SetGuidance(" wflag :(Bool) weighted");
270 qFlatSurfFluxCmd->SetGuidance(" aflag :(Bool) divide by area");
271 qFlatSurfFluxCmd->SetGuidance(" unit :(String) unit");
272 param = new G4UIparameter("qname",'s',false);
273 qFlatSurfFluxCmd->SetParameter(param);
274 param = new G4UIparameter("dflag",'i',true);
275 param->SetDefaultValue("0");
276 qFlatSurfFluxCmd->SetParameter(param);
277 param = new G4UIparameter("wflag",'b',true);
278 param->SetDefaultValue("true");
279 qFlatSurfFluxCmd->SetParameter(param);
280 param = new G4UIparameter("aflag",'b',true);
281 param->SetDefaultValue("true");
282 qFlatSurfFluxCmd->SetParameter(param);
283 param = new G4UIparameter("unit",'s',true);
284 param->SetDefaultValue("percm2");
285 qFlatSurfFluxCmd->SetParameter(param);
286 //
287// qSphereSurfCurrCmd = new G4UIcommand("/score/quantity/sphereSurfaceCurrent",this);
288// qSphereSurfCurrCmd->SetGuidance("Sphere surface current Scorer.");
289// qSphereSurfCurrCmd->
290// SetGuidance("[usage] /score/quantiy/sphereSurfaceCurrent qname dflag wflag aflag unit");
291// qSphereSurfCurrCmd->SetGuidance(" qname :(String) scorer name");
292// qSphereSurfCurrCmd->SetGuidance(" dflag :(Int) direction flag");
293// qSphereSurfCurrCmd->SetGuidance(" : 0 = Both In and Out");
294// qSphereSurfCurrCmd->SetGuidance(" : 1 = In only");
295// qSphereSurfCurrCmd->SetGuidance(" : 2 = Out only");
296// qSphereSurfCurrCmd->SetGuidance(" wflag :(Bool) Weighted");
297// qSphereSurfCurrCmd->SetGuidance(" aflag :(Bool) DivideByArea");
298// qSphereSurfCurrCmd->SetGuidance(" unit :(String) unit");
299// param = new G4UIparameter("qname",'s',false);
300// qSphereSurfCurrCmd->SetParameter(param);
301// param = new G4UIparameter("dflag",'i',true);
302// param->SetDefaultValue("0");
303// qSphereSurfCurrCmd->SetParameter(param);
304// param = new G4UIparameter("wflag",'b',true);
305// param->SetDefaultValue("true");
306// qSphereSurfCurrCmd->SetParameter(param);
307// param = new G4UIparameter("aflag",'b',true);
308// param->SetDefaultValue("true");
309// qSphereSurfCurrCmd->SetParameter(param);
310// param = new G4UIparameter("unit",'s',true);
311// param->SetDefaultValue("percm2");
312// qSphereSurfCurrCmd->SetParameter(param);
313
314 //
315// qSphereSurfFluxCmd = new G4UIcommand("/score/quantity/sphereSurfaceFlux",this);
316// qSphereSurfFluxCmd->SetGuidance("Sphere surface Flux Scorer.");
317// qSphereSurfFluxCmd->
318// SetGuidance("[usage] /score/quantiy/sphereSurfaceFlux qname dflag unit");
319// qSphereSurfFluxCmd->SetGuidance(" qname :(String) scorer name");
320// qSphereSurfFluxCmd->SetGuidance(" dflag :(Int) direction flag");
321// qSphereSurfFluxCmd->SetGuidance(" : 0 = Both In and Out");
322// qSphereSurfFluxCmd->SetGuidance(" : 1 = In only");
323// qSphereSurfFluxCmd->SetGuidance(" : 2 = Out only");
324// qSphereSurfFluxCmd->SetGuidance(" wflag :(Bool) weighted");
325// qSphereSurfFluxCmd->SetGuidance(" aflag :(Bool) divide by area");
326// qSphereSurfFluxCmd->SetGuidance(" unit :(String) unit");
327// param = new G4UIparameter("qname",'s',false);
328// qSphereSurfFluxCmd->SetParameter(param);
329// param = new G4UIparameter("dflag",'i',true);
330// param->SetDefaultValue("0");
331// qSphereSurfFluxCmd->SetParameter(param);
332// param = new G4UIparameter("wflag",'b',true);
333// param->SetDefaultValue("true");
334// qSphereSurfFluxCmd->SetParameter(param);
335// param = new G4UIparameter("aflag",'b',true);
336// param->SetDefaultValue("true");
337// qSphereSurfFluxCmd->SetParameter(param);
338// param = new G4UIparameter("unit",'s',true);
339// param->SetDefaultValue("percm2");
340// qSphereSurfFluxCmd->SetParameter(param);
341
342 //
343// qCylSurfCurrCmd = new G4UIcommand("/score/quantity/cylinderSurfaceCurrent",this);
344// qCylSurfCurrCmd->SetGuidance("Cylinder surface current Scorer.");
345// qCylSurfCurrCmd->
346// SetGuidance("[usage] /score/quantiy/cylinderSurfaceCurrent qname dflag wflag aflag unit");
347// qCylSurfCurrCmd->SetGuidance(" qname :(String) scorer name");
348// qCylSurfCurrCmd->SetGuidance(" dflag :(Int) direction flag");
349// qCylSurfCurrCmd->SetGuidance(" : 0 = Both In and Out");
350// qCylSurfCurrCmd->SetGuidance(" : 1 = In only");
351// qCylSurfCurrCmd->SetGuidance(" : 2 = Out only");
352// qCylSurfCurrCmd->SetGuidance(" wflag :(Bool) Weighted");
353// qCylSurfCurrCmd->SetGuidance(" aflag :(Bool) DivideByArea");
354// qCylSurfCurrCmd->SetGuidance(" unit :(String) unit");
355// param = new G4UIparameter("qname",'s',false);
356// qCylSurfCurrCmd->SetParameter(param);
357// param = new G4UIparameter("dflag",'i',true);
358// param->SetDefaultValue("0");
359// qCylSurfCurrCmd->SetParameter(param);
360// param = new G4UIparameter("wflag",'b',true);
361// param->SetDefaultValue("true");
362// qCylSurfCurrCmd->SetParameter(param);
363// param = new G4UIparameter("aflag",'b',true);
364// param->SetDefaultValue("true");
365// qCylSurfCurrCmd->SetParameter(param);
366// param = new G4UIparameter("unit",'s',true);
367// param->SetDefaultValue("percm2");
368// qCylSurfCurrCmd->SetParameter(param);
369//
370// qCylSurfFluxCmd = new G4UIcommand("/score/quantity/cylinderSurfaceFlux",this);
371// qCylSurfFluxCmd->SetGuidance("Cylinder surface Flux Scorer.");
372// qCylSurfFluxCmd->
373// SetGuidance("[usage] /score/quantiy/cylinderSurfaceFlux qname dflag unit");
374// qCylSurfFluxCmd->SetGuidance(" qname :(String) scorer name");
375// qCylSurfFluxCmd->SetGuidance(" dflag :(Int) direction flag");
376// qCylSurfFluxCmd->SetGuidance(" : 0 = Both In and Out");
377// qCylSurfFluxCmd->SetGuidance(" : 1 = In only");
378// qCylSurfFluxCmd->SetGuidance(" : 2 = Out only");
379// qCylSurfFluxCmd->SetGuidance(" wflag :(Bool) weighted");
380// qCylSurfFluxCmd->SetGuidance(" aflag :(Bool) divide by area");
381// qCylSurfFluxCmd->SetGuidance(" unit :(String) unit");
382// param = new G4UIparameter("qname",'s',false);
383// qCylSurfFluxCmd->SetParameter(param);
384// param = new G4UIparameter("dflag",'i',true);
385// param->SetDefaultValue("0");
386// qCylSurfFluxCmd->SetParameter(param);
387// param = new G4UIparameter("wflag",'b',true);
388// param->SetDefaultValue("true");
389// qCylSurfFluxCmd->SetParameter(param);
390// param = new G4UIparameter("aflag",'b',true);
391// param->SetDefaultValue("true");
392// qCylSurfFluxCmd->SetParameter(param);
393// param = new G4UIparameter("unit",'s',true);
394// param->SetDefaultValue("percm2");
395// qCylSurfFluxCmd->SetParameter(param);
396//
397 //
398 qNofCollisionCmd = new G4UIcommand("/score/quantity/nOfCollision",this);
399 qNofCollisionCmd->SetGuidance("Number of collision scorer.");
400 qNofCollisionCmd->
401 SetGuidance("[usage] /score/quantiy/nOfCollision qname wflag");
402 qNofCollisionCmd->SetGuidance(" qname :(String) scorer name");
403 param = new G4UIparameter("qname",'s',false);
404 qNofCollisionCmd->SetParameter(param);
405 param = new G4UIparameter("wflag",'b',true);
406 param->SetDefaultValue("false");
407 qNofCollisionCmd->SetParameter(param);
408 //
409 qPopulationCmd = new G4UIcommand("/score/quantity/population",this);
410 qPopulationCmd->SetGuidance("Population scorer.");
411 qPopulationCmd->
412 SetGuidance("[usage] /score/quantiy/population qname wflag");
413 qPopulationCmd->SetGuidance(" qname :(String) scorer name");
414 qPopulationCmd->SetGuidance(" wflag :(Bool) weighted");
415 param = new G4UIparameter("qname",'s',false);
416 qPopulationCmd->SetParameter(param);
417 param = new G4UIparameter("wflag",'b',true);
418 param->SetDefaultValue("false");
419 qPopulationCmd->SetParameter(param);
420
421 //
422 qTrackCountCmd = new G4UIcommand("/score/quantity/nOfTrack",this);
423 qTrackCountCmd->SetGuidance("Number of track scorer.");
424 qTrackCountCmd->
425 SetGuidance("[usage] /score/quantiy/nOfTrack qname dflag wflag");
426 qTrackCountCmd->SetGuidance(" qname :(String) scorer name");
427 qTrackCountCmd->SetGuidance(" dflag :(Int) direction");
428 qTrackCountCmd->SetGuidance(" : 0 = Both In and Out");
429 qTrackCountCmd->SetGuidance(" : 1 = In only");
430 qTrackCountCmd->SetGuidance(" : 2 = Out only");
431 qTrackCountCmd->SetGuidance(" wflag :(Bool) weighted");
432 param = new G4UIparameter("qname",'s',false);
433 qTrackCountCmd->SetParameter(param);
434 param = new G4UIparameter("dflag",'i',true);
435 param->SetDefaultValue("0");
436 qTrackCountCmd->SetParameter(param);
437 param = new G4UIparameter("wflag",'b',true);
438 param->SetDefaultValue("false");
439 qTrackCountCmd->SetParameter(param);
440
441 //
442 qTerminationCmd = new G4UIcommand("/score/quantity/nOfTerminatedTrack",this);
443 qTerminationCmd->SetGuidance("Number of terminated tracks scorer.");
444 qTerminationCmd->
445 SetGuidance("[usage] /score/quantiy/nOfTerminatedTrack qname wflag");
446 qTerminationCmd->SetGuidance(" qname :(String) scorer name");
447 qTerminationCmd->SetGuidance(" wflag :(Bool) weighted");
448 param = new G4UIparameter("qname",'s',false);
449 qTerminationCmd->SetParameter(param);
450 param = new G4UIparameter("wflag",'b',true);
451 param->SetDefaultValue("false");
452 qTerminationCmd->SetParameter(param);
453
454 //
455 qMinKinEAtGeneCmd = new G4UIcommand("/score/quantity/minKinEAtGeneration",this);
456 qMinKinEAtGeneCmd->SetGuidance("Min Kinetic Energy at Generation");
457 qMinKinEAtGeneCmd->
458 SetGuidance("[usage] /score/quantiy/minKinEAtGeneration qname");
459 qMinKinEAtGeneCmd->SetGuidance(" qname :(String) scorer name");
460 param = new G4UIparameter("qname",'s',false);
461 qMinKinEAtGeneCmd->SetParameter(param);
462 //
463 qStepCheckerCmd = new G4UIcommand("/score/quantity/stepChecker",this);
464 qStepCheckerCmd->SetGuidance("Display a comment when this PS is invoked");
465 qStepCheckerCmd->
466 SetGuidance("[usage] /score/quantiy/stepChecker qname");
467 qStepCheckerCmd->SetGuidance(" qname :(String) scorer name");
468 param = new G4UIparameter("qname",'s',false);
469 qStepCheckerCmd->SetParameter(param);
470
471}
472
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetParameter(G4UIparameter *const newParameter)
Definition: G4UIcommand.hh:147
void SetGuidance(const char *aGuidance)
Definition: G4UIcommand.hh:156
void SetDefaultValue(const char *theDefaultValue)