27#ifndef G4DNASCAVENGERMATERIAL_HH
28#define G4DNASCAVENGERMATERIAL_HH
40 std::map<G4double, G4int, G4::MoleculeCounter::TimePrecision>;
67 void Reset()
override;
80 return it->second > 0;
92 std::vector<MolType> output;
95 output.push_back(it.first);
std::map< G4double, G4int, G4::MoleculeCounter::TimePrecision > NbMoleculeAgainstTime
G4double GetNumberMoleculePerVolumeUnitForMaterialConf(MolType) const
MaterialMap::iterator end()
G4DNAScavengerMaterial & operator=(const G4DNAScavengerMaterial &)=delete
G4int SearchUpperBoundTime(G4double time, G4bool sameTypeOfMolecule)
std::vector< MolType > GetScavengerList() const
G4bool fCounterAgainstTime
void ReduceNumberMoleculePerVolumeUnitForMaterialConf(MolType, G4double)
~G4DNAScavengerMaterial() override=default
void AddAMoleculeAtTime(MolType, G4double time, const G4ThreeVector *position=nullptr, G4int number=1)
std::map< MolType, G4double > fScavengerTable
MaterialMap::iterator begin()
G4bool find(MolType type)
std::vector< MolType > ReactantList
void AddNumberMoleculePerVolumeUnitForMaterialConf(MolType, G4double)
G4DNAScavengerMaterial()=default
std::map< MolType, G4double > MaterialMap
CounterMapType fCounterMap
G4bool SearchTimeMap(MolType molecule)
G4VChemistryWorld * fpChemistryInfo
std::unique_ptr< Search > fpLastSearch
void SetCounterAgainstTime()
G4int GetNMoleculesAtTime(MolType molecule, G4double time)
void RemoveAMoleculeAtTime(MolType, G4double time, const G4ThreeVector *position=nullptr, G4int number=1)
std::map< MolType, NbMoleculeAgainstTime > CounterMapType
G4DNAScavengerMaterial(const G4DNAScavengerMaterial &right)=delete
const G4MolecularConfiguration * MolType
CounterMapType::iterator fLastMoleculeSearched
NbMoleculeAgainstTime::iterator fLowerBoundTime