33#ifndef G4VMOLECULECOUNTER_HH
34#define G4VMOLECULECOUNTER_HH 1
49class G4VMoleculeCounter :
public G4VMoleculeCounterInternalBase
74 void operator=(G4VMoleculeCounter
const& x) =
delete;
friend class G4VMoleculeCounter
G4bool fSensitiveToStepping
virtual void SchedulerFinalizedTracking()=0
MoleculeCounterType GetType() const
void IgnoreMolecule(const G4MoleculeDefinition *)
virtual void RemoveMolecule(std::unique_ptr< G4VMoleculeCounterIndex >, G4double, G4int=1)=0
G4bool fNegativeCountsAreFatal
virtual std::unique_ptr< G4VMoleculeCounterIndex > BuildIndex(const G4Track *, const G4StepPoint *) const =0
std::set< const G4MoleculeDefinition * > fIgnoredMolecules
~G4VMoleculeCounter() override=default
G4bool IsReactantIgnored(const G4MoleculeDefinition *) const
std::set< const G4MolecularConfiguration * > fIgnoredReactants
virtual std::unique_ptr< G4VMoleculeCounterIndex > BuildSimpleIndex(const G4MolecularConfiguration *) const =0
G4bool GetNegativeCountsAreFatal() const
void SetSensitiveToStepping(G4bool=true)
MoleculeCounterType fType
virtual std::unique_ptr< G4VMoleculeCounterIndex > BuildIndex(const G4Track *) const =0
virtual void AddMolecule(std::unique_ptr< G4VMoleculeCounterIndex >, G4double, G4int=1)=0
friend class G4VUserMoleculeCounter
std::set< G4double > GetRecordedTimes() const override=0
G4bool GetSensitiveToStepping() const
void IgnoreReactant(const G4MolecularConfiguration *)
virtual std::set< const G4MolecularConfiguration * > GetRecordedMolecules() const =0
void SetNegativeCountsAreFatal(G4bool)
virtual const G4MolecularConfiguration * GetMolecule() const =0
virtual G4bool operator==(G4VMoleculeCounterIndex const &) const =0
virtual ~G4VMoleculeCounterIndex()=default
virtual G4bool operator<(G4VMoleculeCounterIndex const &) const =0
virtual G4String GetInfo() const =0