Message: Re: Is ActionInitializtion.cc a necessary Action Class? Not Logged In (login)
 Next-in-Thread Next-in-Thread
 Next-in-Forum Next-in-Forum

None Re: Is ActionInitializtion.cc a necessary Action Class? 

Forum: Run Management
Re: Question Is ActionInitializtion.cc a necessary Action Class? (Aqsa)
Date: 13 Nov, 2017
From: Michael H. Kelsey <Michael H. Kelsey>

On Mon, 13 Nov 2017 11:08:29 GMT, Aqsa wrote:
> I have a code in which there is no ActionInitialization.cc, unlike all
> the examples. I noticed that the code which I am referring to, has the
> PrimaryGeneratorAction class called in the main program itself (part of
> the main program code given at the end).

See Section 2.1.3 of the Application Developers' Guide. You may also find section 2.14 of the Toolkit Developers' Guid useful.

The code you have was written for Geant4 9.x. ActionInitialization was introduced with Geant4 10.0 in order to support multithreaded applications: each child thread needs its own set of actions, which is handled by having the RunManager call ActionInitialization in each thread.

If you force your application to be single threaded (e.g., by using G4RunManager unconditionally, with no option to use G4MTRunManager), then you can keep it the way it is. If you want to be able to run both single and multithreaded, then you should migrate to ActionInitialization, as described in Section 2.1.3 of the Application Developers' Guide.

  -- Michael Kelsey

 Add Message Add Message
to: "Re: Is ActionInitializtion.cc a necessary Action Class?"

 Subscribe Subscribe

This site runs SLAC HyperNews version 1.11-slac-98, derived from the original HyperNews


[ Geant 4 Home | Geant 4 HyperNews | Search | Request New Forum | Feedback ]