]> git.uio.no Git - u/mrichter/AliRoot.git/blob - AliGeant4/AliEventAction.h
New&delete used for array with variable size
[u/mrichter/AliRoot.git] / AliGeant4 / AliEventAction.h
1 // $Id$
2 // Category: event
3 //
4 // Class that defines actions at the beginning and the end of event.
5
6 #ifndef ALI_EVENT_ACTION_H
7 #define ALI_EVENT_ACTION_H 
8
9 #include <G4UserEventAction.hh>
10 #include <globals.hh>
11
12 class G4Timer;
13     // in order to avoid the odd dependency for the
14     // times system function this declaration must be the first
15
16 class AliEventActionMessenger;
17
18 class G4Event;
19
20 class AliEventAction : public G4UserEventAction
21 {
22   public:
23     AliEventAction();
24     // --> protected
25     // AliEventAction(const AliEventAction& right);
26     virtual ~AliEventAction();
27     
28     // methods
29     virtual void BeginOfEventAction(const G4Event* event);
30     virtual void EndOfEventAction(const G4Event* event);
31     
32     // set methods
33     void SetVerboseLevel(G4int level);
34     void SetDrawFlag(G4String drawFlag);
35     
36     // get methods
37     G4int GetVerboseLevel() const;
38     G4String GetDrawFlag() const;
39     
40   protected:
41     AliEventAction(const AliEventAction& right);
42
43     // operators
44     AliEventAction& operator=(const AliEventAction& right);
45
46   private:
47     // methods 
48     void DisplayEvent(const G4Event* event) const;
49   
50     // data members
51     AliEventActionMessenger*  fMessenger;    //messenger
52     G4Timer*                  fTimer;        //G4Timer
53     G4int                     fVerboseLevel; //verbose level
54     G4String                  fDrawFlag;     //control drawing of the event
55 };
56
57 // inline methods
58
59 inline void AliEventAction::SetVerboseLevel(G4int level)
60 { fVerboseLevel = level; }
61
62 inline void AliEventAction::SetDrawFlag(G4String drawFlag)
63 { fDrawFlag = drawFlag; }
64
65 inline G4int AliEventAction::GetVerboseLevel() const
66 { return fVerboseLevel; }
67
68 inline G4String AliEventAction::GetDrawFlag() const
69 { return fDrawFlag; }
70
71 #endif //ALI_EVENT_ACTION_H
72
73