ATLAS Offline Software
Loading...
Searching...
No Matches
EnergyLossMonitor.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3*/
4
6// EnergyLossMonitor.h
8
9#ifndef TRK_ENERGYLOSSMONITOR_H
10#define TRK_ENERGYLOSSMONITOR_H
11
13#include "GaudiKernel/INTupleSvc.h"
14#include "GaudiKernel/NTuple.h"
15
17
18namespace Trk {
19
26
27 class EnergyLossMonitor : virtual public Trk::IEnergyLossMonitor, public AthAlgTool {
28 public:
29
31 EnergyLossMonitor(const std::string&,const std::string&,const IInterface*);
33
35 StatusCode initialize();
36 StatusCode finalize();
37
39 virtual void initializeTrack(double p,
40 double E,
41 double eta,
42 double phi);
43
45 virtual void recordTrackState(const Amg::Vector3D& pos,
46 const Amg::Vector3D& mom,
47 double mass);
48
50 virtual void finalizeTrack();
51
52private:
55 std::string m_outputNtuplePath;
57
60
62 NTuple::Item<long> m_steps;
64 NTuple::Item<float> m_initialP;
65 NTuple::Item<float> m_initialE;
66 NTuple::Item<float> m_initialEta;
67 NTuple::Item<float> m_initialPhi;
68
69 NTuple::Array<float> m_p;
70 NTuple::Array<float> m_E;
71 NTuple::Array<float> m_eta;
72 NTuple::Array<float> m_phi;
73 NTuple::Array<float> m_hitX;
74 NTuple::Array<float> m_hitY;
75 NTuple::Array<float> m_hitR;
76 NTuple::Array<float> m_hitZ;
77
78};
79
80
81} // end of namespace
82
83#endif // TRK_TRACKPOSITIONNTUPLEHELPER_H
Scalar eta() const
pseudorapidity method
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
NTuple::Item< float > m_initialE
NTuple::Array< float > m_hitX
NTuple::Array< float > m_phi
virtual void initializeTrack(double p, double E, double eta, double phi)
Initialize State.
virtual void finalizeTrack()
Finalization State.
NTuple::Array< float > m_hitR
NTuple::Item< long > m_steps
Step variables.
std::string m_outputNtupleDescription
NTuple::Array< float > m_hitY
ServiceHandle< INTupleSvc > m_ntupleSvc
Ntuple Business.
NTuple::Array< float > m_p
NTuple::Item< float > m_initialEta
NTuple::Item< float > m_initialP
Initial variables.
int m_currentStep
Ntuple helper.
StatusCode initialize()
standard Athena methods
virtual void recordTrackState(const Amg::Vector3D &pos, const Amg::Vector3D &mom, double mass)
Record a single TrackState.
NTuple::Array< float > m_hitZ
NTuple::Array< float > m_eta
NTuple::Item< float > m_initialPhi
EnergyLossMonitor(const std::string &, const std::string &, const IInterface *)
standard AlgTool constructor / destructor
NTuple::Array< float > m_E
Very simple helper Tool to record the eneryloss steps track, this works only for single track events.
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
@ phi
Definition ParamDefs.h:75