51 msDirectory->
SetGuidance(
"Material scanner commands.");
55 scanCmd->
SetGuidance(
"Scanning range should be defined with");
57 "/control/matScan/theta and /control/matSca/phi commands.");
60 thetaCmd =
new G4UIcommand(
"/control/matScan/theta",
this);
63 "Usage : /control/matScan/theta [nbin] [thetaMin] [thetaSpan] [unit]");
66 " theta --- +Z axis : +90 deg. / X-Y plane : 0 deg. / -Z axis : -90 deg.");
81 phiCmd =
new G4UIcommand(
"/control/matScan/phi",
this);
84 "Usage : /control/matScan/phi [nbin] [phiMin] [phiSpan] [unit]");
87 " phi --- +X axis : 0 deg. / +Y axis : 90 deg. / -X axis : 180 "
88 "deg. / -Y axis : 270 deg.");
103 singleCmd =
new G4UIcommand(
"/control/matScan/singleMeasure",
this);
104 singleCmd->
SetGuidance(
"Measure thickness for one particular direction.");
107 " theta --- +Z axis : +90 deg. / X-Y plane : 0 deg. / -Z axis : -90 deg.");
109 " phi --- +X axis : 0 deg. / +Y axis : 90 deg. / -X axis : "
110 "180 deg. / -Y axis : 270 deg.");
124 "Measure thickness for one direction defined by a unit vector.");
129 eyePosCmd->
SetGuidance(
"Define the eye position.");
134 regSenseCmd =
new G4UIcmdWithABool(
"/control/matScan/regionSensitive",
this);
135 regSenseCmd->
SetGuidance(
"Set region sensitivity.");
136 regSenseCmd->
SetGuidance(
"This command is automatically set to TRUE");
137 regSenseCmd->
SetGuidance(
" if /control/matScan/region command is issued.");
142 regionCmd->
SetGuidance(
"Define region name to be scanned.");
144 "/control/matScan/regionSensitive command is automatically");
145 regionCmd->
SetGuidance(
"set to TRUE with this command.");
166 if(command == thetaCmd)
176 else if(command == phiCmd)
184 else if(command == eyePosCmd)
189 else if(command == regSenseCmd)
194 else if(command == regionCmd)
203 if(command == scanCmd)
207 else if(command == thetaCmd)
214 thetaMin *= thetaCmd->
ValueOf(unit);
215 thetaSpan *= thetaCmd->
ValueOf(unit);
220 else if(command == phiCmd)
227 phiMin *= phiCmd->
ValueOf(unit);
228 phiSpan *= phiCmd->
ValueOf(unit);
233 else if(command == eyePosCmd)
237 else if(command == regSenseCmd)
241 else if(command == regionCmd)
246 else if(command == singleCmd || command == single2Cmd)
257 if(command == singleCmd)
260 theta =
StoD(next());
263 theta *= singleCmd->
ValueOf(unit);
264 phi *= singleCmd->
ValueOf(unit);
266 else if(command == single2Cmd)
269 theta = 90. * deg - v.
theta();
CLHEP::Hep3Vector G4ThreeVector
virtual ~G4MatScanMessenger()
virtual G4String GetCurrentValue(G4UIcommand *command)
G4MatScanMessenger(G4MaterialScanner *p1)
virtual void SetNewValue(G4UIcommand *command, G4String newValue)
G4String GetRegionName() const
G4bool GetRegionSensitive() const
void SetThetaSpan(G4double val)
G4bool SetRegionName(const G4String &val)
G4double GetThetaMin() const
void SetRegionSensitive(G4bool val=true)
void SetThetaMin(G4double val)
G4double GetThetaSpan() const
void SetPhiMin(G4double val)
void SetEyePosition(const G4ThreeVector &val)
void SetPhiSpan(G4double val)
G4ThreeVector GetEyePosition() const
G4double GetPhiMin() const
G4double GetPhiSpan() const
void SetNTheta(G4int val)
void SetDefaultUnit(const char *defUnit)
static G4ThreeVector GetNew3VectorValue(const char *paramString)
void SetParameterName(const char *theNameX, const char *theNameY, const char *theNameZ, G4bool omittable, G4bool currentAsDefault=false)
void SetDefaultValue(G4ThreeVector defVal)
static G4ThreeVector GetNew3VectorValue(const char *paramString)
void SetParameterName(const char *theNameX, const char *theNameY, const char *theNameZ, G4bool omittable, G4bool currentAsDefault=false)
static G4bool GetNewBoolValue(const char *paramString)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetDefaultValue(G4bool defVal)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetDefaultValue(const char *defVal)
static G4String CategoryOf(const char *unitName)
static G4double ValueOf(const char *unitName)
static G4String ConvertToString(G4bool boolVal)
void SetParameter(G4UIparameter *const newParameter)
void SetGuidance(const char *aGuidance)
static G4String UnitsList(const char *unitCategory)
void AvailableForStates(G4ApplicationState s1)
G4double StoD(G4String s)
void SetDefaultValue(const char *theDefaultValue)
void SetParameterRange(const char *theRange)
void SetParameterCandidates(const char *theString)