Commit c082112e authored by Simon Spannagel's avatar Simon Spannagel
Browse files

Remove leftover UI pointer calls, make tracking verbosity ready for MT

(cherry picked from commit 25d5eabd)
parent 5e03d6e2
Loading
Loading
Loading
Loading
+9 −9
Original line number Diff line number Diff line
@@ -15,10 +15,12 @@
#include <utility>

#include <G4EmParameters.hh>
#include <G4HadronicParameters.hh>
#include <G4HadronicProcessStore.hh>
#include <G4LogicalVolume.hh>
#include <G4NuclearLevelData.hh>
#include <G4PhysListFactory.hh>
#include <G4ProcessTable.hh>
#include <G4RadioactiveDecayPhysics.hh>
#include <G4StepLimiterPhysics.hh>
#include <G4UImanager.hh>
@@ -125,9 +127,6 @@ void DepositionGeant4Module::initialize() {
        throw ModuleError("Cannot deposit charges using Geant4 without a Geant4 geometry builder");
    }

    // Get UI manager for sending commands
    G4UImanager* ui_g4 = G4UImanager::GetUIpointer();

    // Apply optional PAI model
    if(config_.get<bool>("enable_pai", false)) {
        LOG(TRACE) << "Enabling PAI model on all detectors";
@@ -230,16 +229,13 @@ void DepositionGeant4Module::initialize() {
    run_manager_g4_->InitializePhysics();

    // Disable verbose messages from processes
    ui_g4->ApplyCommand("/process/verbose 0");
    ui_g4->ApplyCommand("/process/eLoss/verbose 0");
    physicsList->SetVerboseLevel(0);
    G4ProcessTable::GetProcessTable()->SetVerboseLevel(0);
    G4EmParameters::Instance()->SetVerbose(0);
    G4HadronicProcessStore::Instance()->SetVerbose(0);
    physicsList->SetVerboseLevel(0);
    G4HadronicParameters::Instance()->SetVerboseLevel(0);
    G4NuclearLevelData::GetInstance()->GetParameters()->SetVerbose(0);

    // Set selected tracking verbosity, defaulting to zero. Higher levels can be useful for tracing individual Geant4 events
    ui_g4->ApplyCommand("/tracking/verbose " + allpix::to_string(config_.get<size_t>("geant4_tracking_verbosity", 0)));

    // Initialize the full run manager to ensure correct state flags
    run_manager_g4_->Initialize();

@@ -285,6 +281,10 @@ void DepositionGeant4Module::initializeThread() {

        run_manager_mt->InitializeForThread();
    }

    // Set selected tracking verbosity, defaulting to zero. Higher levels can be useful for tracing individual Geant4 events
    G4RunManagerKernel::GetRunManagerKernel()->GetTrackingManager()->SetVerboseLevel(
        config_.get<int>("geant4_tracking_verbosity", 0));
}

void DepositionGeant4Module::run(Event* event) {