63 fOpticalPhysics(opticalPhysics),
65 fActivateProcessCmd(0),
66 fSetOpProcessVerboseCmd(0),
67 fSetCerenkovMaxPhotonsCmd(0),
68 fSetCerenkovMaxBetaChangeCmd(0),
69 fSetScintillationYieldFactorCmd(0),
70 fSetScintillationByParticleTypeCmd(0),
71 fSetWLSTimeProfileCmd(0),
72 fSetTrackSecondariesFirstCmd(0),
73 fSetFiniteRiseTimeCmd(0)
75 G4bool toBeBroadcasted =
false;
77 fDir->
SetGuidance(
"Commands related to the optical physics simulation engine.");
79 fDir2->
SetGuidance(
"Commands related to the optical physics simulation engine.");
152 fSetFiniteRiseTimeCmd->
SetGuidance(
"If set, the G4Scintillation process expects the user to have set the constant material property FAST/SLOWSCINTILLATIONRISETIME");
187 std::istringstream is(newValue.
data());
191 if ( pn ==
"Cerenkov" ) {
193 }
else if ( pn ==
"Scintillation" ) {
195 }
else if ( pn ==
"OpAbsorption" ) {
197 }
else if ( pn ==
"OpRayleigh" ) {
199 }
else if ( pn ==
"OpMieHG" ) {
201 }
else if ( pn ==
"OpBoundary" ) {
203 }
else if ( pn ==
"OpWLS" ) {
207 msg <<
"Not allowed process name: "<<pn<<
" (UI: "<<newValue<<
")";
214 std::istringstream is(newValue.
data());
218 if ( pn ==
"Cerenkov" ) {
220 }
else if ( pn ==
"Scintillation" ) {
222 }
else if ( pn ==
"OpAbsorption" ) {
224 }
else if ( pn ==
"OpRayleigh" ) {
226 }
else if ( pn ==
"OpMieHG" ) {
228 }
else if ( pn ==
"OpBoundary" ) {
230 }
else if ( pn ==
"OpWLS" ) {
234 msg <<
"Not allowed process name: "<<pn<<
" (UI: "<<newValue<<
")";
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
G4OpticalPhysics * fOpticalPhysics
associated class
virtual void SetNewValue(G4UIcommand *, G4String)
void SetParameter(G4UIparameter *const newParameter)
G4UIcmdWithABool * fSetFiniteRiseTimeCmd
setFiniteRiseTime command
Number of processes, no selected process.
std::ostringstream G4ExceptionDescription
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
G4OpticalProcessIndex fSelectedProcessIndex
selected optical process
static G4int GetNewIntValue(const char *paramString)
void SetMaxBetaChangePerStep(G4double)
void SetParameterCandidates(const char *theString)
virtual ~G4OpticalPhysicsMessenger()
void SetDefaultValue(const char *theDefaultValue)
G4UIcmdWithAString * fSetWLSTimeProfileCmd
setWLSTimeProfile command
Scintillation process index.
G4UIcommand * fActivateProcessCmd
selectOpProcess command
Mie scattering process index.
G4UIcmdWithAnInteger * fSetOpProcessVerboseCmd
setProcessVerbose command
void SetFiniteRiseTime(G4bool)
Absorption process index.
static G4bool GetNewBoolValue(const char *paramString)
void SetScintillationByParticleType(G4bool)
G4UIcmdWithAnInteger * fSetCerenkovMaxPhotonsCmd
setCerenkovMaxPhotons command
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetMaxNumPhotonsPerStep(G4int)
void Configure(G4OpticalProcessIndex, G4bool)
static G4double GetNewDoubleValue(const char *paramString)
void SetRange(const char *rs)
void SetGuidance(const char *aGuidance)
void AvailableForStates(G4ApplicationState s1)
void SetVerboseLevel(G4int value)
G4UIcmdWithABool * fSetScintillationByParticleTypeCmd
setScintillationByParticleType command
Wave Length Shifting process index.
G4OpticalPhysicsMessenger()
Not implemented.
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4UIdirectory * fDir
command directory
const char * data() const
G4String G4OpticalProcessName(G4int)
Return the name for a given optical process index.
void SetScintillationYieldFactor(G4double)
void SetParameterName(const char *theName, G4bool omittable, G4bool currentAsDefault=false)
void SetWLSTimeProfile(G4String)
void SetTrackSecondariesFirst(G4OpticalProcessIndex, G4bool)
G4UIcmdWithADouble * fSetScintillationYieldFactorCmd
setScintillationYieldFactor command
void SetCandidates(const char *candidateList)
G4UIcmdWithADouble * fSetCerenkovMaxBetaChangeCmd
setCerenkovMaxBetaChange command
void SetDefaultValue(G4int defVal)
G4UIcommand * fSetTrackSecondariesFirstCmd
setTrackSecondariesFirst command
Rayleigh scattering process index.
void SetGuidance(const char *theGuidance)