ATLAS Offline Software
Loading...
Searching...
No Matches
ITrackLink.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef TRKTRACKLINK_ITRACKLINK_H
6#define TRKTRACKLINK_ITRACKLINK_H
7
20
21#include "TrkNeutralParameters/NeutralParameters.h" // no forward declare for now because needed in cast
22#include "TrkParameters/TrackParameters.h" // no forward declare for now because needed in cast
23
24namespace Trk {
26{
27
28public:
36
37 ITrackLink() = default;
38 ITrackLink(const ITrackLink&) = default;
39 ITrackLink(ITrackLink&&) = default;
40 ITrackLink& operator=(const ITrackLink&) = default;
42 virtual ~ITrackLink() = default;
43
45 virtual ITrackLink* clone() const = 0;
46
48 virtual const TrackParameters* parameters() const = 0;
49
51 virtual const NeutralParameters* neutralParameters() const = 0;
52
54 virtual ITrackLinkType type() const = 0;
55
56}; // end of class definitions
57
58} // end of namespace definitions
59
60#endif // TRKTRACKLINK_ITRACKLINK_H
Ensure that the ATLAS eigen extensions are properly loaded.
ParametersBase< NeutralParametersDim, Neutral > NeutralParameters
ParametersBase< TrackParametersDim, Charged > TrackParameters