ATLAS Offline Software
Loading...
Searching...
No Matches
IPositionMomentumWriter.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// IPositionMomentumWriter.h, (c) ATLAS DETECTOR Software
8
9
10#ifndef TRK_IPOSITIONMOMENTUMWRITER_H
11#define TRK_IPOSITIONMOMENTUMWRITER_H
12
13#include "GaudiKernel/IAlgTool.h"
15
16namespace Trk {
17static const InterfaceID IID_IPositionMomentumWriter("IPositionMomentumWriter",1,0);
18
26
27 class IPositionMomentumWriter : virtual public IAlgTool {
28 public:
30 static const InterfaceID& interfaceID();
31
33 virtual void initializeTrack(const Amg::Vector3D& pos,
34 const Amg::Vector3D& mom,
35 double m, int pdg) = 0;
36
38 virtual void recordTrackState(const Amg::Vector3D& pos,
39 const Amg::Vector3D& mom) = 0;
41 virtual void finalizeTrack() = 0;
42
43};
44
45 inline const InterfaceID& Trk::IPositionMomentumWriter::interfaceID() {
47 }
48
49} // end of namespace
50
51#endif
Very simple helper Tool to record track states at certain positions this works only for single track ...
static const InterfaceID & interfaceID()
Interface ID, declared here, and defined below.
virtual void finalizeTrack()=0
Finalization State.
virtual void recordTrackState(const Amg::Vector3D &pos, const Amg::Vector3D &mom)=0
Record a single TrackState.
virtual void initializeTrack(const Amg::Vector3D &pos, const Amg::Vector3D &mom, double m, int pdg)=0
Initialize State.
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID IID_IPositionMomentumWriter("IPositionMomentumWriter", 1, 0)