Geant4-11
|
#include <G4MoleculeCounter.hh>
Data Structures | |
struct | Search |
Public Types | |
using | CounterMapType = std::map< Reactant *, NbMoleculeAgainstTime > |
using | Reactant = const G4MolecularConfiguration |
using | ReactantList = std::vector< Reactant * > |
using | RecordedMolecules = std::unique_ptr< ReactantList > |
Public Member Functions | |
void | CheckTimeForConsistency (G4bool flag) |
void | DontRegister (const G4MoleculeDefinition *) override |
void | Dump () |
const NbMoleculeAgainstTime & | GetNbMoleculeAgainstTime (Reactant *molecule) |
int | GetNMoleculesAtTime (Reactant *molecule, double time) |
RecordedMolecules | GetRecordedMolecules () |
RecordedTimes | GetRecordedTimes () |
G4int | GetVerbose () |
void | Initialize () override |
bool | IsRegistered (const G4MoleculeDefinition *) override |
G4bool | IsTimeCheckedForConsistency () const |
void | RegisterAll () override |
void | ResetCounter () override |
void | SetVerbose (G4int) |
Static Public Member Functions | |
static void | DeleteInstance () |
static void | InitializeInstance () |
static G4MoleculeCounter * | Instance () |
static G4bool | InUse () |
static void | SetInstance (G4VMoleculeCounter *) |
static void | SetTimeSlice (double) |
static void | Use (G4bool flag=true) |
Protected Member Functions | |
void | AddAMoleculeAtTime (Reactant *, G4double time, const G4ThreeVector *position=nullptr, int number=1) override |
G4MoleculeCounter () | |
void | RemoveAMoleculeAtTime (Reactant *, G4double time, const G4ThreeVector *position=nullptr, int number=1) override |
G4bool | SearchTimeMap (Reactant *molecule) |
int | SearchUpperBoundTime (double time, bool sameTypeOfMolecule) |
~G4MoleculeCounter () override | |
Protected Attributes | |
G4bool | fCheckTimeIsConsistentWithScheduler |
CounterMapType | fCounterMap |
std::map< const G4MoleculeDefinition *, G4bool > | fDontRegister |
std::unique_ptr< Search > | fpLastSearch |
G4int | fVerbose |
Static Protected Attributes | |
static G4ThreadLocal G4VMoleculeCounter * | fpInstance = nullptr |
static G4bool | fUse = false |
Friends | |
class | G4Molecule |
class | G4VMoleculeCounter |
Definition at line 69 of file G4MoleculeCounter.hh.
using G4MoleculeCounter::CounterMapType = std::map<Reactant*, NbMoleculeAgainstTime> |
Definition at line 74 of file G4MoleculeCounter.hh.
|
inherited |
Definition at line 58 of file G4VMoleculeCounter.hh.
using G4MoleculeCounter::ReactantList = std::vector<Reactant*> |
Definition at line 73 of file G4MoleculeCounter.hh.
using G4MoleculeCounter::RecordedMolecules = std::unique_ptr<ReactantList> |
Definition at line 75 of file G4MoleculeCounter.hh.
|
protected |
Definition at line 71 of file G4MoleculeCounter.cc.
References fCheckTimeIsConsistentWithScheduler, and fVerbose.
Referenced by Instance().
|
overrideprotecteddefault |
|
overrideprotectedvirtual |
Implements G4VMoleculeCounter.
Definition at line 208 of file G4MoleculeCounter.cc.
References FatalException, fCounterMap, fDontRegister, G4::MoleculeCounter::TimePrecision::fPrecision, fVerbose, G4BestUnit, G4cout, G4endl, G4Exception(), G4MolecularConfiguration::GetDefinition(), G4MolecularConfiguration::GetName(), and G4Scheduler::Instance().
void G4MoleculeCounter::CheckTimeForConsistency | ( | G4bool | flag | ) |
Definition at line 509 of file G4MoleculeCounter.cc.
References fCheckTimeIsConsistentWithScheduler.
|
staticinherited |
Definition at line 78 of file G4VMoleculeCounter.cc.
References G4VMoleculeCounter::fpInstance.
Referenced by G4DNAChemistryManager::Clear().
|
overridevirtual |
Reimplemented from G4VMoleculeCounter.
Definition at line 481 of file G4MoleculeCounter.cc.
References fDontRegister.
void G4MoleculeCounter::Dump | ( | ) |
Definition at line 430 of file G4MoleculeCounter.cc.
References fCounterMap, G4BestUnit, G4cout, and G4endl.
Referenced by RemoveAMoleculeAtTime(), and G4DNAUpdateSystemModel::UpdateSystem().
const NbMoleculeAgainstTime & G4MoleculeCounter::GetNbMoleculeAgainstTime | ( | Reactant * | molecule | ) |
Definition at line 460 of file G4MoleculeCounter.cc.
References fCounterMap.
int G4MoleculeCounter::GetNMoleculesAtTime | ( | Reactant * | molecule, |
double | time | ||
) |
Definition at line 199 of file G4MoleculeCounter.cc.
References SearchTimeMap(), and SearchUpperBoundTime().
Referenced by G4DNAEventScheduler::ClearAndReChargeCounter().
G4MoleculeCounter::RecordedMolecules G4MoleculeCounter::GetRecordedMolecules | ( | ) |
Definition at line 370 of file G4MoleculeCounter.cc.
References fCounterMap, fVerbose, G4cout, and G4endl.
Referenced by G4DNAEventScheduler::ClearAndReChargeCounter().
RecordedTimes G4MoleculeCounter::GetRecordedTimes | ( | ) |
Definition at line 388 of file G4MoleculeCounter.cc.
References fCounterMap.
G4int G4MoleculeCounter::GetVerbose | ( | ) |
Definition at line 474 of file G4MoleculeCounter.cc.
References fVerbose.
|
overridevirtual |
Implements G4VMoleculeCounter.
Definition at line 83 of file G4MoleculeCounter.cc.
References fCounterMap, G4MoleculeTable::GetConfigurationIterator(), G4MoleculeTable::Instance(), and IsRegistered().
|
staticinherited |
Definition at line 89 of file G4VMoleculeCounter.cc.
References G4VMoleculeCounter::fpInstance, and G4VMoleculeCounter::Initialize().
Referenced by G4DNAChemistryManager::InitializeThread().
|
static |
Definition at line 60 of file G4MoleculeCounter.cc.
References G4VMoleculeCounter::fpInstance, and G4MoleculeCounter().
Referenced by G4DNAEventScheduler::ClearAndReChargeCounter(), G4DNAEventScheduler::RecordTime(), and G4DNAUpdateSystemModel::UpdateSystem().
|
staticinherited |
Definition at line 106 of file G4VMoleculeCounter.cc.
References G4VMoleculeCounter::fUse.
Referenced by G4Molecule::BuildTrack(), G4DNAUpdateSystemModel::CreateMolecule(), and G4DNAElectronHoleRecombination::MakeReaction().
|
overridevirtual |
Reimplemented from G4VMoleculeCounter.
Definition at line 488 of file G4MoleculeCounter.cc.
References fDontRegister.
Referenced by Initialize().
G4bool G4MoleculeCounter::IsTimeCheckedForConsistency | ( | ) | const |
Definition at line 504 of file G4MoleculeCounter.cc.
References fCheckTimeIsConsistentWithScheduler.
|
overridevirtual |
Reimplemented from G4VMoleculeCounter.
Definition at line 499 of file G4MoleculeCounter.cc.
References fDontRegister.
|
overrideprotectedvirtual |
Implements G4VMoleculeCounter.
Definition at line 268 of file G4MoleculeCounter.cc.
References Dump(), FatalErrorInArgument, FatalException, fCheckTimeIsConsistentWithScheduler, fCounterMap, fDontRegister, G4::MoleculeCounter::TimePrecision::fPrecision, fVerbose, G4BestUnit, G4cout, G4endl, G4Exception(), G4MolecularConfiguration::GetDefinition(), G4MolecularConfiguration::GetName(), G4Scheduler::Instance(), and G4MolecularConfiguration::PrintState().
|
overridevirtual |
Implements G4VMoleculeCounter.
Definition at line 448 of file G4MoleculeCounter.cc.
References fCounterMap, fpLastSearch, fVerbose, G4cout, and G4endl.
Referenced by G4DNAEventScheduler::ClearAndReChargeCounter().
Definition at line 106 of file G4MoleculeCounter.cc.
References fCounterMap, and fpLastSearch.
Referenced by GetNMoleculesAtTime().
|
protected |
Definition at line 140 of file G4MoleculeCounter.cc.
References fCounterMap, and fpLastSearch.
Referenced by GetNMoleculesAtTime().
|
staticinherited |
Definition at line 43 of file G4VMoleculeCounter.cc.
References G4VMoleculeCounter::fpInstance, G4endl, G4Exception(), and JustWarning.
|
static |
Definition at line 99 of file G4MoleculeCounter.cc.
References G4::MoleculeCounter::TimePrecision::fPrecision.
void G4MoleculeCounter::SetVerbose | ( | G4int | level | ) |
Definition at line 467 of file G4MoleculeCounter.cc.
References fVerbose.
|
staticinherited |
Definition at line 99 of file G4VMoleculeCounter.cc.
References G4VMoleculeCounter::fUse.
Referenced by G4DNAEventScheduler::ClearAndReChargeCounter().
|
friend |
Definition at line 148 of file G4MoleculeCounter.hh.
|
friend |
Definition at line 149 of file G4MoleculeCounter.hh.
|
protected |
Definition at line 133 of file G4MoleculeCounter.hh.
Referenced by CheckTimeForConsistency(), G4MoleculeCounter(), IsTimeCheckedForConsistency(), and RemoveAMoleculeAtTime().
|
protected |
Definition at line 129 of file G4MoleculeCounter.hh.
Referenced by AddAMoleculeAtTime(), Dump(), GetNbMoleculeAgainstTime(), GetRecordedMolecules(), GetRecordedTimes(), Initialize(), RemoveAMoleculeAtTime(), ResetCounter(), SearchTimeMap(), and SearchUpperBoundTime().
|
protected |
Definition at line 130 of file G4MoleculeCounter.hh.
Referenced by AddAMoleculeAtTime(), DontRegister(), IsRegistered(), RegisterAll(), and RemoveAMoleculeAtTime().
|
staticprotectedinherited |
Definition at line 46 of file G4VMoleculeCounter.hh.
Referenced by G4VMoleculeCounter::DeleteInstance(), G4VMoleculeCounter::InitializeInstance(), Instance(), G4VMoleculeCounter::Instance(), and G4VMoleculeCounter::SetInstance().
|
protected |
Definition at line 146 of file G4MoleculeCounter.hh.
Referenced by ResetCounter(), SearchTimeMap(), and SearchUpperBoundTime().
|
staticprotectedinherited |
Definition at line 47 of file G4VMoleculeCounter.hh.
Referenced by G4VMoleculeCounter::InUse(), and G4VMoleculeCounter::Use().
|
protected |
Definition at line 132 of file G4MoleculeCounter.hh.
Referenced by AddAMoleculeAtTime(), G4MoleculeCounter(), GetRecordedMolecules(), GetVerbose(), RemoveAMoleculeAtTime(), ResetCounter(), and SetVerbose().