ATLAS Offline Software
Loading...
Searching...
No Matches
OverlapDescriptor.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
6// OverlapDescriptor.h, (c) ATLAS Detector software
8
9#ifndef TRKGEOMETRY_OVERLAPDESCRIPTOR_H
10#define TRKGEOMETRY_OVERLAPDESCRIPTOR_H
11
12// Trk
16#include "TrkSurfaces/Surface.h"
17
18//#include "TrkParameters/TrackParameters.h"
19
20// STL
21#include <utility>
22
23namespace Trk {
24
26
40
42 public:
45
47 virtual ~OverlapDescriptor() {}
48
50 virtual OverlapDescriptor* clone() const = 0;
51
58 virtual bool reachableSurfaces(std::vector<SurfaceIntersection>& cSurfaces,
59 const Trk::Surface& sf,
60 const Amg::Vector3D& pos,
61 const Amg::Vector3D& dir) const = 0;
62};
63
64} // namespace Trk
65
66#endif
67
class extensions to return also the object
OverlapDescriptor()
Default constructor.
virtual bool reachableSurfaces(std::vector< SurfaceIntersection > &cSurfaces, const Trk::Surface &sf, const Amg::Vector3D &pos, const Amg::Vector3D &dir) const =0
get the compatible surfaces
virtual ~OverlapDescriptor()
Virtual destructor.
virtual OverlapDescriptor * clone() const =0
Pseudo-constructor.
Abstract Base Class for tracking surfaces.
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the ATLAS eigen extensions are properly loaded.
ObjectIntersection< Surface > SurfaceIntersection
Definition Layer.h:39