145 void SetPhysChemIO(std::unique_ptr<G4VPhysChemIO> pPhysChemIO);
200 void PushMolecule(std::unique_ptr<G4Molecule> pMolecule,
204 const G4Track *parentTrack =
nullptr);
229 std::unique_ptr<G4UIdirectory> fpChemDNADirectory;
230 std::unique_ptr<G4UIcmdWithABool> fpActivateChem;
231 std::unique_ptr<G4UIcmdWithAnInteger> fpRunChem;
232 std::unique_ptr<G4UIcmdWithoutParameter> fpSkipReactionsFromChemList;
233 std::unique_ptr<G4UIcmdWithADoubleAndUnit> fpScaleForNewTemperature;
234 std::unique_ptr<G4UIcmdWithoutParameter> fpInitChem;
237 G4bool fActiveChemistry{
false};
239 struct ThreadLocalData{
242 std::unique_ptr<G4VPhysChemIO> fpPhysChemIO;
243 G4bool fThreadInitialized =
false;
248 G4bool fMasterInitialized{
false};
249 G4bool fForceThreadReinitialization{
false};
251 std::unique_ptr<G4DNAWaterExcitationStructure> fpExcitationLevel;
252 std::unique_ptr<G4DNAWaterIonisationStructure> fpIonisationLevel;
254 std::unique_ptr<G4VUserChemistryList> fpUserChemistryList;
255 G4bool fOwnChemistryList{
false};
256 G4bool fUseInStandalone{
false};
257 G4bool fPhysicsTableBuilt{
false};
258 G4bool fSkipReactions{
false};
260 G4bool fGeometryClosed{
false};
@ eDissociativeAttachment
CLHEP::Hep3Vector G4ThreeVector
void SetPhysChemIO(std::unique_ptr< G4VPhysChemIO > pPhysChemIO)
G4String GetCurrentValue(G4UIcommand *pCommand) override
void CreateSolvatedElectron(const G4Track *, G4ThreeVector *pFinalPosition=nullptr)
void EndOfEventAction(const G4Event *)
void InitializeThreadSharedData()
~G4DNAChemistryManager() override
G4bool IsChemistryActivated()
static G4DNAChemistryManager * GetInstanceIfExists()
void BeginOfEventAction(const G4Event *)
void HandleStandaloneInitialization()
static G4DNAChemistryManager * Instance()
void UseAsStandalone(G4bool flag)
void PushTrack(G4Track *)
void SetChemistryList(G4VUserChemistryList &)
void ForceThreadReinitialization()
void PushMolecule(std::unique_ptr< G4Molecule > pMolecule, G4double time, const G4ThreeVector &position, G4int parentID, const G4Track *parentTrack=nullptr)
void AddEmptyLineInOutputFile()
void ForceRebuildingPhysicsTable()
static G4bool IsActivated()
void SetGlobalTemperature(G4double temperatureKelvin)
void SetGun(G4ITGun *pChemSpeciesGun)
Inject custom species to the simulation.
G4DNAWaterIonisationStructure * GetIonisationLevel()
void Deregister(G4VUserChemistryList &)
G4DNAWaterExcitationStructure * GetExcitationLevel()
void EndOfRunAction(const G4Run *)
void SetNewValue(G4UIcommand *, G4String) override
G4bool Notify(G4ApplicationState requestedState) override
void ForceMasterReinitialization()
void SetChemistryActivation(G4bool)
static void DeleteInstance()
void SetVerbose(G4int verbose)
void TagThreadForReinitialization()
void BeginOfRunAction(const G4Run *)
void WriteInto(const G4String &, std::ios_base::openmode mode=std::ios_base::out)
void CreateWaterMolecule(ElectronicModification, G4int, const G4Track *)
G4VStateDependent(G4bool bottom=false)