]>
Commit | Line | Data |
---|---|---|
676fb573 | 1 | // $Id$ |
2 | // Category: event | |
3 | // | |
4 | // Class that defines Alice stacking mechanism. | |
5 | ||
6 | #ifndef ALI_STACKING_ACTION_H | |
7 | #define ALI_STACKING_ACTION_H | |
8 | ||
9 | #include <G4UserStackingAction.hh> | |
676fb573 | 10 | #include <globals.hh> |
11 | ||
12 | class AliStackingActionMessenger; | |
13 | class AliTrackingAction; | |
74236197 | 14 | |
676fb573 | 15 | class G4Track; |
74236197 | 16 | class G4TrackStack; |
676fb573 | 17 | |
18 | class AliStackingAction : public G4UserStackingAction | |
19 | { | |
20 | public: | |
21 | AliStackingAction(); | |
22 | // --> protected | |
23 | // AliStackingAction(const AliStackingAction& right); | |
24 | virtual ~AliStackingAction(); | |
25 | ||
26 | // methods | |
27 | G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* track); | |
28 | void NewStage(); | |
676fb573 | 29 | void PrepareNewEvent(); |
30 | ||
31 | // set methods | |
32 | void SetVerboseLevel(G4int level); | |
33 | ||
34 | // get methods | |
35 | G4int GetVerboseLevel() const; | |
36 | ||
37 | protected: | |
38 | AliStackingAction(const AliStackingAction& right); | |
39 | ||
40 | // operators | |
41 | AliStackingAction& operator=(const AliStackingAction& right); | |
42 | ||
43 | private: | |
44 | // data members | |
45 | G4int fStage; //stage number | |
46 | G4int fVerboseLevel; //verbose level | |
47 | G4bool fSavePrimaries; //control of saving primaries | |
48 | G4TrackStack* fPrimaryStack; //stack of primary tracks | |
49 | AliTrackingAction* fTrackingAction; //AliTrackingAction | |
50 | AliStackingActionMessenger* fMessenger; //messenger | |
51 | }; | |
52 | ||
53 | ||
54 | // inline methods | |
55 | ||
56 | inline void AliStackingAction::SetVerboseLevel(G4int level) | |
57 | { fVerboseLevel = level; } | |
58 | ||
59 | inline G4int AliStackingAction::GetVerboseLevel() const | |
60 | { return fVerboseLevel; } | |
61 | ||
62 | #endif //ALI_STACKING_ACTION_H | |
63 |