38#ifndef G4EXTENDEDMATERIAL_HH
39#define G4EXTENDEDMATERIAL_HH 1
45#include <unordered_map>
50 std::unique_ptr<G4VMaterialExtension>,
67 G4double pressure = CLHEP::STP_Pressure);
76 G4double pressure = CLHEP::STP_Pressure);
84 G4double pressure = CLHEP::STP_Pressure);
102 G4MaterialExtensionMap::const_iterator
begin()
const {
return fExtensionMap.begin(); }
103 G4MaterialExtensionMap::const_iterator
cbegin()
const {
return fExtensionMap.cbegin(); }
104 G4MaterialExtensionMap::const_iterator
end()
const {
return fExtensionMap.end(); }
105 G4MaterialExtensionMap::const_iterator
cend()
const {
return fExtensionMap.cend(); }
108 void Print(std::ostream& flux)
const;
std::unordered_map< G4String, std::unique_ptr< G4VMaterialExtension >, G4MaterialExtensionHash > G4MaterialExtensionMap
std::hash< std::string > G4MaterialExtensionHash
G4ExtendedMaterial(const G4String &name, const G4Material *baseMaterial)
void Print(std::ostream &flux) const
G4int GetNumberOfExtensions() const
void RegisterExtension(std::unique_ptr< G4VMaterialExtension > extension)
G4MaterialExtensionMap::const_iterator end() const
G4bool IsExtended() const override
G4MaterialExtensionMap::const_iterator begin() const
G4VMaterialExtension * RetrieveExtension(const G4String &name)
G4MaterialExtensionMap::const_iterator cbegin() const
G4MaterialExtensionMap::const_iterator cend() const
~G4ExtendedMaterial() override=default