46 baseMaterial->GetState(),baseMaterial->GetTemperature(),
47 baseMaterial->GetPressure())
90 msg <<
"G4ExtendedMaterial <"<<
GetName()<<
"> already has extension for "
91 << extension->GetName()
92 <<
". Extension is replaced.";
95 fExtensionMap.insert(std::make_pair(extension->GetName(),std::move(extension)));
106 {
return iter->second.get(); }
110 msg <<
"G4ExtendedMAterial <"<<
GetName()<<
"> cannot find extension for "
126 flux <<
"\n Registered material extensions :\n";
129 { flux <<
" " << iter->first <<
"\n"; }
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
std::ostringstream G4ExceptionDescription
G4ExtendedMaterial(const G4String &name, const G4Material *baseMaterial)
void Print(std::ostream &flux) const
void RegisterExtension(std::unique_ptr< G4VMaterialExtension > extension)
virtual G4bool IsExtended() const
G4VMaterialExtension * RetrieveExtension(const G4String &name)
G4MaterialExtensionMap fExtensionMap
const G4String & GetName() const
const char * name(G4int ptype)