ATLAS Offline Software
PositionMomentumWriter.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 // PositionMomentumWriter.h
8 
9 #ifndef TRK_POSITIONMOMENTUMWRITER_H
10 #define TRK_POSITIONMOMENTUMWRITER_H
11 
13 
15 
16 class TTree;
17 
18 namespace Trk {
19 
28  public:
30  PositionMomentumWriter(const std::string&,const std::string&,const IInterface*);
32 
34  virtual StatusCode initialize() override;
35  virtual StatusCode finalize() override;
36 
38  virtual void initializeTrack(const Amg::Vector3D& pos,
39  const Amg::Vector3D& mom,
40  double m, int pdg) override;
41 
42 
44  virtual void recordTrackState(const Amg::Vector3D& pos, const Amg::Vector3D& mom) override;
45 
47  virtual void finalizeTrack() override;
48 
49  private:
50 
51  std::string m_treeName;
52  std::string m_treeFolder;
53  std::string m_treeDescription;
54  TTree* m_tree;
55 
56  float m_pM;
57  float m_pEta;
58  float m_pPhi;
59  float m_pE;
60  float m_eEta;
61  float m_ePhi;
62  float m_eE;
63  int m_pPdg;
64  std::vector< float >* m_pPositionX;
65  std::vector< float >* m_pPositionY;
66  std::vector< float >* m_pPositionZ;
67  std::vector< float >* m_pPositionR;
68  std::vector< float >* m_pMomentumX;
69  std::vector< float >* m_pMomentumY;
70  std::vector< float >* m_pMomentumZ;
71  std::vector< float >* m_pMomentumMag;
72  std::vector< float >* m_pMomentumEta;
73  std::vector< float >* m_pMomentumPhi;
74 
75 
76 };
77 
78 
79 } // end of namespace
80 
81 #endif // TRK_POSITIONMOMENTUMWRITER_H
python.SystemOfUnits.m
int m
Definition: SystemOfUnits.py:91
Trk::PositionMomentumWriter::m_pPdg
int m_pPdg
Definition: PositionMomentumWriter.h:63
Trk::PositionMomentumWriter::m_pPositionZ
std::vector< float > * m_pPositionZ
Definition: PositionMomentumWriter.h:66
Trk::PositionMomentumWriter::m_pMomentumMag
std::vector< float > * m_pMomentumMag
Definition: PositionMomentumWriter.h:71
Trk::PositionMomentumWriter::m_pPositionR
std::vector< float > * m_pPositionR
Definition: PositionMomentumWriter.h:67
Trk::PositionMomentumWriter::m_pPositionY
std::vector< float > * m_pPositionY
Definition: PositionMomentumWriter.h:65
Trk::PositionMomentumWriter::m_treeDescription
std::string m_treeDescription
Definition: PositionMomentumWriter.h:53
Trk::PositionMomentumWriter::m_pMomentumPhi
std::vector< float > * m_pMomentumPhi
Definition: PositionMomentumWriter.h:73
Trk::PositionMomentumWriter::initialize
virtual StatusCode initialize() override
standard Athena methods
Definition: PositionMomentumWriter.cxx:53
Trk::PositionMomentumWriter::recordTrackState
virtual void recordTrackState(const Amg::Vector3D &pos, const Amg::Vector3D &mom) override
Record a single TrackState.
Definition: PositionMomentumWriter.cxx:170
Trk::PositionMomentumWriter::m_treeName
std::string m_treeName
Definition: PositionMomentumWriter.h:51
Trk::PositionMomentumWriter::~PositionMomentumWriter
~PositionMomentumWriter()
Definition: PositionMomentumWriter.h:31
Trk::PositionMomentumWriter::m_pM
float m_pM
Definition: PositionMomentumWriter.h:56
Trk::PositionMomentumWriter::m_pMomentumY
std::vector< float > * m_pMomentumY
Definition: PositionMomentumWriter.h:69
Trk::PositionMomentumWriter::m_eEta
float m_eEta
Definition: PositionMomentumWriter.h:60
Trk::PositionMomentumWriter::m_pPositionX
std::vector< float > * m_pPositionX
Definition: PositionMomentumWriter.h:64
ParticleGun_EoverP_Config.mom
mom
Definition: ParticleGun_EoverP_Config.py:63
Trk::PositionMomentumWriter::m_pMomentumX
std::vector< float > * m_pMomentumX
Definition: PositionMomentumWriter.h:68
Trk::PositionMomentumWriter::m_tree
TTree * m_tree
Definition: PositionMomentumWriter.h:54
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
Trk::PositionMomentumWriter::m_ePhi
float m_ePhi
Definition: PositionMomentumWriter.h:61
Trk::PositionMomentumWriter::m_eE
float m_eE
Definition: PositionMomentumWriter.h:62
AthAlgTool.h
Trk::PositionMomentumWriter::m_treeFolder
std::string m_treeFolder
Definition: PositionMomentumWriter.h:52
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Trk::PositionMomentumWriter::m_pEta
float m_pEta
Definition: PositionMomentumWriter.h:57
Trk::PositionMomentumWriter::finalizeTrack
virtual void finalizeTrack() override
Finalization State.
Definition: PositionMomentumWriter.cxx:188
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Trk::PositionMomentumWriter::PositionMomentumWriter
PositionMomentumWriter(const std::string &, const std::string &, const IInterface *)
standard AlgTool constructor / destructor
Definition: PositionMomentumWriter.cxx:17
python.LumiBlobConversion.pos
pos
Definition: LumiBlobConversion.py:18
IPositionMomentumWriter.h
Trk::PositionMomentumWriter::m_pMomentumEta
std::vector< float > * m_pMomentumEta
Definition: PositionMomentumWriter.h:72
Trk::PositionMomentumWriter::finalize
virtual StatusCode finalize() override
Definition: PositionMomentumWriter.cxx:127
Trk::IPositionMomentumWriter
Definition: IPositionMomentumWriter.h:27
Trk::PositionMomentumWriter::m_pMomentumZ
std::vector< float > * m_pMomentumZ
Definition: PositionMomentumWriter.h:70
Trk::PositionMomentumWriter
Definition: PositionMomentumWriter.h:27
Trk::PositionMomentumWriter::initializeTrack
virtual void initializeTrack(const Amg::Vector3D &pos, const Amg::Vector3D &mom, double m, int pdg) override
Initialize State.
Definition: PositionMomentumWriter.cxx:145
Trk::PositionMomentumWriter::m_pPhi
float m_pPhi
Definition: PositionMomentumWriter.h:58
AthAlgTool
Definition: AthAlgTool.h:26
Trk::PositionMomentumWriter::m_pE
float m_pE
Definition: PositionMomentumWriter.h:59