23 class DetectorElementBase;
45 class DiscSurface :
public Surface {
57 DiscSurface(std::shared_ptr<const Transform3D> htrans,
double rmin,
72 DiscSurface(std::shared_ptr<const Transform3D> htrans,
double minhalfx,
73 double maxhalfx,
double maxR,
double minR,
double avephi = 0.,
80 DiscSurface(std::shared_ptr<const Transform3D> htrans,
81 std::shared_ptr<const DiscBounds> dbounds =
nullptr);
87 DiscSurface(
const std::shared_ptr<const DiscBounds>& dbounds,
88 const DetectorElementBase& detelement);
93 DiscSurface(
const DiscSurface& other);
105 ~DiscSurface()
override =
default;
108 DiscSurface() =
delete;
113 DiscSurface& operator=(
const DiscSurface& other);
116 SurfaceType type()
const override;
125 const Vector2D& lposition)
const final;
141 const SurfaceBounds& bounds() const final;
216 double tol = 0.) const;
256 const
Vector3D& direction) const final;
286 const BoundaryCheck& bcheck =
false) const final;
300 std::
string name() const override;
311 size_t lseg) const override;
317 #include "Acts/Surfaces/detail/DiscSurface.ipp"