ATLAS Offline Software
Loading...
Searching...
No Matches
ITruthTrajectoryBuilder.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
11
12#ifndef ITRUTHTRAJECTORYBUILDER_H
13#define ITRUTHTRAJECTORYBUILDER_H
14
15#include "GaudiKernel/IAlgTool.h"
16
17// Forard declarations
18class TruthTrajectory;
20
21namespace Trk {
22
23 static const InterfaceID IID_ITruthTrajectoryBuilder("Trk::ITruthTrajectoryBuilder",1,0);
24
25 class ITruthTrajectoryBuilder : virtual public IAlgTool {
26 public:
27 static const InterfaceID& interfaceID() { return IID_ITruthTrajectoryBuilder; }
28
33
36
39 };
40
41} // namespace Trk
42
43#endif/*ITRUTHTRAJECTORYBUILDER_H*/
virtual void buildTruthTrajectory(TruthTrajectory *result, const HepMC::ConstGenParticlePtr &input) const =0
Build a TruthTrajectory this particle belongs to.
virtual HepMC::ConstGenParticlePtr getMother(const HepMC::ConstGenParticlePtr &part) const =0
Previous particle on the truth trajectory or 0.
virtual HepMC::ConstGenParticlePtr getDaughter(const HepMC::ConstGenParticlePtr &part) const =0
Next particle on the truth trajectory or 0.
static const InterfaceID & interfaceID()
A TruthTrajectory is a chain of charged MC particles connected through the mother-daughter relationsh...
const GenParticle * ConstGenParticlePtr
Definition GenParticle.h:38
Ensure that the ATLAS eigen extensions are properly loaded.
static const InterfaceID IID_ITruthTrajectoryBuilder("Trk::ITruthTrajectoryBuilder", 1, 0)