52 msDirectory->
SetGuidance(
"Material scanner commands.");
56 scanCmd->
SetGuidance(
"Scanning range should be defined with");
57 scanCmd->
SetGuidance(
"/control/matScan/theta and /control/matSca/phi commands.");
60 thetaCmd =
new G4UIcommand(
"/control/matScan/theta",
this);
62 thetaCmd->
SetGuidance(
"Usage : /control/matScan/theta [nbin] [thetaMin] [thetaSpan] [unit]");
64 thetaCmd->
SetGuidance(
" theta --- +Z axis : +90 deg. / X-Y plane : 0 deg. / -Z axis : -90 deg.");
79 phiCmd =
new G4UIcommand(
"/control/matScan/phi",
this);
81 phiCmd->
SetGuidance(
"Usage : /control/matScan/phi [nbin] [phiMin] [phiSpan] [unit]");
84 " phi --- +X axis : 0 deg. / +Y axis : 90 deg. / -X axis : 180 "
85 "deg. / -Y axis : 270 deg.");
100 singleCmd =
new G4UIcommand(
"/control/matScan/singleMeasure",
this);
101 singleCmd->
SetGuidance(
"Measure thickness for one particular direction.");
103 singleCmd->
SetGuidance(
" theta --- +Z axis : +90 deg. / X-Y plane : 0 deg. / -Z axis : -90 deg.");
105 " phi --- +X axis : 0 deg. / +Y axis : 90 deg. / -X axis : "
106 "180 deg. / -Y axis : 270 deg.");
118 single2Cmd->
SetGuidance(
"Measure thickness for one direction defined by a unit vector.");
122 eyePosCmd->
SetGuidance(
"Define the eye position.");
127 regSenseCmd =
new G4UIcmdWithABool(
"/control/matScan/regionSensitive",
this);
128 regSenseCmd->
SetGuidance(
"Set region sensitivity.");
129 regSenseCmd->
SetGuidance(
"This command is automatically set to TRUE");
130 regSenseCmd->
SetGuidance(
" if /control/matScan/region command is issued.");
135 regionCmd->
SetGuidance(
"Define region name to be scanned.");
136 regionCmd->
SetGuidance(
"/control/matScan/regionSensitive command is automatically");
137 regionCmd->
SetGuidance(
"set to TRUE with this command.");
160 if (command == thetaCmd) {
167 else if (command == phiCmd) {
174 else if (command == eyePosCmd) {
177 else if (command == regSenseCmd) {
180 else if (command == regionCmd) {
189 if (command == scanCmd) {
192 else if (command == thetaCmd) {
198 thetaMin *= thetaCmd->
ValueOf(unit);
199 thetaSpan *= thetaCmd->
ValueOf(unit);
204 else if (command == phiCmd) {
210 phiMin *= phiCmd->
ValueOf(unit);
211 phiSpan *= phiCmd->
ValueOf(unit);
216 else if (command == eyePosCmd) {
219 else if (command == regSenseCmd) {
222 else if (command == regionCmd) {
225 else if (command == singleCmd || command == single2Cmd) {
235 if (command == singleCmd) {
237 theta =
StoD(next());
240 theta *= singleCmd->
ValueOf(unit);
241 phi *= singleCmd->
ValueOf(unit);
243 else if (command == single2Cmd) {
245 theta = 90. * deg - v.
theta();
CLHEP::Hep3Vector G4ThreeVector
void SetNewValue(G4UIcommand *command, G4String newValue) override
~G4MatScanMessenger() override
G4MatScanMessenger(G4MaterialScanner *p1)
G4String GetCurrentValue(G4UIcommand *command) override
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
const G4String & GetRegionName() 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(const 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(const G4String &s)
G4int StoI(const G4String &s)
void SetDefaultValue(const char *theDefaultValue)
void SetParameterRange(const char *theRange)
void SetParameterCandidates(const char *theString)