#include "G4AtlasTools/VoxelDensityTool.h"
|
Gaudi::Property< std::map< std::string, double > > | m_volumeVoxelDensityLevel {this, "VolumeVoxellDensityLevel", {}, "Allow setting of indivial volumes' voxel density level"} |
|
Class to allow for not-standard material construction
- Author
- Andrea Dell'Acqua
- Date
- 2016-08-16
Definition at line 20 of file VoxelDensityTool.h.
◆ VoxelDensityTool()
VoxelDensityTool::VoxelDensityTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~VoxelDensityTool()
virtual VoxelDensityTool::~VoxelDensityTool |
( |
| ) |
|
|
virtualdefault |
◆ initialize()
StatusCode GeometryConfigurationToolBase::initialize |
( |
| ) |
|
|
overridevirtualinherited |
◆ postGeometryConfigure()
StatusCode VoxelDensityTool::postGeometryConfigure |
( |
| ) |
const |
|
finaloverridevirtual |
Reimplemented from GeometryConfigurationToolBase.
Definition at line 29 of file VoxelDensityTool.cxx.
31 ATH_MSG_INFO(
"VoxelDensityTool::postGeometryConfigure()");
33 G4LogicalVolumeStore *logicalVolumeStore = G4LogicalVolumeStore::GetInstance();
34 if (logicalVolumeStore->size() == 0) {
37 const G4String muonSys(
"Muon::MuonSys");
38 const G4String embSTAC(
"LArMgr::LAr::EMB::STAC");
39 bool ilvMuonSys =
false, ilvEmbSTAC =
false;
40 for (
auto* ilv : *logicalVolumeStore ) {
41 if ( ilv->GetName() == muonSys ) {
42 ilv->SetSmartless( 0.1 );
43 ATH_MSG_INFO(
"Set VoxelDensity for Muon::MuonSys to 0.1" );
46 else if ( ilv->GetName() == embSTAC ) {
47 ilv->SetSmartless( 0.5 );
48 ATH_MSG_INFO(
"Set VoxelDensity for LArMgr::LAr::EMB::STAC to 0.5" );
54 #if G4VERSION_NUMBER < 1100
55 if (ilv->GetName().contains(volToSet.first)) {
59 ilv->SetSmartless(volToSet.second);
60 ATH_MSG_INFO(
"Set VoxelDensity for "<<ilv->GetName()<<
" to "<<volToSet.second);
65 if (ilvMuonSys ==
false) {
66 ATH_MSG_INFO(
"Muon::MuonSys not in G4 logical volume store. VoxelDensity not set." );
68 if (ilvEmbSTAC ==
false) {
69 ATH_MSG_INFO(
"LArMgr::LAr::EMB::STAC not in G4 logical volume store. VoxelDensity not set." );
72 return StatusCode::SUCCESS;
◆ preGeometryConfigure()
StatusCode VoxelDensityTool::preGeometryConfigure |
( |
| ) |
const |
|
finaloverridevirtual |
◆ m_volumeVoxelDensityLevel
Gaudi::Property<std::map<std::string,double> > VoxelDensityTool::m_volumeVoxelDensityLevel {this, "VolumeVoxellDensityLevel", {}, "Allow setting of indivial volumes' voxel density level"} |
|
private |
The documentation for this class was generated from the following files: