File StrawSurface.hpp

namespace Acts

Note

This file is foreseen for the Geometry module to replace Extent

class StrawSurface : public Acts::LineSurface
#include <Acts/Surfaces/StrawSurface.hpp>

Class for a StrawSurface in the TrackingGeometry to describe dirft tube and straw like detectors.

_build/doxygen-xml/LineSurface.png

Public Functions

StrawSurface() = delete
~StrawSurface() override = default
inline virtual std::string name() const final

Return properly formatted class name for screen output */.

StrawSurface &operator=(const StrawSurface &other)

Assignment operator.

Parameters

other – is the source surface for copying

virtual Polyhedron polyhedronRepresentation(const GeometryContext &gctx, size_t lseg) const final

Return a Polyhedron for the surfaces.

Note

if lseg is set to 1 then only the straw is created

Parameters
  • gctx – The current geometry context object, e.g. alignment

  • lseg – Number of segments along curved lines, it represents the full 2*M_PI coverange, if lseg is set to 1 only the extrema are given

Returns

A list of vertices and a face/facett description of it

inline virtual SurfaceType type() const final

Return the surface type.

Protected Functions

StrawSurface(const Transform3 &transform, double radius, double halez)

Constructor from Transform3 and bounds.

Parameters
  • transform – the transform that positions the straw in the global frame

  • radius – is the straw radius

  • halez – is the half length in z

StrawSurface(const Transform3 &transform, std::shared_ptr<const LineBounds> lbounds = nullptr)

Constructor from Transform3 and a shared bounds object.

Parameters
  • transform – the transform that positions the straw in the global frame

  • lbounds – are the bounds describing the straw dimensions, can be optionally nullptr

StrawSurface(const std::shared_ptr<const LineBounds> &lbounds, const DetectorElementBase &detelement)

Constructor from DetectorElementBase : Element proxy.

Parameters
  • lbounds – are the bounds describing the straw dimensions, they must not be nullptr

  • detelement – for which this surface is (at least) one representation

StrawSurface(const StrawSurface &other)

Copy constructor.

Parameters

other – is the source surface for copying

StrawSurface(const GeometryContext &gctx, const StrawSurface &other, const Transform3 &shift)

Copy constructor - with shift.

Parameters
  • gctx – The current geometry context object, e.g. alignment

  • other – is the source cone surface

  • shift – is the additional transfrom applied after copying