]> git.uio.no Git - u/mrichter/AliRoot.git/blame - AliGeant4/AliSteppingAction.h
removed setting of default value of magnetic field
[u/mrichter/AliRoot.git] / AliGeant4 / AliSteppingAction.h
CommitLineData
676fb573 1// $Id$
2// Category: event
3//
4// Class for detecting and stopping looping particles
5
6#ifndef ALI_STEPPING_ACTION_H
7#define ALI_STEPPING_ACTION_H
8
9#include <G4UserSteppingAction.hh>
10#include <G4ThreeVector.hh>
11#include <globals.hh>
12
13class AliSteppingActionMessenger;
14
15class G4Track;
16
17class AliSteppingAction : public G4UserSteppingAction
18{
19 enum {
20 kCheckNofSteps = 100,
21 kMaxNofLoopSteps = 5
22 };
23
24 public:
25 AliSteppingAction();
26 // protected
27 // AliSteppingAction(const AliSteppingAction& right);
28 virtual ~AliSteppingAction();
29
30 // methods
31 virtual void UserSteppingAction(const G4Step* step);
32
33 // set methods
34 void SetLoopVerboseLevel(G4int level);
35
36 // get methods
37 G4int GetLoopVerboseLevel() const;
38
39 protected:
40 AliSteppingAction(const AliSteppingAction& right);
41
42 // operators
43 AliSteppingAction& operator=(const AliSteppingAction& right);
44
45 private:
46 // methods
47 void PrintTrackInfo(const G4Track* track) const;
48
49 // static data members
50 static const G4double fgTolerance;
51
52 // data members
53 G4ThreeVector fKeptStepPoint; //kept step point
54 G4int fLoopVerboseLevel; //tracking verbose level
55 //for looping particles
56 G4int fStandardVerboseLevel; //standard tracking verbose level
57 G4int fLoopStepCounter; //loop steps counter
58 AliSteppingActionMessenger* fMessenger; //messenger
59};
60
61// inline methods
62
63inline void AliSteppingAction::SetLoopVerboseLevel(G4int level)
64{ fLoopVerboseLevel = level; }
65
66inline G4int AliSteppingAction::GetLoopVerboseLevel() const
67{ return fLoopVerboseLevel; }
68
69#endif //ALI_STEPPING_ACTION_H
70