ATLAS Offline Software
Loading...
Searching...
No Matches
EnergyLossRecorderTool.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 TRKG4USERACTIONS_G4UA__ENERGYLOSSRECORDERTOOL_H
6#define TRKG4USERACTIONS_G4UA__ENERGYLOSSRECORDERTOOL_H
7
8// Infrastructure includes
10
11// Local includes
13
14namespace Trk
15{
17}
18
19namespace G4UA
20{
21
28
29 class EnergyLossRecorderTool : public UserActionToolBase<EnergyLossRecorder>
30 {
31
32 public:
34 EnergyLossRecorderTool(const std::string& type, const std::string& name,
35 const IInterface* parent);
37 virtual StatusCode initialize() override final;
38 protected:
40 virtual std::unique_ptr<EnergyLossRecorder>
42 private:
45 ToolHandle<Trk::IPositionMomentumWriter> m_pmWriter;
46 }; // class EnergyLossRecorderTool
47
48} // namespace G4UA
49
50#endif
EnergyLossRecorder::Config m_config
stores the config obtained from the python side
virtual StatusCode initialize() override final
Athena initialize method.
virtual std::unique_ptr< EnergyLossRecorder > makeAndFillAction(G4AtlasUserActions &) override final
creates the instance for this thread
ToolHandle< Trk::IPositionMomentumWriter > m_pmWriter
EnergyLossRecorderTool(const std::string &type, const std::string &name, const IInterface *parent)
standard tool ctor
UserActionToolBase(const std::string &type, const std::string &name, const IInterface *parent)
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.
Struct for passing around user actions.