Geant4-11
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends
G4OpticalParameters Class Reference

#include <G4OpticalParameters.hh>

Public Member Functions

void Dump () const
 
G4int GetAbsorptionVerboseLevel () const
 
G4bool GetBoundaryInvokeSD () const
 
G4int GetBoundaryVerboseLevel () const
 
G4double GetCerenkovMaxBetaChange () const
 
G4int GetCerenkovMaxPhotonsPerStep () const
 
G4bool GetCerenkovStackPhotons () const
 
G4bool GetCerenkovTrackSecondariesFirst () const
 
G4int GetCerenkovVerboseLevel () const
 
G4int GetMieVerboseLevel () const
 
G4bool GetProcessActivation (const G4String &) const
 
G4int GetRayleighVerboseLevel () const
 
G4bool GetScintByParticleType () const
 
G4bool GetScintEnhancedTimeConstants () const
 
G4bool GetScintFiniteRiseTime () const
 
G4bool GetScintStackPhotons () const
 
G4bool GetScintTrackInfo () const
 
G4bool GetScintTrackSecondariesFirst () const
 
G4int GetScintVerboseLevel () const
 
G4int GetVerboseLevel () const
 
G4String GetWLS2TimeProfile () const
 
G4int GetWLS2VerboseLevel () const
 
G4String GetWLSTimeProfile () const
 
G4int GetWLSVerboseLevel () const
 
void SetAbsorptionVerboseLevel (G4int)
 
void SetBoundaryInvokeSD (G4bool)
 
void SetBoundaryVerboseLevel (G4int)
 
void SetCerenkovMaxBetaChange (G4double)
 
void SetCerenkovMaxPhotonsPerStep (G4int)
 
void SetCerenkovStackPhotons (G4bool)
 
void SetCerenkovTrackSecondariesFirst (G4bool)
 
void SetCerenkovVerboseLevel (G4int)
 
void SetDefaults ()
 
void SetMieVerboseLevel (G4int)
 
void SetProcessActivation (const G4String &, G4bool)
 
void SetRayleighVerboseLevel (G4int)
 
void SetScintByParticleType (G4bool)
 
void SetScintEnhancedTimeConstants (G4bool)
 
void SetScintFiniteRiseTime (G4bool)
 
void SetScintStackPhotons (G4bool)
 
void SetScintTrackInfo (G4bool)
 
void SetScintTrackSecondariesFirst (G4bool)
 
void SetScintVerboseLevel (G4int)
 
void SetVerboseLevel (G4int)
 
void SetWLS2TimeProfile (const G4String &)
 
void SetWLS2VerboseLevel (G4int)
 
void SetWLSTimeProfile (const G4String &)
 
void SetWLSVerboseLevel (G4int)
 
void StreamInfo (std::ostream &os) const
 
 ~G4OpticalParameters ()
 

Static Public Member Functions

static G4OpticalParametersInstance ()
 

Private Member Functions

 G4OpticalParameters ()
 
void Initialise ()
 
G4bool IsLocked () const
 
void PrintWarning (G4ExceptionDescription &ed) const
 

Private Attributes

G4int absorptionVerboseLevel
 
G4bool boundaryInvokeSD
 
G4int boundaryVerboseLevel
 
G4double cerenkovMaxBetaChange
 
G4int cerenkovMaxPhotons
 
G4bool cerenkovStackPhotons
 
G4bool cerenkovTrackSecondariesFirst
 
G4int cerenkovVerboseLevel
 
G4StateManagerfStateManager
 
G4int mieVerboseLevel
 
std::map< G4String, G4boolprocessActivation
 
G4int rayleighVerboseLevel
 
G4bool scintByParticleType
 
G4bool scintFiniteRiseTime
 
G4bool scintStackPhotons
 option to allow stacking of secondary Scintillation photons More...
 
G4bool scintTrackInfo
 
G4bool scintTrackSecondariesFirst
 
G4int scintVerboseLevel
 
G4OpticalParametersMessengertheMessenger
 
G4int verboseLevel
 
G4String wls2TimeProfileName
 
G4int wls2VerboseLevel
 
G4String wlsTimeProfileName
 
G4int wlsVerboseLevel
 

Static Private Attributes

static G4OpticalParameterstheInstance = nullptr
 

Friends

std::ostream & operator<< (std::ostream &os, const G4OpticalParameters &)
 

Detailed Description

Definition at line 104 of file G4OpticalParameters.hh.

Constructor & Destructor Documentation

◆ ~G4OpticalParameters()

G4OpticalParameters::~G4OpticalParameters ( )

Definition at line 80 of file G4OpticalParameters.cc.

80{ delete theMessenger; }
G4OpticalParametersMessenger * theMessenger

References theMessenger.

◆ G4OpticalParameters()

G4OpticalParameters::G4OpticalParameters ( )
private

Member Function Documentation

◆ Dump()

void G4OpticalParameters::Dump ( ) const

Definition at line 534 of file G4OpticalParameters.cc.

535{
536#ifdef G4MULTITHREADED
537 G4MUTEXLOCK(&opticalParametersMutex);
538#endif
540#ifdef G4MULTITHREADED
541 G4MUTEXUNLOCK(&opticalParametersMutex);
542#endif
543}
#define G4MUTEXLOCK(mutex)
Definition: G4Threading.hh:251
#define G4MUTEXUNLOCK(mutex)
Definition: G4Threading.hh:254
G4GLOB_DLL std::ostream G4cout
void StreamInfo(std::ostream &os) const

References G4cout, G4MUTEXLOCK, G4MUTEXUNLOCK, and StreamInfo().

Referenced by G4OpticalPhysics::PrintStatistics(), and G4OpticalParametersMessenger::SetNewValue().

◆ GetAbsorptionVerboseLevel()

G4int G4OpticalParameters::GetAbsorptionVerboseLevel ( ) const

Definition at line 440 of file G4OpticalParameters.cc.

441{
443}

References absorptionVerboseLevel.

◆ GetBoundaryInvokeSD()

G4bool G4OpticalParameters::GetBoundaryInvokeSD ( ) const

Definition at line 426 of file G4OpticalParameters.cc.

427{
428 return boundaryInvokeSD;
429}

References boundaryInvokeSD.

Referenced by G4OpBoundaryProcess::Initialise().

◆ GetBoundaryVerboseLevel()

G4int G4OpticalParameters::GetBoundaryVerboseLevel ( ) const

Definition at line 412 of file G4OpticalParameters.cc.

413{
415}

References boundaryVerboseLevel.

Referenced by G4OpBoundaryProcess::Initialise().

◆ GetCerenkovMaxBetaChange()

G4double G4OpticalParameters::GetCerenkovMaxBetaChange ( ) const

Definition at line 247 of file G4OpticalParameters.cc.

248{
250}

References cerenkovMaxBetaChange.

Referenced by G4Cerenkov::Initialise(), and G4Cerenkov::ProcessDescription().

◆ GetCerenkovMaxPhotonsPerStep()

G4int G4OpticalParameters::GetCerenkovMaxPhotonsPerStep ( ) const

◆ GetCerenkovStackPhotons()

G4bool G4OpticalParameters::GetCerenkovStackPhotons ( ) const

Definition at line 205 of file G4OpticalParameters.cc.

206{
208}

References cerenkovStackPhotons.

Referenced by G4Cerenkov::Initialise(), and G4Cerenkov::ProcessDescription().

◆ GetCerenkovTrackSecondariesFirst()

G4bool G4OpticalParameters::GetCerenkovTrackSecondariesFirst ( ) const

◆ GetCerenkovVerboseLevel()

G4int G4OpticalParameters::GetCerenkovVerboseLevel ( ) const

Definition at line 219 of file G4OpticalParameters.cc.

220{
222}

References cerenkovVerboseLevel.

Referenced by G4Cerenkov::Initialise(), and G4Cerenkov::ProcessDescription().

◆ GetMieVerboseLevel()

G4int G4OpticalParameters::GetMieVerboseLevel ( ) const

Definition at line 468 of file G4OpticalParameters.cc.

469{
470 return mieVerboseLevel;
471}

References mieVerboseLevel.

◆ GetProcessActivation()

G4bool G4OpticalParameters::GetProcessActivation ( const G4String process) const

Definition at line 191 of file G4OpticalParameters.cc.

192{
193 return processActivation.find(process)->second;
194}
std::map< G4String, G4bool > processActivation

References processActivation.

Referenced by StreamInfo().

◆ GetRayleighVerboseLevel()

G4int G4OpticalParameters::GetRayleighVerboseLevel ( ) const

Definition at line 454 of file G4OpticalParameters.cc.

455{
457}

References rayleighVerboseLevel.

◆ GetScintByParticleType()

G4bool G4OpticalParameters::GetScintByParticleType ( ) const

◆ GetScintEnhancedTimeConstants()

G4bool G4OpticalParameters::GetScintEnhancedTimeConstants ( ) const

◆ GetScintFiniteRiseTime()

G4bool G4OpticalParameters::GetScintFiniteRiseTime ( ) const

◆ GetScintStackPhotons()

G4bool G4OpticalParameters::GetScintStackPhotons ( ) const

Definition at line 328 of file G4OpticalParameters.cc.

329{
330 return scintStackPhotons;
331}
G4bool scintStackPhotons
option to allow stacking of secondary Scintillation photons

References scintStackPhotons.

Referenced by G4Scintillation::Initialise(), and G4Scintillation::ProcessDescription().

◆ GetScintTrackInfo()

G4bool G4OpticalParameters::GetScintTrackInfo ( ) const

◆ GetScintTrackSecondariesFirst()

G4bool G4OpticalParameters::GetScintTrackSecondariesFirst ( ) const

◆ GetScintVerboseLevel()

G4int G4OpticalParameters::GetScintVerboseLevel ( ) const

◆ GetVerboseLevel()

G4int G4OpticalParameters::GetVerboseLevel ( ) const

Definition at line 159 of file G4OpticalParameters.cc.

159{ return verboseLevel; }

References verboseLevel.

◆ GetWLS2TimeProfile()

G4String G4OpticalParameters::GetWLS2TimeProfile ( ) const

Definition at line 384 of file G4OpticalParameters.cc.

385{
386 return wls2TimeProfileName;
387}

References wls2TimeProfileName.

Referenced by G4OpWLS2::Initialise().

◆ GetWLS2VerboseLevel()

G4int G4OpticalParameters::GetWLS2VerboseLevel ( ) const

Definition at line 398 of file G4OpticalParameters.cc.

399{
400 return wls2VerboseLevel;
401}

References wls2VerboseLevel.

Referenced by G4OpWLS2::Initialise().

◆ GetWLSTimeProfile()

G4String G4OpticalParameters::GetWLSTimeProfile ( ) const

Definition at line 356 of file G4OpticalParameters.cc.

357{
358 return wlsTimeProfileName;
359}

References wlsTimeProfileName.

Referenced by G4OpWLS::Initialise().

◆ GetWLSVerboseLevel()

G4int G4OpticalParameters::GetWLSVerboseLevel ( ) const

Definition at line 370 of file G4OpticalParameters.cc.

371{
372 return wlsVerboseLevel;
373}

References wlsVerboseLevel.

Referenced by G4OpWLS::Initialise().

◆ Initialise()

void G4OpticalParameters::Initialise ( )
private

Definition at line 100 of file G4OpticalParameters.cc.

101{
102 verboseLevel = 0;
103
107 cerenkovMaxPhotons = 100;
109
110 scintByParticleType = false;
111 scintTrackInfo = false;
112 scintStackPhotons = true;
113 scintFiniteRiseTime = false;
116
117 wlsTimeProfileName = "delta";
118 wlsVerboseLevel = 0;
119
120 wls2TimeProfileName = "delta";
122
124
126
127 mieVerboseLevel = 0;
128
129 boundaryInvokeSD = false;
131
132 processActivation["OpRayleigh"] = true;
133 processActivation["OpBoundary"] = true;
134 processActivation["OpMieHG"] = true;
135 processActivation["OpAbsorption"] = true;
136 processActivation["OpWLS"] = true;
137 processActivation["OpWLS2"] = true;
138 processActivation["Cerenkov"] = true;
139 processActivation["Scintillation"] = true;
140}

References absorptionVerboseLevel, boundaryInvokeSD, boundaryVerboseLevel, cerenkovMaxBetaChange, cerenkovMaxPhotons, cerenkovStackPhotons, cerenkovTrackSecondariesFirst, cerenkovVerboseLevel, mieVerboseLevel, processActivation, rayleighVerboseLevel, scintByParticleType, scintFiniteRiseTime, scintStackPhotons, scintTrackInfo, scintTrackSecondariesFirst, scintVerboseLevel, verboseLevel, wls2TimeProfileName, wls2VerboseLevel, wlsTimeProfileName, and wlsVerboseLevel.

Referenced by G4OpticalParameters(), and SetDefaults().

◆ Instance()

G4OpticalParameters * G4OpticalParameters::Instance ( void  )
static

Definition at line 59 of file G4OpticalParameters.cc.

60{
61 if(nullptr == theInstance)
62 {
63#ifdef G4MULTITHREADED
64 G4MUTEXLOCK(&opticalParametersMutex);
65 if(nullptr == theInstance)
66 {
67#endif
68 static G4OpticalParameters manager;
69 theInstance = &manager;
70#ifdef G4MULTITHREADED
71 }
72 G4MUTEXUNLOCK(&opticalParametersMutex);
73#endif
74 }
75 return theInstance;
76}
static G4OpticalParameters * theInstance

References G4MUTEXLOCK, G4MUTEXUNLOCK, and theInstance.

Referenced by G4OpticalPhysics::ConstructProcess(), G4OpticalPhysics::G4OpticalPhysics(), G4Cerenkov::Initialise(), G4Scintillation::Initialise(), G4OpAbsorption::Initialise(), G4OpBoundaryProcess::Initialise(), G4OpMieHG::Initialise(), G4OpRayleigh::Initialise(), G4OpWLS::Initialise(), G4OpWLS2::Initialise(), G4OpticalPhysics::PrintStatistics(), G4Scintillation::ProcessDescription(), G4Cerenkov::ProcessDescription(), G4Scintillation::SetFiniteRiseTime(), G4OpBoundaryProcess::SetInvokeSD(), G4Cerenkov::SetMaxBetaChangePerStep(), G4Cerenkov::SetMaxNumPhotonsPerStep(), G4Scintillation::SetScintillationByParticleType(), G4Scintillation::SetScintillationTrackInfo(), G4Cerenkov::SetStackPhotons(), G4Scintillation::SetStackPhotons(), G4Cerenkov::SetTrackSecondariesFirst(), G4Scintillation::SetTrackSecondariesFirst(), G4Cerenkov::SetVerboseLevel(), G4Scintillation::SetVerboseLevel(), G4OpAbsorption::SetVerboseLevel(), G4OpBoundaryProcess::SetVerboseLevel(), G4OpMieHG::SetVerboseLevel(), G4OpRayleigh::SetVerboseLevel(), G4OpWLS::SetVerboseLevel(), G4OpWLS2::SetVerboseLevel(), G4OpWLS::UseTimeProfile(), and G4OpWLS2::UseTimeProfile().

◆ IsLocked()

G4bool G4OpticalParameters::IsLocked ( ) const
private

◆ PrintWarning()

void G4OpticalParameters::PrintWarning ( G4ExceptionDescription ed) const
private

Definition at line 473 of file G4OpticalParameters.cc.

474{
475 G4Exception("G4EmParameters", "Optical0020", JustWarning, ed);
476}
@ JustWarning
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
Definition: G4Exception.cc:35

References G4Exception(), and JustWarning.

◆ SetAbsorptionVerboseLevel()

void G4OpticalParameters::SetAbsorptionVerboseLevel ( G4int  val)

Definition at line 431 of file G4OpticalParameters.cc.

432{
433 if(IsLocked())
434 {
435 return;
436 }
438}

References absorptionVerboseLevel, and IsLocked().

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4OpAbsorption::SetVerboseLevel().

◆ SetBoundaryInvokeSD()

void G4OpticalParameters::SetBoundaryInvokeSD ( G4bool  val)

Definition at line 417 of file G4OpticalParameters.cc.

418{
419 if(IsLocked())
420 {
421 return;
422 }
423 boundaryInvokeSD = val;
424}

References boundaryInvokeSD, and IsLocked().

Referenced by G4OpBoundaryProcess::SetInvokeSD(), and G4OpticalParametersMessenger::SetNewValue().

◆ SetBoundaryVerboseLevel()

void G4OpticalParameters::SetBoundaryVerboseLevel ( G4int  val)

Definition at line 403 of file G4OpticalParameters.cc.

404{
405 if(IsLocked())
406 {
407 return;
408 }
410}

References boundaryVerboseLevel, and IsLocked().

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4OpBoundaryProcess::SetVerboseLevel().

◆ SetCerenkovMaxBetaChange()

void G4OpticalParameters::SetCerenkovMaxBetaChange ( G4double  val)

Definition at line 238 of file G4OpticalParameters.cc.

239{
240 if(IsLocked())
241 {
242 return;
243 }
245}

References cerenkovMaxBetaChange, and IsLocked().

Referenced by G4Cerenkov::SetMaxBetaChangePerStep(), and G4OpticalParametersMessenger::SetNewValue().

◆ SetCerenkovMaxPhotonsPerStep()

void G4OpticalParameters::SetCerenkovMaxPhotonsPerStep ( G4int  val)

Definition at line 224 of file G4OpticalParameters.cc.

225{
226 if(IsLocked())
227 {
228 return;
229 }
230 cerenkovMaxPhotons = val;
231}

References cerenkovMaxPhotons, and IsLocked().

Referenced by G4Cerenkov::SetMaxNumPhotonsPerStep(), and G4OpticalParametersMessenger::SetNewValue().

◆ SetCerenkovStackPhotons()

void G4OpticalParameters::SetCerenkovStackPhotons ( G4bool  val)

Definition at line 196 of file G4OpticalParameters.cc.

197{
198 if(IsLocked())
199 {
200 return;
201 }
203}

References cerenkovStackPhotons, and IsLocked().

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4Cerenkov::SetStackPhotons().

◆ SetCerenkovTrackSecondariesFirst()

void G4OpticalParameters::SetCerenkovTrackSecondariesFirst ( G4bool  val)

Definition at line 252 of file G4OpticalParameters.cc.

253{
254 if(IsLocked())
255 {
256 return;
257 }
259}

References cerenkovTrackSecondariesFirst, and IsLocked().

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4Cerenkov::SetTrackSecondariesFirst().

◆ SetCerenkovVerboseLevel()

void G4OpticalParameters::SetCerenkovVerboseLevel ( G4int  val)

Definition at line 210 of file G4OpticalParameters.cc.

211{
212 if(IsLocked())
213 {
214 return;
215 }
217}

References cerenkovVerboseLevel, and IsLocked().

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4Cerenkov::SetVerboseLevel().

◆ SetDefaults()

void G4OpticalParameters::SetDefaults ( )

Definition at line 92 of file G4OpticalParameters.cc.

93{
94 if(!IsLocked())
95 {
96 Initialise();
97 }
98}

References Initialise(), and IsLocked().

◆ SetMieVerboseLevel()

void G4OpticalParameters::SetMieVerboseLevel ( G4int  val)

Definition at line 459 of file G4OpticalParameters.cc.

460{
461 if(IsLocked())
462 {
463 return;
464 }
465 mieVerboseLevel = val;
466}

References IsLocked(), and mieVerboseLevel.

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4OpMieHG::SetVerboseLevel().

◆ SetProcessActivation()

void G4OpticalParameters::SetProcessActivation ( const G4String process,
G4bool  val 
)

Definition at line 161 of file G4OpticalParameters.cc.

163{
164 // Configure the physics constructor to use/not use a selected process.
165 // This method can only be called in PreInit> phase (before execution of
166 // ConstructProcess). The process is not added to particle's process manager
167 // and so it cannot be re-activated later in Idle> phase with the command
168 // /process/activate.
169
170 if(IsLocked())
171 {
172 return;
173 }
174 if(processActivation[process] == val)
175 return;
176
177 // processActivation keys defined at initialisation
178 if(processActivation.find(process) != processActivation.end())
179 {
180 processActivation[process] = val;
181 }
182 else
183 {
185 ed << "Process name " << process << " out of bounds.";
186 G4Exception("G4OpticalParameters::SetProcessActivation()", "Optical013",
187 FatalException, ed);
188 }
189}
@ FatalException
std::ostringstream G4ExceptionDescription
Definition: G4Exception.hh:40

References FatalException, G4Exception(), IsLocked(), and processActivation.

Referenced by G4OpticalParametersMessenger::SetNewValue().

◆ SetRayleighVerboseLevel()

void G4OpticalParameters::SetRayleighVerboseLevel ( G4int  val)

Definition at line 445 of file G4OpticalParameters.cc.

446{
447 if(IsLocked())
448 {
449 return;
450 }
452}

References IsLocked(), and rayleighVerboseLevel.

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4OpRayleigh::SetVerboseLevel().

◆ SetScintByParticleType()

void G4OpticalParameters::SetScintByParticleType ( G4bool  val)

Definition at line 266 of file G4OpticalParameters.cc.

267{
268 if(IsLocked())
269 {
270 return;
271 }
273}

References IsLocked(), and scintByParticleType.

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4Scintillation::SetScintillationByParticleType().

◆ SetScintEnhancedTimeConstants()

void G4OpticalParameters::SetScintEnhancedTimeConstants ( G4bool  )

◆ SetScintFiniteRiseTime()

void G4OpticalParameters::SetScintFiniteRiseTime ( G4bool  val)

Definition at line 305 of file G4OpticalParameters.cc.

306{
307 if(IsLocked())
308 {
309 return;
310 }
312}

References IsLocked(), and scintFiniteRiseTime.

Referenced by G4Scintillation::SetFiniteRiseTime(), and G4OpticalParametersMessenger::SetNewValue().

◆ SetScintStackPhotons()

void G4OpticalParameters::SetScintStackPhotons ( G4bool  val)

Definition at line 319 of file G4OpticalParameters.cc.

320{
321 if(IsLocked())
322 {
323 return;
324 }
325 scintStackPhotons = val;
326}

References IsLocked(), and scintStackPhotons.

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4Scintillation::SetStackPhotons().

◆ SetScintTrackInfo()

void G4OpticalParameters::SetScintTrackInfo ( G4bool  val)

Definition at line 280 of file G4OpticalParameters.cc.

281{
282 if(IsLocked())
283 {
284 return;
285 }
286 scintTrackInfo = val;
287}

References IsLocked(), and scintTrackInfo.

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4Scintillation::SetScintillationTrackInfo().

◆ SetScintTrackSecondariesFirst()

void G4OpticalParameters::SetScintTrackSecondariesFirst ( G4bool  val)

Definition at line 291 of file G4OpticalParameters.cc.

292{
293 if(IsLocked())
294 {
295 return;
296 }
298}

References IsLocked(), and scintTrackSecondariesFirst.

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4Scintillation::SetTrackSecondariesFirst().

◆ SetScintVerboseLevel()

void G4OpticalParameters::SetScintVerboseLevel ( G4int  val)

Definition at line 333 of file G4OpticalParameters.cc.

334{
335 if(IsLocked())
336 {
337 return;
338 }
339 scintVerboseLevel = val;
340}

References IsLocked(), and scintVerboseLevel.

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4Scintillation::SetVerboseLevel().

◆ SetVerboseLevel()

void G4OpticalParameters::SetVerboseLevel ( G4int  val)

Definition at line 142 of file G4OpticalParameters.cc.

References IsLocked(), SetAbsorptionVerboseLevel(), SetBoundaryVerboseLevel(), SetCerenkovVerboseLevel(), SetMieVerboseLevel(), SetRayleighVerboseLevel(), SetScintVerboseLevel(), SetWLS2VerboseLevel(), SetWLSVerboseLevel(), and verboseLevel.

Referenced by G4OpticalPhysics::G4OpticalPhysics(), and G4OpticalParametersMessenger::SetNewValue().

◆ SetWLS2TimeProfile()

void G4OpticalParameters::SetWLS2TimeProfile ( const G4String val)

Definition at line 375 of file G4OpticalParameters.cc.

376{
377 if(IsLocked())
378 {
379 return;
380 }
382}

References IsLocked(), and wls2TimeProfileName.

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4OpWLS2::UseTimeProfile().

◆ SetWLS2VerboseLevel()

void G4OpticalParameters::SetWLS2VerboseLevel ( G4int  val)

Definition at line 389 of file G4OpticalParameters.cc.

390{
391 if(IsLocked())
392 {
393 return;
394 }
395 wls2VerboseLevel = val;
396}

References IsLocked(), and wls2VerboseLevel.

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4OpWLS2::SetVerboseLevel().

◆ SetWLSTimeProfile()

void G4OpticalParameters::SetWLSTimeProfile ( const G4String val)

Definition at line 347 of file G4OpticalParameters.cc.

348{
349 if(IsLocked())
350 {
351 return;
352 }
353 wlsTimeProfileName = val;
354}

References IsLocked(), and wlsTimeProfileName.

Referenced by G4OpticalParametersMessenger::SetNewValue(), and G4OpWLS::UseTimeProfile().

◆ SetWLSVerboseLevel()

void G4OpticalParameters::SetWLSVerboseLevel ( G4int  val)

Definition at line 361 of file G4OpticalParameters.cc.

362{
363 if(IsLocked())
364 {
365 return;
366 }
367 wlsVerboseLevel = val;
368}

References IsLocked(), and wlsVerboseLevel.

Referenced by G4OpticalParametersMessenger::SetNewValue(), SetVerboseLevel(), and G4OpWLS::SetVerboseLevel().

◆ StreamInfo()

void G4OpticalParameters::StreamInfo ( std::ostream &  os) const

Definition at line 478 of file G4OpticalParameters.cc.

479{
480 G4int prec = os.precision(5);
481 os
482 << "======================================================================="
483 << "\n";
484 os
485 << "====== Optical Physics Parameters ========"
486 << "\n";
487 os
488 << "======================================================================="
489 << "\n";
490
491 os << " Cerenkov process active: "
492 << GetProcessActivation("Cerenkov") << "\n";
493 os << " Cerenkov maximum photons per step: " << cerenkovMaxPhotons
494 << "\n";
495 os << " Cerenkov maximum beta change per step: " << cerenkovMaxBetaChange
496 << " %\n";
497 os << " Cerenkov stack photons: " << cerenkovStackPhotons
498 << "\n";
499 os << " Cerenkov track secondaries first: "
501 os << " Scintillation process active: "
502 << GetProcessActivation("Scintillation") << "\n";
503 os << " Scintillation finite rise time: " << scintFiniteRiseTime
504 << "\n";
505 os << " Scintillation by particle type: " << scintByParticleType
506 << "\n";
507 os << " Scintillation record track info: " << scintTrackInfo << "\n";
508 os << " Scintillation stack photons: " << scintStackPhotons << "\n";
509 os << " Scintillation track secondaries first: " << scintTrackSecondariesFirst
510 << "\n";
511 os << " WLS process active: "
512 << GetProcessActivation("OpWLS") << "\n";
513 os << " WLS time profile name: " << wlsTimeProfileName
514 << "\n";
515 os << " WLS2 process active: "
516 << GetProcessActivation("OpWLS2") << "\n";
517 os << " WLS2 time profile name: " << wls2TimeProfileName
518 << "\n";
519 os << " Boundary process active: "
520 << GetProcessActivation("OpBoundary") << "\n";
521 os << " Boundary invoke sensitive detector: " << boundaryInvokeSD << "\n";
522 os << " Rayleigh process active: "
523 << GetProcessActivation("OpRayleigh") << "\n";
524 os << " MieHG process active: "
525 << GetProcessActivation("OpMieHG") << "\n";
526 os << " Absorption process active: "
527 << GetProcessActivation("OpAbsorption") << "\n";
528 os
529 << "======================================================================="
530 << "\n";
531 os.precision(prec);
532}
int G4int
Definition: G4Types.hh:85
G4bool GetProcessActivation(const G4String &) const
static const double prec
Definition: RanecuEngine.cc:61

References boundaryInvokeSD, cerenkovMaxBetaChange, cerenkovMaxPhotons, cerenkovStackPhotons, cerenkovTrackSecondariesFirst, GetProcessActivation(), CLHEP::prec, scintByParticleType, scintFiniteRiseTime, scintStackPhotons, scintTrackInfo, scintTrackSecondariesFirst, wls2TimeProfileName, and wlsTimeProfileName.

Referenced by Dump().

Friends And Related Function Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const G4OpticalParameters par 
)
friend

Definition at line 545 of file G4OpticalParameters.cc.

546{
547 par.StreamInfo(os);
548 return os;
549}

Field Documentation

◆ absorptionVerboseLevel

G4int G4OpticalParameters::absorptionVerboseLevel
private

◆ boundaryInvokeSD

G4bool G4OpticalParameters::boundaryInvokeSD
private

boundary G4OpBoundaryProcess to call InvokeSD method

Definition at line 246 of file G4OpticalParameters.hh.

Referenced by GetBoundaryInvokeSD(), Initialise(), SetBoundaryInvokeSD(), and StreamInfo().

◆ boundaryVerboseLevel

G4int G4OpticalParameters::boundaryVerboseLevel
private

◆ cerenkovMaxBetaChange

G4double G4OpticalParameters::cerenkovMaxBetaChange
private

◆ cerenkovMaxPhotons

G4int G4OpticalParameters::cerenkovMaxPhotons
private

◆ cerenkovStackPhotons

G4bool G4OpticalParameters::cerenkovStackPhotons
private

◆ cerenkovTrackSecondariesFirst

G4bool G4OpticalParameters::cerenkovTrackSecondariesFirst
private

◆ cerenkovVerboseLevel

G4int G4OpticalParameters::cerenkovVerboseLevel
private

◆ fStateManager

G4StateManager* G4OpticalParameters::fStateManager
private

Definition at line 191 of file G4OpticalParameters.hh.

Referenced by G4OpticalParameters(), and IsLocked().

◆ mieVerboseLevel

G4int G4OpticalParameters::mieVerboseLevel
private

Definition at line 242 of file G4OpticalParameters.hh.

Referenced by GetMieVerboseLevel(), Initialise(), and SetMieVerboseLevel().

◆ processActivation

std::map<G4String, G4bool> G4OpticalParameters::processActivation
private

Definition at line 196 of file G4OpticalParameters.hh.

Referenced by GetProcessActivation(), Initialise(), and SetProcessActivation().

◆ rayleighVerboseLevel

G4int G4OpticalParameters::rayleighVerboseLevel
private

◆ scintByParticleType

G4bool G4OpticalParameters::scintByParticleType
private

option to allow for the light yield to be a function of particle type and deposited energy in case of non-linear light emission in scintillators

Definition at line 215 of file G4OpticalParameters.hh.

Referenced by GetScintByParticleType(), Initialise(), SetScintByParticleType(), and StreamInfo().

◆ scintFiniteRiseTime

G4bool G4OpticalParameters::scintFiniteRiseTime
private

option to set a finite rise-time; Note: the G4Scintillation process expects the user to have set the constant material property SCINTILLATIONRISETIME{1,2,3}

Definition at line 210 of file G4OpticalParameters.hh.

Referenced by GetScintFiniteRiseTime(), Initialise(), SetScintFiniteRiseTime(), and StreamInfo().

◆ scintStackPhotons

G4bool G4OpticalParameters::scintStackPhotons
private

option to allow stacking of secondary Scintillation photons

Definition at line 222 of file G4OpticalParameters.hh.

Referenced by GetScintStackPhotons(), Initialise(), SetScintStackPhotons(), and StreamInfo().

◆ scintTrackInfo

G4bool G4OpticalParameters::scintTrackInfo
private

option to allow for G4ScintillationTrackInformation to be attached to a scintillation photon's track

Definition at line 219 of file G4OpticalParameters.hh.

Referenced by GetScintTrackInfo(), Initialise(), SetScintTrackInfo(), and StreamInfo().

◆ scintTrackSecondariesFirst

G4bool G4OpticalParameters::scintTrackSecondariesFirst
private

◆ scintVerboseLevel

G4int G4OpticalParameters::scintVerboseLevel
private

Definition at line 224 of file G4OpticalParameters.hh.

Referenced by GetScintVerboseLevel(), Initialise(), and SetScintVerboseLevel().

◆ theInstance

G4OpticalParameters * G4OpticalParameters::theInstance = nullptr
staticprivate

Definition at line 188 of file G4OpticalParameters.hh.

Referenced by Instance().

◆ theMessenger

G4OpticalParametersMessenger* G4OpticalParameters::theMessenger
private

Definition at line 190 of file G4OpticalParameters.hh.

Referenced by G4OpticalParameters(), and ~G4OpticalParameters().

◆ verboseLevel

G4int G4OpticalParameters::verboseLevel
private

Definition at line 193 of file G4OpticalParameters.hh.

Referenced by GetVerboseLevel(), Initialise(), and SetVerboseLevel().

◆ wls2TimeProfileName

G4String G4OpticalParameters::wls2TimeProfileName
private

◆ wls2VerboseLevel

G4int G4OpticalParameters::wls2VerboseLevel
private

Definition at line 233 of file G4OpticalParameters.hh.

Referenced by GetWLS2VerboseLevel(), Initialise(), and SetWLS2VerboseLevel().

◆ wlsTimeProfileName

G4String G4OpticalParameters::wlsTimeProfileName
private

◆ wlsVerboseLevel

G4int G4OpticalParameters::wlsVerboseLevel
private

Definition at line 229 of file G4OpticalParameters.hh.

Referenced by GetWLSVerboseLevel(), Initialise(), and SetWLSVerboseLevel().


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