GGS(GenericGEANT4Simulation)Software  2.6.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:
35 
44 
50 
55  void AddAction(GGSUserAction *userAction);
56 
61  void AddAction(G4UserSteppingAction *steppingAction);
62 
67  void AddAction(G4UserTrackingAction* trackingAction);
68 
73  void AddAction(G4UserEventAction *eventAction);
74 
79  void AddAction(G4UserRunAction *runAction);
80 
85  void AddAction(G4UserStackingAction *stackingAction);
86 
93  void UserSteppingAction(const G4Step *step);
94 
101  void PreUserTrackingAction(const G4Track* track);
102 
109  void PostUserTrackingAction(const G4Track* track);
110 
117  void BeginOfEventAction(const G4Event *event);
118 
125  void EndOfEventAction(const G4Event *event);
126 
133  void BeginOfRunAction(const G4Run *run);
134 
141  void EndOfRunAction(const G4Run *run);
142 
153  G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* aTrack);
154 
159  void NewStage();
160 
165  void PrepareNewEvent();
166 
167 private:
168 
170  static GGSUserActionsManager *_instance;
171  GGSUAManagerMessenger *_messenger;
172 
173  std::vector<GGSUserAction*> _userActions;
174  std::vector<G4UserSteppingAction*> _steppingActions;
175  std::vector<G4UserTrackingAction*> _trackingActions;
176  std::vector<G4UserEventAction*> _eventActions;
177  std::vector<G4UserRunAction*> _runActions;
178 };
179 
180 #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.