ATLAS Offline Software
EnergyLossMonitor.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 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/NTuple.h"
14 
16 
17 class INTupleSvc;
18 
19 namespace Trk {
20 
28  class EnergyLossMonitor : virtual public Trk::IEnergyLossMonitor, public AthAlgTool {
29  public:
30 
32  EnergyLossMonitor(const std::string&,const std::string&,const IInterface*);
34 
38 
40  virtual void initializeTrack(double p,
41  double E,
42  double eta,
43  double phi);
44 
46  virtual void recordTrackState(const Amg::Vector3D& pos,
47  const Amg::Vector3D& mom,
48  double mass);
49 
51  virtual void finalizeTrack();
52 
53 private:
55  INTupleSvc* m_ntupleSvc;
56  std::string m_outputNtuplePath;
58 
61 
63  NTuple::Item<long> m_steps;
65  NTuple::Item<float> m_initialP;
66  NTuple::Item<float> m_initialE;
67  NTuple::Item<float> m_initialEta;
68  NTuple::Item<float> m_initialPhi;
69 
70  NTuple::Array<float> m_p;
71  NTuple::Array<float> m_E;
72  NTuple::Array<float> m_eta;
73  NTuple::Array<float> m_phi;
74  NTuple::Array<float> m_hitX;
75  NTuple::Array<float> m_hitY;
76  NTuple::Array<float> m_hitR;
77  NTuple::Array<float> m_hitZ;
78 
79 };
80 
81 
82 } // end of namespace
83 
84 #endif // TRK_TRACKPOSITIONNTUPLEHELPER_H
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
Trk::EnergyLossMonitor::m_initialE
NTuple::Item< float > m_initialE
Definition: EnergyLossMonitor.h:66
Trk::EnergyLossMonitor::m_ntupleSvc
INTupleSvc * m_ntupleSvc
Ntuple Business.
Definition: EnergyLossMonitor.h:55
Trk::EnergyLossMonitor::initializeTrack
virtual void initializeTrack(double p, double E, double eta, double phi)
Initialize State.
Definition: EnergyLossMonitor.cxx:80
Trk::EnergyLossMonitor::m_initialPhi
NTuple::Item< float > m_initialPhi
Definition: EnergyLossMonitor.h:68
Trk::EnergyLossMonitor::recordTrackState
virtual void recordTrackState(const Amg::Vector3D &pos, const Amg::Vector3D &mom, double mass)
Record a single TrackState.
Definition: EnergyLossMonitor.cxx:92
Trk::EnergyLossMonitor::finalizeTrack
virtual void finalizeTrack()
Finalization State.
Definition: EnergyLossMonitor.cxx:112
Trk::EnergyLossMonitor::finalize
StatusCode finalize()
Definition: EnergyLossMonitor.cxx:73
dqt_zlumi_pandas.mass
mass
Definition: dqt_zlumi_pandas.py:170
Trk::EnergyLossMonitor::EnergyLossMonitor
EnergyLossMonitor(const std::string &, const std::string &, const IInterface *)
standard AlgTool constructor / destructor
Definition: EnergyLossMonitor.cxx:18
Trk::EnergyLossMonitor::initialize
StatusCode initialize()
standard Athena methods
Definition: EnergyLossMonitor.cxx:32
Trk::EnergyLossMonitor::~EnergyLossMonitor
~EnergyLossMonitor()
Definition: EnergyLossMonitor.h:33
Trk::EnergyLossMonitor::m_initialP
NTuple::Item< float > m_initialP
Initial variables.
Definition: EnergyLossMonitor.h:65
Trk::EnergyLossMonitor::m_p
NTuple::Array< float > m_p
Definition: EnergyLossMonitor.h:70
Trk::EnergyLossMonitor::m_phi
NTuple::Array< float > m_phi
Definition: EnergyLossMonitor.h:73
Trk::EnergyLossMonitor
Definition: EnergyLossMonitor.h:28
ParticleGun_EoverP_Config.mom
mom
Definition: ParticleGun_EoverP_Config.py:63
IEnergyLossMonitor.h
Trk::EnergyLossMonitor::m_E
NTuple::Array< float > m_E
Definition: EnergyLossMonitor.h:71
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::EnergyLossMonitor::m_currentStep
int m_currentStep
Ntuple helper.
Definition: EnergyLossMonitor.h:60
Trk::EnergyLossMonitor::m_eta
NTuple::Array< float > m_eta
Definition: EnergyLossMonitor.h:72
AthAlgTool.h
Trk::EnergyLossMonitor::m_hitR
NTuple::Array< float > m_hitR
Definition: EnergyLossMonitor.h:76
Trk::EnergyLossMonitor::m_outputNtupleDescription
std::string m_outputNtupleDescription
Definition: EnergyLossMonitor.h:57
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::EnergyLossMonitor::m_hitZ
NTuple::Array< float > m_hitZ
Definition: EnergyLossMonitor.h:77
Trk::EnergyLossMonitor::m_hitY
NTuple::Array< float > m_hitY
Definition: EnergyLossMonitor.h:75
VP1PartSpect::E
@ E
Definition: VP1PartSpectFlags.h:21
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
Trk::EnergyLossMonitor::m_initialEta
NTuple::Item< float > m_initialEta
Definition: EnergyLossMonitor.h:67
Trk::EnergyLossMonitor::m_hitX
NTuple::Array< float > m_hitX
Definition: EnergyLossMonitor.h:74
Trk::EnergyLossMonitor::m_steps
NTuple::Item< long > m_steps
Step variables.
Definition: EnergyLossMonitor.h:63
Trk::IEnergyLossMonitor
Definition: IEnergyLossMonitor.h:27
Trk::phi
@ phi
Definition: ParamDefs.h:81
AthAlgTool
Definition: AthAlgTool.h:26
Trk::EnergyLossMonitor::m_outputNtuplePath
std::string m_outputNtuplePath
Definition: EnergyLossMonitor.h:56