47 #ifndef G4DNAMolecularMaterial_HH 48 #define G4DNAMolecularMaterial_HH 65 typedef std::map<const G4Material*, double, CompareMaterial>
ComponentMap;
73 static void DeleteInstance();
79 inline const std::vector<ComponentMap>* GetMassFractionTable()
const;
80 inline const std::vector<ComponentMap>* GetDensityTable()
const;
82 const std::vector<double>* GetDensityTableFor(
const G4Material*)
const;
83 const std::vector<double>* GetNumMolPerVolTableFor(
const G4Material*)
const;
93 void InitializeNumMolPerVol();
94 void InitializeDensity();
95 void RecordMolecularMaterial(
G4Material* parentMaterial,
98 void SearchMolecularMaterial(
G4Material* parentMaterial,
100 double currentFraction);
104 void PrintNotAMolecularMaterial(
const char* methodName,
111 mutable std::map<const G4Material*, std::vector<double>*,
CompareMaterial>
113 mutable std::map<const G4Material*, std::vector<double>*,
CompareMaterial>
121 inline const std::vector<ComponentMap>*
124 return fpCompFractionTable;
127 inline const std::vector<ComponentMap>*
130 return fpCompDensityTable;
133 #endif // G4DNAMolecularMaterial_HH std::map< const G4Material *, double, CompareMaterial > ComponentMap
const std::vector< ComponentMap > * GetDensityTable() const
XeCO2CF4 AddMaterial(TRT_Xe, 0.807)
std::map< const G4Material *, std::vector< double > *, CompareMaterial > fAskedNumPerVolTable
std::vector< ComponentMap > * fpCompNumMolPerVolTable
std::map< const G4Material *, std::vector< double > *, CompareMaterial > fAskedDensityTable
static G4DNAMolecularMaterial * fInstance
std::map< const G4Material *, bool, CompareMaterial > fWarningPrinted
std::vector< ComponentMap > * fpCompFractionTable
std::vector< ComponentMap > * fpCompDensityTable
const std::vector< ComponentMap > * GetMassFractionTable() const
bool operator()(const G4Material *mat1, const G4Material *mat2) const