10 #ifndef GGSMULTIUSERACTION_H_
11 #define GGSMULTIUSERACTION_H_
48 void AddAction(std::unique_ptr<GGSUserAction> &&userAction);
54 void AddAction(std::unique_ptr<G4UserSteppingAction> &&steppingAction);
60 void AddAction(std::unique_ptr<G4UserTrackingAction> &&trackingAction);
66 void AddAction(std::unique_ptr<G4UserEventAction> &&eventAction);
72 void AddAction(std::unique_ptr<G4UserRunAction> &&runAction);
78 void AddAction(std::unique_ptr<G4UserStackingAction> &&stackingAction);
161 std::vector<std::unique_ptr<GGSUserAction>> _userActions;
162 std::vector<std::unique_ptr<G4UserSteppingAction>> _steppingActions;
163 std::vector<std::unique_ptr<G4UserTrackingAction>> _trackingActions;
164 std::vector<std::unique_ptr<G4UserEventAction>> _eventActions;
165 std::vector<std::unique_ptr<G4UserRunAction>> _runActions;
166 std::vector<std::unique_ptr<G4UserStackingAction>> _stackingActions;
void BeginOfRunAction(const G4Run *run)
Override of BeginOfRunAction method.
GGSMultiUserAction()
constructor.
void PostUserTrackingAction(const G4Track *track)
Override of PostUserTrackingAction method.
void UserSteppingAction(const G4Step *step)
Override of UserSteppingAction method.
void PrepareNewEvent()
Override of PrepareNewEvent method.
G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track *aTrack)
Override of ClassifyNewTrack method.
void EndOfRunAction(const G4Run *run)
Override of EndOfRunAction method.
void NewStage()
Override of NewStage method.
A multiplexer container for user actions.
~GGSMultiUserAction()
Destructor.
void AddAction(std::unique_ptr< GGSUserAction > &&userAction)
Adds a general user action.
void EndOfEventAction(const G4Event *event)
Override of EndOfEventAction method.
void BeginOfEventAction(const G4Event *event)
Override of BeginOfEventAction method.
Mother class for user actions in GGS.
Messenger class for GGSMultiUserAction.
void PreUserTrackingAction(const G4Track *track)
Override of PreUserTrackingAction method.