GGS(GenericGEANT4Simulation)Software  2.7.0
 All Data Structures Namespaces Files Functions Variables Typedefs Macros
GGSUserActionsManager.h
Go to the documentation of this file.
1 /*
2  * GGSUserActionsManager.h
3  *
4  * Created on: 31 May 2011
5  * Author: Nicola Mori
6  */
7 
10 #ifndef GGSUSERACTIONSMANAGER_H_
11 #define GGSUSERACTIONSMANAGER_H_
12 
15 
16 #include <vector>
17 
33 
34 public:
43 
49 
54  void AddAction(GGSUserAction *userAction);
55 
60  void AddAction(G4UserSteppingAction *steppingAction);
61 
66  void AddAction(G4UserTrackingAction *trackingAction);
67 
72  void AddAction(G4UserEventAction *eventAction);
73 
78  void AddAction(G4UserRunAction *runAction);
79 
84  void AddAction(G4UserStackingAction *stackingAction);
85 
92  void UserSteppingAction(const G4Step *step);
93 
100  void PreUserTrackingAction(const G4Track *track);
101 
108  void PostUserTrackingAction(const G4Track *track);
109 
116  void BeginOfEventAction(const G4Event *event);
117 
124  void EndOfEventAction(const G4Event *event);
125 
132  void BeginOfRunAction(const G4Run *run);
133 
140  void EndOfRunAction(const G4Run *run);
141 
152  G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track *aTrack);
153 
158  void NewStage();
159 
164  void PrepareNewEvent();
165 
166 private:
168  static GGSUserActionsManager *_instance;
169  GGSUAManagerMessenger *_messenger;
170 
171  std::vector<GGSUserAction *> _userActions;
172  std::vector<G4UserSteppingAction *> _steppingActions;
173  std::vector<G4UserTrackingAction *> _trackingActions;
174  std::vector<G4UserEventAction *> _eventActions;
175  std::vector<G4UserRunAction *> _runActions;
176 };
177 
178 #endif /* GGSUSERACTIONSMANAGER_H_ */
void EndOfRunAction(const G4Run *run)
Override of EndOfRunAction method.
void AddAction(GGSUserAction *userAction)
Adds a general user action.
void PreUserTrackingAction(const G4Track *track)
Override of PreUserTrackingAction method.
void PostUserTrackingAction(const G4Track *track)
Override of PostUserTrackingAction method.
G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track *aTrack)
Override of ClassifyNewTrack method.
void UserSteppingAction(const G4Step *step)
Override of UserSteppingAction method.
void BeginOfEventAction(const G4Event *event)
Override of BeginOfEventAction method.
void BeginOfRunAction(const G4Run *run)
Override of BeginOfRunAction method.
The GGS ser actions manager.
Messenger for the user actions manager.
Mother class for user actions in GGS.
Definition: GGSUserAction.h:27
void NewStage()
Override of NewStage method.
static GGSUserActionsManager * GetInstance()
Get the singleton instance.
void EndOfEventAction(const G4Event *event)
Override of EndOfEventAction method.
void PrepareNewEvent()
Override of PrepareNewEvent method.