4#include "G4VUserActionInitialization.hh"
7#include <gemc/gbase/gbase.h>
8#include <gemc/gdynamicDigitization/gdynamicdigitization.h>
9#include <gemc/gstreamer/gstreamer.h>
94class GAction :
public GBase<GAction>,
public G4VUserActionInitialization {
102 explicit GAction(std::shared_ptr<GOptions> gopts,
103 std::shared_ptr<gdynamicdigitization::dRoutinesMap> digi_map);
128 void Build()
const override;
155 std::shared_ptr<gdynamicdigitization::dRoutinesMap> digitization_routines_map;
164 std::shared_ptr<std::vector<GparticlePtr>> sharedParticles_;
Registers GEMC user actions for worker threads, sequential execution, and the master thread.
GAction(std::shared_ptr< GOptions > gopts, std::shared_ptr< gdynamicdigitization::dRoutinesMap > digi_map)
Constructs the action initializer used by the Geant4 run manager.
GAction(const GAction &)=delete
std::shared_ptr< std::vector< GparticlePtr > > getSharedParticles() const
Returns the shared particle list so the pmaker GUI can wire its tabs to the same objects.
~GAction() override=default
GAction(GAction &&)=delete
void Build() const override
Registers the user actions required by worker threads and sequential execution.
void BuildForMaster() const override
Registers the user actions required by the master thread.
GAction & operator=(const GAction &)=delete
GAction & operator=(GAction &&)=delete
Declares GEventAction, the per-event processing action for the GEMC actions module.
Declares GPrimaryGeneratorAction, the primary-particle generation action for the GEMC actions module.
Declares GRunAction, the run-lifecycle action for the GEMC actions module.
Declares GRun, the thread-local run container used by the GEMC actions module.
constexpr const char * GACTION_LOGGER
Namespace containing helpers related to action-subsystem configuration.
GOptions defineOptions()
Builds the aggregate option set required by the actions subsystem.
GOptions defineOptions()
Returns the options associated with the event-action logger scope.
GOptions defineOptions()
Returns the options associated with the primary-generator action scope.
GOptions defineOptions()
Returns the options associated with the run-container logger scope.
GOptions defineOptions()
Returns the options associated with the run-action logger scope.