ATLAS Offline Software
Loading...
Searching...
No Matches
DebugSteppingAction.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef DEBUGSTEPPINGACTION_H
6#define DEBUGSTEPPINGACTION_H
7
8#include "G4Types.hh"
9#include "G4LorentzVector.hh"
10#include "G4UserSteppingAction.hh"
11
12#ifndef QUIRKS_STANDALONE
13namespace G4UA{
14#endif
15
16class DebugSteppingAction : public G4UserSteppingAction
17{
18public:
19#ifdef QUIRKS_STANDALONE
20 DebugSteppingAction(G4double step, G4int numSteps);
21#else
22 struct Config
23 {
24 G4double step=0;
25 G4int numSteps=0;
26 };
27
29#endif
30
31 virtual ~DebugSteppingAction();
32
33 virtual void UserSteppingAction(const G4Step* step) override;
34
35private:
36#ifndef QUIRKS_STANDALONE
38#else
39 G4double m_step;
40 G4int m_numSteps;
41#endif
42
43 G4int m_iStep[2];
44
45 G4LorentzVector m_x[2];
46 G4LorentzVector m_p[2];
47 G4LorentzVector m_xprev[2];
48};
49
50
51
52#ifndef QUIRKS_STANDALONE
53} // namespace G4UA
54#endif
55
56#endif
DebugSteppingAction(const Config &config)
virtual void UserSteppingAction(const G4Step *step) override