Import Geant4 11.1.2 source tree
This commit is contained in:
@@ -235,14 +235,12 @@ G4ScoringMessenger::G4ScoringMessenger(G4ScoringManager* SManager)
|
||||
probeMatCmd->SetGuidance("To switch-off this overlaying, use \"none\".");
|
||||
probeMatCmd->SetParameterName("matName", true);
|
||||
probeMatCmd->SetDefaultValue("none");
|
||||
probeMatCmd->SetToBeBroadcasted(false);
|
||||
|
||||
probeLocateCmd = new G4UIcmdWith3VectorAndUnit("/score/probe/locate", this);
|
||||
probeLocateCmd->SetGuidance(
|
||||
"Locate a probe in the global coordinate system.");
|
||||
probeLocateCmd->SetParameterName("x", "y", "z", false);
|
||||
probeLocateCmd->SetDefaultUnit("mm");
|
||||
probeLocateCmd->SetToBeBroadcasted(false);
|
||||
|
||||
// Draw Scoring result
|
||||
drawCmd = new G4UIcommand("/score/drawProjection", this);
|
||||
|
||||
@@ -127,28 +127,30 @@ void G4ScoringProbe::SetupGeometry(G4VPhysicalVolume* worldPhys)
|
||||
|
||||
G4bool G4ScoringProbe::SetMaterial(G4String val)
|
||||
{
|
||||
if(G4Threading::IsMasterThread())
|
||||
if(val == "none")
|
||||
{
|
||||
if(val == "none")
|
||||
layeredMaterialName = val;
|
||||
layeredMassFlg = false;
|
||||
layeredMaterial = nullptr;
|
||||
}
|
||||
else
|
||||
{
|
||||
G4AutoLock l(&logvolmutex);
|
||||
auto mat = G4NistManager::Instance()->FindOrBuildMaterial(val);
|
||||
if(mat == nullptr)
|
||||
{
|
||||
layeredMaterialName = val;
|
||||
layeredMassFlg = false;
|
||||
layeredMaterial = nullptr;
|
||||
return false;
|
||||
}
|
||||
else
|
||||
layeredMaterialName = val;
|
||||
layeredMassFlg = true;
|
||||
layeredMaterial = mat;
|
||||
if(G4Threading::IsMasterThread())
|
||||
{
|
||||
auto mat = G4NistManager::Instance()->FindOrBuildMaterial(val);
|
||||
if(mat == nullptr)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
layeredMaterialName = val;
|
||||
layeredMassFlg = true;
|
||||
layeredMaterial = mat;
|
||||
auto region = G4RegionStore::GetInstance()->GetRegion(regName);
|
||||
assert(region != nullptr);
|
||||
region->UpdateMaterialList();
|
||||
}
|
||||
auto region = G4RegionStore::GetInstance()->GetRegion(regName);
|
||||
assert(region != nullptr);
|
||||
region->UpdateMaterialList();
|
||||
l.unlock();
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user