ATLAS Offline Software
Loading...
Searching...
No Matches
EnergyLossRecorder.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
6// EnergyLossRecorder.h, (c) ATLAS Detector software
8
9#ifndef EnergyLossRecorder_H
10#define EnergyLossRecorder_H
11
12#include <string>
13#include <vector>
14
15#include "G4UserRunAction.hh"
16#include "G4UserEventAction.hh"
17#include "G4UserSteppingAction.hh"
18
30
31namespace Trk
32{
33 class IPositionMomentumWriter;
34}
35
36namespace G4UA
37{
38
39 class EnergyLossRecorder: public G4UserRunAction, public G4UserEventAction, public G4UserSteppingAction
40 {
41
42 public:
43
44 struct Config
45 {
47 };
48
50 virtual void BeginOfRunAction(const G4Run*) override;
51 virtual void EndOfRunAction(const G4Run*) override;
52 virtual void BeginOfEventAction(const G4Event*) override;
53 virtual void EndOfEventAction(const G4Event*) override;
54 virtual void UserSteppingAction(const G4Step*) override;
55 private:
57 unsigned int m_entries;
58 }; // class EnergyLossRecorder
59
60} // namespace G4UA
61
62#endif
virtual void EndOfRunAction(const G4Run *) override
virtual void BeginOfEventAction(const G4Event *) override
virtual void BeginOfRunAction(const G4Run *) override
virtual void UserSteppingAction(const G4Step *) override
EnergyLossRecorder(const Config &config)
virtual void EndOfEventAction(const G4Event *) override
Very simple helper Tool to record track states at certain positions this works only for single track ...
Ensure that the ATLAS eigen extensions are properly loaded.
Trk::IPositionMomentumWriter * pmWriter