Geant4 VMC Version 6.6
|
Base class for mangers for converting VMC cuts in energy in G4 regions. More...
#include <TG4VRegionsManager.h>
Public Member Functions | |
TG4VRegionsManager () | |
virtual | ~TG4VRegionsManager () |
virtual void | DefineRegions ()=0 |
virtual void | UpdateProductionCutsTable ()=0 |
virtual void | CheckRegions () const |
virtual void | PrintRegions (std::ostream &output) const |
virtual void | SaveRegions () |
virtual void | DumpRegionStore () const |
void | SetFileName (const G4String &fileName) |
Set the file name for regions output. | |
void | SetApplyForGamma (G4bool applyForGamma) |
Set the option to apply range cuts for gamma (default is true) | |
void | SetApplyForElectron (G4bool applyForElectron) |
Set the option to apply range cuts for e- (default is true) | |
void | SetApplyForPositron (G4bool applyForPositron) |
Set the option to apply range cuts for e+ (default is true) | |
void | SetApplyForProton (G4bool applyForProton) |
Set the option to apply range cuts for proton (default is true) | |
void | SetCheck (G4bool isCheck) |
Set the option to perform consistency check (by default false) | |
void | SetPrint (G4bool isPrint) |
Set the option to print all regions. | |
void | SetSave (G4bool isSave) |
Set the option to save all regions in a file. | |
G4String | GetFileName () const |
Return the file name for regions output. | |
G4bool | GetApplyForGamma () const |
Return the option to apply range cuts for gamma. | |
G4bool | GetApplyForElectron () const |
Return the option to apply range cuts for e+. | |
G4bool | GetApplyForPositron () const |
Return the option to apply range cuts for positron. | |
G4bool | GetApplyForProton () const |
Return the option to apply range cuts for proton. | |
G4bool | IsCheck () const |
Return the option to perform consistency check. | |
G4bool | IsPrint () const |
Return the option to print all regions. | |
G4bool | IsSave () const |
Return option to save all regions in a file. | |
Public Member Functions inherited from TG4Verbose | |
TG4Verbose (const G4String &cmdName) | |
TG4Verbose (const G4String &cmdName, G4int verboseLevel) | |
virtual | ~TG4Verbose () |
virtual void | VerboseLevel (G4int level) |
virtual G4int | VerboseLevel () const |
Static Public Member Functions | |
static TG4VRegionsManager * | Instance () |
Return the singleton instance. | |
Protected Types | |
using | TG4RegionData = std::array<G4double, fgkValuesSize> |
Protected Member Functions | |
TG4VRegionsManager (const TG4VRegionsManager &right)=delete | |
TG4VRegionsManager & | operator= (const TG4VRegionsManager &right)=delete |
G4double | GetGlobalEnergyCut (TG4G3Cut cutType) const |
G4double | GetEnergyCut (TG4Limits *limits, TG4G3Cut cutType, G4double globalCutValue) const |
G4bool | IsCoupleUsedInTheRegion (const G4MaterialCutsCouple *couple, const G4Region *region) const |
void | CheckRegionsInGeometry () const |
void | PrintLegend (std::ostream &output) const |
void | PrintRegionData (std::ostream &output, const G4String &matName, const TG4RegionData &values) const |
void | PrintFromG4Table (std::ostream &output) const |
Protected Attributes | |
G4String | fFileName |
file name for regions output | |
G4bool | fApplyForGamma = true |
option to apply cuts for gamma (default is true) | |
G4bool | fApplyForElectron = true |
option to apply cuts for e- (default is true) | |
G4bool | fApplyForPositron = true |
option to apply cuts for e+ (default is true) | |
G4bool | fApplyForProton = true |
option to apply cuts for proton (default is true) | |
G4bool | fIsCheck = false |
option to perform consistency check (by default false) | |
G4bool | fIsPrint = false |
option to print all regions | |
G4bool | fIsSave = false |
option to save all regions in a file | |
Static Protected Attributes | |
static constexpr size_t | fgkRangeGamIdx = 0 |
static constexpr size_t | fgkRangeEleIdx = 1 |
static constexpr size_t | fgkCutGamIdx = 2 |
static constexpr size_t | fgkCutEleIdx = 3 |
static constexpr size_t | fgkVmcCutGamIdx = 4 |
static constexpr size_t | fgkVmcCutEleIdx = 5 |
static constexpr size_t | fgkValuesSize = 6 |
static TG4VRegionsManager * | fgInstance = nullptr |
the singleton instance | |
static const G4String | fgkDefaultRegionName |
the name of the region with default cuts | |
static const G4String | fgkDefaultFileName = "regions.dat" |
the name of the region with default cuts | |
Base class for mangers for converting VMC cuts in energy in G4 regions.
Definition at line 38 of file TG4VRegionsManager.h.
|
protected |
Definition at line 85 of file TG4VRegionsManager.h.
TG4VRegionsManager::TG4VRegionsManager | ( | ) |
Default constructor
Definition at line 46 of file TG4VRegionsManager.cxx.
|
virtual |
Destructor
Definition at line 55 of file TG4VRegionsManager.cxx.
|
protecteddelete |
|
inlinestatic |
Return the singleton instance.
Definition at line 137 of file TG4VRegionsManager.h.
Referenced by TG4RunAction::BeginOfRunAction().
|
pure virtual |
Implemented in TG4RegionsManager2, and TG4RegionsManager.
Referenced by TG4RunManager::LateInitialize().
|
pure virtual |
Implemented in TG4RegionsManager2, and TG4RegionsManager.
Referenced by TG4RunManager::LateInitialize().
|
virtual |
Check if the region to which the volume belongs correspond to its material
Reimplemented in TG4RegionsManager.
Definition at line 291 of file TG4VRegionsManager.cxx.
|
virtual |
Print regions from the production cuts table.
Reimplemented in TG4RegionsManager.
Definition at line 283 of file TG4VRegionsManager.cxx.
Referenced by SaveRegions().
|
virtual |
Dump all regions data in a file
Definition at line 299 of file TG4VRegionsManager.cxx.
|
virtual |
Dump all region properties: production cuts, volumes list and material list.
Definition at line 322 of file TG4VRegionsManager.cxx.
|
inline |
Set the file name for regions output.
Definition at line 140 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Set the option to apply range cuts for gamma (default is true)
Definition at line 144 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Set the option to apply range cuts for e- (default is true)
Definition at line 150 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Set the option to apply range cuts for e+ (default is true)
Definition at line 156 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Set the option to apply range cuts for proton (default is true)
Definition at line 162 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Set the option to perform consistency check (by default false)
Definition at line 168 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Set the option to print all regions.
Definition at line 172 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Set the option to save all regions in a file.
Definition at line 176 of file TG4VRegionsManager.h.
Referenced by TG4RegionsMessenger::SetNewValue().
|
inline |
Return the file name for regions output.
Definition at line 180 of file TG4VRegionsManager.h.
|
inline |
Return the option to apply range cuts for gamma.
Definition at line 184 of file TG4VRegionsManager.h.
|
inline |
Return the option to apply range cuts for e+.
Definition at line 190 of file TG4VRegionsManager.h.
|
inline |
Return the option to apply range cuts for positron.
Definition at line 196 of file TG4VRegionsManager.h.
|
inline |
Return the option to apply range cuts for proton.
Definition at line 202 of file TG4VRegionsManager.h.
|
inline |
Return the option to perform consistency check.
Definition at line 208 of file TG4VRegionsManager.h.
|
inline |
Return the option to print all regions.
Definition at line 211 of file TG4VRegionsManager.h.
|
inline |
Return option to save all regions in a file.
Definition at line 214 of file TG4VRegionsManager.h.
|
protecteddelete |
|
protected |
Return global cut in energy of given cutType. Return DBL_MAX if cut value is not defined
Definition at line 67 of file TG4VRegionsManager.cxx.
Referenced by TG4RegionsManager::DefineRegions(), and TG4RegionsManager2::UpdateProductionCutsTable().
|
protected |
Return cut in energy defined in limits of given cutType. Return DBL_MAX if cut value is not defined.
Definition at line 94 of file TG4VRegionsManager.cxx.
Referenced by TG4RegionsManager::DefineRegions(), PrintFromG4Table(), and TG4RegionsManager2::UpdateProductionCutsTable().
|
protected |
Reimplemented G4ProductionCutsTable::IsCoupleUsedInTheRegion which is declared private
Definition at line 112 of file TG4VRegionsManager.cxx.
Referenced by TG4RegionsManager::DumpRegion().
|
protected |
Loop over all logical volumes and check if the region to which the volume belongs correspond to its material
Definition at line 132 of file TG4VRegionsManager.cxx.
Referenced by TG4RegionsManager::CheckRegions(), CheckRegions(), and TG4RegionsManager2::DefineRegions().
|
protected |
Print the range data legend
Definition at line 177 of file TG4VRegionsManager.cxx.
Referenced by PrintFromG4Table(), and TG4RegionsManager::PrintFromMap().
|
protected |
Print one region data. The regions names are printed within '' and separated from the following date with ';' to facilitate reading data back. The procedure then works only with material names that do not contain these two special characters.
Definition at line 193 of file TG4VRegionsManager.cxx.
Referenced by TG4RegionsManager::LoadRegions(), PrintFromG4Table(), and TG4RegionsManager::PrintFromMap().
|
protected |
Loop over the production cuts table and print the production ranges and cuts from the table and the VMC cuts from the TG4Limits associated with the production cuts material.
Definition at line 216 of file TG4VRegionsManager.cxx.
Referenced by TG4RegionsManager::PrintRegions(), and PrintRegions().
|
staticconstexprprotected |
Definition at line 77 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::GetRangeCut(), and PrintRegionData().
|
staticconstexprprotected |
Definition at line 78 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::GetRangeCut(), and PrintRegionData().
|
staticconstexprprotected |
Definition at line 79 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::CheckRegionsRanges(), TG4RegionsManager::GetRangeCut(), TG4RegionsManager::LoadRegions(), and PrintRegionData().
|
staticconstexprprotected |
Definition at line 80 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::GetRangeCut(), and PrintRegionData().
|
staticconstexprprotected |
Definition at line 81 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::CheckRegionsRanges(), and PrintRegionData().
|
staticconstexprprotected |
Definition at line 82 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::LoadRegions(), and PrintRegionData().
|
staticconstexprprotected |
Definition at line 83 of file TG4VRegionsManager.h.
|
staticprotected |
the singleton instance
Definition at line 109 of file TG4VRegionsManager.h.
Referenced by Instance(), TG4VRegionsManager(), and ~TG4VRegionsManager().
|
staticprotected |
the name of the region with default cuts
Definition at line 111 of file TG4VRegionsManager.h.
Referenced by CheckRegionsInGeometry(), and TG4RegionsManager::DefineRegions().
|
staticprotected |
the name of the region with default cuts
Definition at line 113 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::LoadRegions(), and SaveRegions().
|
protected |
file name for regions output
Definition at line 119 of file TG4VRegionsManager.h.
Referenced by GetFileName(), TG4RegionsManager::LoadRegions(), SaveRegions(), SetFileName(), and TG4RegionsManager::SetLoad().
|
protected |
option to apply cuts for gamma (default is true)
Definition at line 121 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::DefineRegions(), GetApplyForGamma(), SetApplyForGamma(), and TG4RegionsManager2::UpdateProductionCutsTable().
|
protected |
option to apply cuts for e- (default is true)
Definition at line 123 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::DefineRegions(), GetApplyForElectron(), SetApplyForElectron(), and TG4RegionsManager2::UpdateProductionCutsTable().
|
protected |
option to apply cuts for e+ (default is true)
Definition at line 125 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::DefineRegions(), GetApplyForPositron(), SetApplyForPositron(), and TG4RegionsManager2::UpdateProductionCutsTable().
|
protected |
option to apply cuts for proton (default is true)
Definition at line 127 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager::DefineRegions(), GetApplyForProton(), SetApplyForProton(), and TG4RegionsManager2::UpdateProductionCutsTable().
|
protected |
option to perform consistency check (by default false)
Definition at line 129 of file TG4VRegionsManager.h.
Referenced by TG4RegionsManager2::DefineRegions(), IsCheck(), and SetCheck().
|
protected |
option to print all regions
Definition at line 131 of file TG4VRegionsManager.h.
Referenced by IsPrint(), and SetPrint().
|
protected |
option to save all regions in a file
Definition at line 133 of file TG4VRegionsManager.h.
Referenced by IsSave(), TG4RegionsManager::SetLoad(), and SetSave().