ATLAS Offline Software
Loading...
Searching...
No Matches
ITruthToTrack.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// Dear emacs, this is -*-c++-*-
6
14
15#ifndef ITRKTRUTHTOTRACK_H
16#define ITRKTRUTHTOTRACK_H
17
18#include "GaudiKernel/IAlgTool.h"
19
20// FIXME: namespace Trk { TrackParameters; }
22
24
26//namespace xAOD { class TruthParticle; }
27
28namespace Trk {
29
36
37 class ITruthToTrack : virtual public IAlgTool {
38 public:
39
40 static const InterfaceID& interfaceID() {
41 static const InterfaceID IID_ITruthToTrack("Trk::ITruthToTrack",1,0);
42 return IID_ITruthToTrack;
43 }
44
45 virtual ~ITruthToTrack() {}
46
56
65 virtual const Trk::TrackParameters* makePerigeeParameters(const xAOD::TruthParticle* part) const = 0;
66
67 };
68
69} // namespace Trk
70
71#endif/*ITRKTRUTHTOTRACK_H*/
ITruthToTrack is an interface to create Trk::TrackParameters from a HepMC::GenParticle.
virtual const Trk::TrackParameters * makeProdVertexParameters(const xAOD::TruthParticle *part) const =0
static const InterfaceID & interfaceID()
virtual const Trk::TrackParameters * makePerigeeParameters(const xAOD::TruthParticle *part) const =0
virtual const Trk::TrackParameters * makeProdVertexParameters(HepMC::ConstGenParticlePtr part) const =0
This function produces a Trk::TrackParameters object corresponding to the HepMC::GenParticle at the p...
virtual const Trk::TrackParameters * makePerigeeParameters(HepMC::ConstGenParticlePtr part) const =0
This function extrapolates track to the perigee, and returns perigee parameters.
virtual ~ITruthToTrack()
const GenParticle * ConstGenParticlePtr
Definition GenParticle.h:38
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersBase< TrackParametersDim, Charged > TrackParameters
TruthParticle_v1 TruthParticle
Typedef to implementation.